Note
------------------------------↓↓↓------------------------------
「初めてのセットアップ手順」が完了したら、この部分は削除してください。
Mackerel Agentの設定ファイルmackerel-agent.confをGit管理するGitリポジトリの雛形です。
setup.shを実行することで、このリポジトリの中身を/etc/mackerel-agent配下に移し、
- 各種ファイル・ディレクトリの配置
- mackerel-agent.conf
- カスタムメトリクス用プラグイン(/etc/mackerel-agent/custom_metrics_plugins配下)
- チェックプラグイン(/etc/mackerel-agent/check_plugins配下)
- /etc/mackerel-agentディレクトリのGitリポジトリ化
を同時に行います。
また、/etc/mackerel-agentディレクトリを直接Gitリポジトリとして管理する都合上、
- /etc/mackerel-agentディレクトリの所有ユーザの変更(setup.shを実行したユーザに)
も行われます。
Mackerel Agentをインストールして使うホストが、以下を満たしている必要があります:
- gitをインストール済み
- /etc/mackerel-agentディレクトリを作成済み
- /etc/mackerel-agentディレクトリがGitリポジトリになっていない(.gitディレクトリが存在しない)
- /etc/mackerel-agentディレクトリ配下に、以下を置いていない:
- ファイル:
- mackerel-agent.conf
- setup.sh
- README.md
- LICENSE
- ディレクトリ:
- custom_metrics_plugins(カスタムメトリクス用のプラグイン置き場)
- check_plugins(チェックプラグイン置き場)
- ファイル:
これらの条件を満たしていない場合、setup.shは処理を中止します。
Important
Mackerel Agentをインストールした直後では、サンプルの/etc/mackerel-agent/mackerel-agent.confが存在しています。
この状態でsetup.shを実行しても、事故防止のためにストップするようになっていますので、このmackerel-agent.confは別ディレクトリに退避するなどした上で、setup.shを実行してください。
Important
以下の操作は、/etc/mackerel-agent配下のGit管理を実行するユーザで行ってください。
このGitリポジトリを、Mackerel Agentホスト上の任意の場所にgit clone
します:
git clone https://github.com/shu-i-chi/mackerel-agent-conf-scaffold.git mackerel-agent-conf
git clone
してきたリポジトリ内のsetup.shを実行します:
./mackerel-agent-conf/setup.sh
前提条件が満たされていない場合、エラー表示が出ます。 対応の後、もう一度setup.shを実行し直してください。
🎉Mission accomplished!
が表示されたら完了です。
git clone
してできたディレクトリは、不要なので削除されています。
また、/etc/mackerel-agentディレクトリの所有ユーザが、本項の操作を行ったユーザに変更され、Git操作ができるようになっています。
/etc/mackerel-agentディレクトリに移動します:
cd /etc/mackerel-agent
このディレクトリは、手順セットアップにてGitリポジトリになっています。
git push
の宛先を、自分の(空の)リモートGitリポジトリに変更します:
git remote set-url origin <your-remote-git-repository-url>
設定変更が成功しているかどうかを確認するには、git remote -v
をしてください。
git remote -v
Warning
mackerel-agent.confにはAPIキーを直接記述するため、 リモートGitリポジトリの公開範囲には細心の注意を払ってください 。
このREADME.mdのこの部分を削除してください。 また、他の部分も自分の用途に合うように修正してください。
- 1. セットアップ冒頭の、リポジトリURL部分(
<your-remote-git-repository-url>
)
修正が完了したら、変更をコミットしてください。 (更新フローの1-3も参考にしてください。その場合は、ファイル名を「README.md」で読み替えてください。)
一連の変更作業が完了したら、自分のリモートGitリポジトリにgit push
しましょう。
git push
前に、念のため、push先のリポジトリに間違いがないかどうかを確認してください:
git remote -v
問題なければ、git push
します:
git push
自分のリモートGitリポジトリに、このリポジトリが登録されているかどうかを確認してください。
Note
「初めてのセットアップ手順」が完了したら、この部分は削除してください。
------------------------------↑↑↑------------------------------
Mackerel Agentの設定ファイルmackerel-agent.confをGit管理するGitリポジトリです。
Mackerel Agentホスト上に簡単にセットアップするためのスクリプトsetup.shも用意しています。
Note
以下、mackerel-agent.confの設置ディレクトリを /etc/mackerel-agent と仮定しています。 もしこれと異なる場合は、パスを読み替えてください。また、setup.shの以下の行を変更してくだい:
mackerel_agent_conf_dir="/etc/mackerel-agent"
setup.shを実行することで、このリポジトリの中身を/etc/mackerel-agent配下に移し、
- 各種ファイル・ディレクトリの配置
- mackerel-agent.conf
- カスタムメトリクス用プラグイン(/etc/mackerel-agent/custom_metrics_plugins配下)
- チェックプラグイン(/etc/mackerel-agent/check_plugins配下)
- /etc/mackerel-agentディレクトリのGitリポジトリ化
を同時に行います。
また、/etc/mackerel-agentディレクトリを直接Gitリポジトリとして管理する都合上、
- /etc/mackerel-agentディレクトリの所有ユーザの変更(setup.shを実行したユーザに)
も行われます。
Mackerel Agentをインストールして使うホストが、以下を満たしている必要があります:
- gitをインストール済み
- /etc/mackerel-agentディレクトリを作成済み
- /etc/mackerel-agentディレクトリがGitリポジトリになっていない(.gitディレクトリが存在しない)
- /etc/mackerel-agentディレクトリ配下に、以下を置いていない:
- ファイル:
- mackerel-agent.conf
- setup.sh
- README.md
- LICENSE
- ディレクトリ:
- custom_metrics_plugins(カスタムメトリクス用のプラグイン置き場)
- check_plugins(チェックプラグイン置き場)
- ファイル:
これらの条件を満たしていない場合、setup.shは処理を中止します。
Important
Mackerel Agentをインストールした直後では、サンプルの/etc/mackerel-agent/mackerel-agent.confが存在しています。
この状態でsetup.shを実行しても、事故防止のためにストップするようになっていますので、このmackerel-agent.confは別ディレクトリに退避するなどした上で、setup.shを実行してください。
Important
以下の操作は、/etc/mackerel-agent配下のGit管理を実行するユーザで行ってください。
このGitリポジトリを、Mackerel Agentホスト上の任意の場所にgit clone
します:
git clone <your-remote-git-repository-url> mackerel-agent-conf
git clone
してきたリポジトリ内のsetup.shを実行します:
./mackerel-agent-conf/setup.sh
0. 前提条件が満たされていない場合、エラー表示が出ます。 対応の後、もう一度setup.shを実行し直してください。
🎉Mission accomplished!
が表示されたら完了です。
git clone
してできたディレクトリは、不要なので削除されています。
また、/etc/mackerel-agentディレクトリの所有ユーザが、本項の操作を行ったユーザに変更され、Git操作ができるようになっています。
Note
セットアップ方法の手順が完了しているものとします。
通常のGitのフローと同じです。 以下では、mackerel-agent.confファイルを編集した場合を例に、操作の流れを説明します。
- /etc/mackerel-agentディレクトリに移動する
cd /etc/mackerel-agent
-
/etc/mackerel-agent/mackerel-agent.confファイルを直接編集する
-
変更した /etc/mackerel-agent/mackerel-agent.confファイルを
git add
&git commit
するgit status # 変更のあるファイルを確認 git diff mackerel-agent.conf # 変更点を確認 git add mackerel-agent.conf git status # git addできているか確認 git commit -m "ホストxxxへの監視を追加" git status # 未コミットのファイルがないかどうかを確認 git log --oneline --graph # コミット履歴を確認
-
リモートGitリポジトリに
git push
するgit push
Note
セットアップ方法の手順が完了しているものとします。
自分の既存のリモートGitリポジトリの内容を反映させる手順です。
/etc/mackerel-agentディレクトリに移動します:
cd /etc/mackerel-agent
main
ブランチに変更します:
git checkout main
git pull
します:
git pull
Warning
コミットしていない変更や、ファイル変更のコンフリクトがある場合は、当然git pull
に失敗します。
原因を解消してから、再度git pull
してください。
新しいファイルをコミットしてGit管理するファイル・ディレクトリを増やす場合は、setup.shの以下の行も編集してください:
-
ファイル:
copied_files=("mackerel-agent.conf" "setup.sh" "README.md" "LICENSE")
-
ディレクトリ:
copied_dirs=("custom_metrics_plugins" "check_plugins")
新しいファイル・ディレクトリ名をダブルクォート"
で囲み、半角スペース
区切りで追加します。
例(ファイルnew-file-1とnew-file-2を追加):
copied_files=("mackerel-agent.conf" "setup.sh" "README.md" "LICENSE" "new-file-1" "new-file-2")
また、このREADME.mdの0. 前提条件の部分にも、ファイル名を忘れずに追記してください。
このリポジトリは、雛形https://github.com/shu-i-chi/mackerel-agent-conf-scaffoldを元に作成しています。