Node Exporter 構築手順 + Prometheus からAWSオートスケール監視
概要
前回 Prometheus Server 構築しました。
今回は 監視対象サーバで Node Exporter 構築を実施します。
今回やること 3 行まとめ
- Node Exporter インストール
- Node Exporter 起動スクリプト作成
- Node Exporter 起動し Prometheus Server からモニタリング
環境
- CentOS Linux release 7.1.1503 (Core)
Node Exporter インストール
- パッケージインストール
1 | $ cd /usr/local/src |
- シンボリックリンク作成
1 | $ sudo ln -s /usr/local/node_exporter/node_exporter /bin/node_exporter |
Node Exporter 起動
とりあえず起動するならこれだけ
1 | $ sudo node_exporter |
http://node_exporter_server:9100/metrics にアクセスし
取得できる node_exporter で取得しているサーバのメトリクス情報が確認できます。
Prometheus 同様、Node Exporter も起動スクリプトを作成しそこで起動管理をします。
起動スクリプト作成
- Node Exporter 起動スクリプト
1 | $ sudo cat << 'EOF' | sudo tee /usr/lib/systemd/system/node_exporter.service |
- 起動設定
1 | $ sudo systemctl daemon-reload |
アクセスしてみる
http://node_exporter_server:9100/metrics にアクセスします。
以下のように表示されていれば Node Exporter 起動成功です。
Prometheus から監視
今回は AWS EC2 インスタンスで起動中の node_exporter によるメトリクス取得設定です。
※ 監視実施サーバに AmazonEC2ReadOnlyAccess
をアタッチしたロール設定をする必要があります。
※ 監視対象サーバに 監視対象サーバから 9100 ポート
へアクセスできるようにセキュリティグループ設定します。
- /usr/local/prometheus-server/prometheus.yml 編集
以下設定は region 指定しアクセス権のある Instance のメトリクスを取得します。
1 | # my global config |
タグで監視対象を絞る
全インスタンスを監視であれば上記で問題ありません。
ですが、監視対象をある程度条件で絞りたいケースがあります。
そんな時、Prometheus では relabel_configs
でインスタンスの設定タグで絞る方法があります。
- インスタンスのタグ設定
- prometheus.yml 設定
1 | # my global config |
- prometheus.yml 編集後、再起動
1 | $ sudo systemctl restart prometheus.service |
Prometheus から node_exporter 起動したサーバを監視できているか確認
http://prometheus_server:9090/consoles/node.html
Up : Yes
となっている Node のリンクをクリックすると CPU, Disck のグラフが確認できます。
次回は 監視対象で Alertmanager 構築します。
参照
Node Exporter 構築手順 + Prometheus からAWSオートスケール監視
https://kenzo0107.github.io/2017/01/24/2017-01-25-prometheus-aws-autoscaling/