尝试使用Prometheus/Loki/Grafana #3(与Amazon Managed Service for Prometheus集成)(初心者)
首先
-
- 前回までの記事で、Prometheusを用いた監視の基本設定を確認した。
-
- 自作の監視サーバに保存されるメトリクスデータを安全かつ長期間保存するため、メトリクスデータをAmazon Managed Service for Prometheus(以下AMP)に連携する設定を確認する。
-
- 関連記事は以下。
【初心者】Prometheus/Loki/Grafanaを使ってみる (メトリクス/ログの収集と表示)
メトリクスとログを収集しGrafanaで表示させる。
【初心者】Prometheus/Loki/Grafanaを使ってみる #2 (AlertManagerによるアラーム通知)
AlertManagerを追加し、CPU高負荷時にslackへの通知を行う。
【初心者】Prometheus/Loki/Grafanaを使ってみる #3 (Amazon Managed Service for Promethus連携)
本記事。自分のPrometheusで収集したメトリクスをAmazon Managed Service for Prometheusに連携する。
2. 做过的事情 (zuò guò de shì
-
- AMPのワークスペースを作成する。
-
- 既存のPrometheusにて、AMPへデータを送信するよう設定変更する。
- 既存のGrafanaの接続先としてAMPを追加し、AMP側のデータを参照する。
3. 组成图

4. 步骤
创建4.1 AMP工作区
- AMPのワークスペースを作成する(名前しか設定項目がない)。

4.2 创建和附加IAM角色
- 公式ドキュメント「Set up metrics ingestion from an Amazon EC2 instance using remote write」を参照し、既存のPrometheusがAMPにデータを書き込むための権限(AmazonPrometheusRemoteWriteAccess)及び既存のGrafanaがAMPからデータを読み出す権限(AmazonPrometheusQueryAccess)を含むIAMロールを作成し、監視サーバ(Prometheus/Grafanaインストール済)のインスタンスにアタッチする。
添加现有的Prometheus配置。
- 既存のprometheus.ymlに、AMPにデータを送信する設定(AMPの書き込み用URL及びAMPのリージョンを指定)を追加する。
remote_write:
- url: https://aps-workspaces.us-west-2.amazonaws.com/workspaces/xxxxxx/api/v1/remote_write
queue_config:
max_samples_per_send: 1000
max_shards: 200
capacity: 2500
sigv4:
region: us-west-2
- 設定変更のためにサービスを再起動する。
[ec2-user@ip-10-0-0-249 ~]$ sudo systemctl restart prometheus.service
添加现有Grafana的配置。
-
- 既存のGrafanaから、AMPに接続できるように設定を追加する。
- 公式ブログ「EC2 で Grafana をセットアップして Amazon Managed Service for Prometheus のメトリクスをクエリする」に従い、GrafanaのSig v4認証対応(デフォルトは無効)を有効にする。具体的には、設定ファイル(grafana-server.service)の[Service]の箇所に以下2行追加する。
[Service]
Environment="GF_AUTH_SIGV4_AUTH_ENABLED=true"
Environment="AWS_SDK_LOAD_CONFIG=true"
- 設定変更の反映を行う。
[ec2-user@ip-10-0-0-249 ~]$ sudo systemctl daemon-reload
[ec2-user@ip-10-0-0-249 ~]$ sudo systemctl restart grafana-server
-
- Grafanaの管理画面から、Data source > + Add new data source > Prometheusを選択し、以下の設定の上、「Save & Test」を押して登録する。
Name: AMP (既存のPrometheusと区別する)
Prometheus server URL: AMPの「クエリURL」の最後の「/api/v1/query」を除いた部分
Auth – SigV4 auth: 有効(スライダーを右に)
SigV4 Auth Details – Authentication Provider: AWS SDK Default
Default Region: us-west-2 (今回AMPをus-west-2に作成しているため)


- 接続成功後、data source としてAMPを選択した状態で、CPU使用率などのクエリが可能なことを確認する。

我最初在官方文件「为Amazon Managed Service for Prometheus设置Grafana开源版或Grafana企业版」上查看了如何启用Grafana的SigV4方法,但该文件所提及的方法并没有成功启用,而是使用了AWS博客上的方法。
5. 参考网站
-
- Set up metrics ingestion from an Amazon EC2 instance using remote write
- systemdのユニット設定を編集する
6. 所感 (Suo Gan)
- やっとPrometheus周りの超基本が確認できたため、次にkubernetes環境での動作確認にチャレンジしたい。