Hitachi

Hitachi Microservices Platform - Paxos Commit Transaction Orchestrator ユーザーズガイド


3.7.12 Google Cloud PlatformのマネージドPrometheusによるメトリクス収集のKubernetesマニフェスト作成

Google Cloud Platform環境でマネージドPrometheusを使用してHMP-PCTOのメトリクスを収集する場合、次の手順を実施してください。詳細については、Google Cloud Platformの公式ドキュメントを参照してください。

設定例として、カスタムリソースによる設定方法の一つであるgcp-metrics-prometheus-podmonitoring.yamlの記述例およびデプロイ手順を示します。

収集対象を設定するmatchLabelsパラメタにはHMP-PCTOのPodが起動しているspec.selector.matchLabelsを設定してください。

〈この項の構成〉

(1) Kubernetesマニフェストの記述例

Kubernetesマニフェストの記述例を次に示します。この例では、Kubernetesマニフェストのファイル名を「gcp-metrics-prometheus-podmonitoring.yaml」としています。

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: mediator-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: mediator
  endpoints:
  - port: http
    path: /hmppcto/metrics
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: sqlparticipant-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: sql-participant
  endpoints:
  - port: http
    path: /hmppcto/metrics     …1
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: tccparticipant-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: tcc-participant
  endpoints:
  - port: http
    path: /hmppcto/metrics     …1
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: entity-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: relay-service
  endpoints:
  - port: http
    path: /hmppcto/metrics     …1
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: tp1bridge-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: tp1-bridge
  endpoints:
  - port: http
    path: /hmppcto/metrics
---
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: orchestrator-podmonitoring
  namespace: my-namespace
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: orchestrator
  endpoints:
  - port: http
    path: /hmppcto/metrics     …1

記述例の番号は、説明の番号と対応しています。

<説明>

  1. この記述例では、コンテキストパスを設定していない場合の「spec.endpoints.path」の例を記載しています。

    コンテキストパスを設定する場合は、パスを次のように修正してください。

    /<コンテキストパス>/hmppcto/metrics

(2) Kubernetesマニフェストのデプロイ

作成したKubernetesマニフェストをデプロイしてください。コマンド例を次に示します。

kubectl apply -f gcp-metrics-prometheus-podmonitoring.yaml