収集されたメトリックは既定で収集され、このリリースでは完全にサポートされています。 OpenTelemetry メトリックは、GitHub Enterprise Server 3.18 以降から入手できる、監視の将来の基盤です。
メモ
収集されるメトリックは、 終了 と 廃止 であることが予想されます。今後のリリースでは、 GitHub Enterprise Server がリリースされます。 長期的な監視戦略には、OpenTelemetry メトリックへの移行が含まれていることをお勧めします。 「OpenTelemetry メトリックについて」を参照してください。
GitHub Enterprise Server には、観測と監視を簡略化する Prometheus メトリック エクスポーターが含まれています。 この機能を使うと、メトリックをアプライアンスから直接スクレイピングできるため、Prometheus システムに送信する前に、変換のために collectd メトリックを外部の collectd サーバーに転送する必要がなくなります。 エクスポーターは、Prometheus と互換性のあるメトリックをネイティブにサポートすることで、外部の監視ダッシュボードやアラート システムとのシームレスな統合を実現しています。
Prometheus メトリック エクスポーターとメトリックのスクレイピングを有効にする
既定では、Prometheus メトリック エクスポーターとスクレイピングは無効になっています。
collectd メトリックのエクスポーターを有効にすると、scrape endpoint でメトリック エンドポイント (http(s)://HOSTNAME:9103 とも呼ばれます) が開きます。 ファイアウォール規則でポート 9103 でのトラフィックが許可されていることを確認します。
Prometheus メトリック エクスポーターは、[Management Console]、アプライアンス内のコマンド ライン インターフェイス、または API を使って有効にすることができます。
[Management Console]
の使用を有効にする
-
GitHub Enterprise Server の管理アカウントから、任意のページの右上隅にある をクリックします。
-
[サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。1. [ Site admin] サイドバーで、[[Management Console]] をクリックします。
-
監視設定で、[Enable prometheus] を選びます。
-
**[Trusted IPv4/IPv6 addresses or CIDR blocks in a comma-separated list]** フィールドに、IP アドレスまたは CIDR ブロックのコンマ区切りリストを入力します。 例: `10.0.0.1, 192.168.1.0/8`。 このフィールドを空のままにすると、任意のソース IP からのスクレイピング要求が受け入れられます。 -
[設定] サイドバーで [設定の保存] をクリックします。
メモ
[Management Console] で設定を保存すると、システム サービスが再起動され、ユーザーにわかるダウンタイムが発生する可能性があります。
-
設定の実行が完了するのを待ってください。
コマンド ライン インターフェイス経由で有効にする
Prometheus メトリック エクスポーターを有効にするには、GitHub Enterprise Server アプライアンスに SSH で接続し、次のコマンドを実行します。
ghe-config app.prometheus.enabled true
# Specify a comma-separated list of
# trusted IPv4/IPv6 addresses or CIDR blocks.
ghe-config app.prometheus.trusted-ips \
"10.0.0.1, 192.168.1.0/8"
ghe-config-apply
API の使用を有効にする
API を使って Prometheus メトリック エクスポーターを有効にするには、PUT 要求を送信して構成設定を更新します。
curl -L -H "Content-Type: application/json" \
-X PUT -u "api_key:xxxxxxx" \
https://<hostname>/manage/v1/config/settings \
-d '{"prometheus": {"enabled": true, "trusted_ips": "10.0.0.1, 192.168.1.0/8"}}'
Prometheus メトリック エクスポーターが有効であることを確認する
Prometheus メトリック エクスポーターが有効であることを確認するには、curl を使ってポート 9103 の /metrics エンドポイントを照会します。 管理ポートの詳細については、「ネットワーク ポート」を参照してください。
curl 127.0.0.1:9103/metrics
成功した場合、回答には collectd_ プレフィックスが付いたメトリックが含まれます。
外部 Prometheus サーバーを構成する
エクスポートされたメトリックを GitHub Enterprise Server からスクレイピングするには、外部 Prometheus サーバー上の prometheus.yaml ファイルにスクレイピングの構成を追加します。
- job_name: "ghes-prom-agent"
scrape_interval: 10s
static_configs:
- targets: ["http(s)://HOSTNAME:9103/metrics"]
アナウンスなしでリリースされた Prometheus メトリック エクスポーターのサポート
GitHub Enterprise Server 3.12 でアナウンスなしでリリースされて以来、Prometheus メトリック エクスポーターを使っている場合は、3.16 にアップグレードした後も引き続き機能します。 このバージョンでは、スクレイピング要求に信頼できる IP を指定するオプションが追加されました。
フィードバックを送る
Prometheus メトリック エクスポーターとスクレイピング機能に関するフィードバックは、GitHub までお寄せください。 不明な点や問題がある場合は、GitHub Enterprise サポート にお問い合わせください。