3.7.11 Microsoft AzureのマネージドPrometheusによるメトリクス収集のKubernetesマニフェストの作成
Microsoft Azure環境でマネージドPrometheusを使用してHMP-PCTOのメトリクスを収集する場合、次の手順を実施してください。
Microsoft Azure環境のマネージドPrometheusでは、サービスを起動しただけではHMP-PCTOのメトリクスを収集できないため、次のどちらかの定義を設定してください。詳細については、Microsoftの公式ドキュメントを参照してください。
-
configmap
-
カスタムリソース定義
設定例として、configmapによる設定方法の1つであるama-metrics-prometheus-configの記述例およびデプロイ手順を示します。
収集対象を設定するregexパラメタにはHMP-PCTOのPodが起動しているNamespace名およびPodのService名を設定してください。
replacementパラメタにはHMP-PCTOの各Podのserver.portパラメタに設定したポート番号を設定してください。
ama-metrics-prometheus-configに設定するパラメタ内容および設定値の詳細については、MicrosoftおよびPrometheusの公式ドキュメントを参照してください。
(1) Kubernetesマニフェストの記述例
Kubernetesマニフェストの記述例を次に示します。この例では、Kubernetesマニフェストのファイル名を「ama-metrics-prometheus-config.yaml」としています。
apiVersion: v1
kind: ConfigMap
metadata:
name: ama-metrics-prometheus-config
namespace: kube-system
data:
prometheus-config: |
global:
scrape_interval: 30s
scrape_configs:
- job_name: 'mediator-scraper'
metrics_path: /hmppcto/mediator/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;mediator-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:20554
- job_name: 'sql-participant-scraper'
metrics_path: /hmppcto/sqlparticipant/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;sql-participant-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:8080
- job_name: 'tcc-participant-scraper'
metrics_path: /hmppcto/tccparticipant/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;tcc-participant-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:8080
- job_name: 'tp1-bridge-scraper'
metrics_path: /hmppcto/tp1bridge/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;tcc-participant-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:20544
- job_name: 'entity-scraper'
metrics_path: /hmppcto/entity/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;entity-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:8080
- job_name: 'orchestrator-scraper'
metrics_path: /hmppcto/orchestrator/metrics
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name]
action: keep
regex: my-namespace;orchestrator-.*
- source_labels: [__meta_kubernetes_pod_ip]
action: replace
target_label: __address__
replacement: ${1}:8080- 重要
-
metadata.namespaceパラメタの設定値を「kube-system」から変更しないでください。
(2) Kubernetesマニフェストのデプロイ
作成したKubernetesマニフェストをデプロイしてください。コマンド例を次に示します。
kubectl apply -f ama-metrics-prometheus-config.yaml