3.2. 3scale を監視するための Prometheus の設定
3scale のモニターリングを有効にするには、Prometheus カスタムリソースを使用して Prometheus をデプロイおよび設定する必要があります。
Prometheus のドキュメント の説明に従ってパーミッションが正しく設定されていることを確認してください。
手順
クラスター内のすべてのリソースを監視するか、3scale リソースのみを監視するかに応じて、以下のように Prometheus カスタムリソースをデプロイします。
クラスターのすべてのリソースを監視するには、
spec.podMonitorSelector属性を{}に、spec.ruleSelector属性を{}に設定します。たとえば、以下のカスタムリソースを適用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 3scale と Prometheus operator を同じ OpenShift プロジェクトにデプロイし、
APP_LABELの値がデフォルトの3scale-api-managementに設定されている場合は、以下の手順に従って 3scale リソースを監視します。spec.podMonitorSelector属性を以下のように設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec.ruleSelector属性を以下のように設定します。matchExpressions: - key: app operator: In values: - 3scale-api-managementmatchExpressions: - key: app operator: In values: - 3scale-api-managementCopy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、以下のカスタムリソースを適用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3scale と Prometheus operator を別の OpenShift プロジェクトにデプロイした場合には、以下の手順に従って 3scale リソースを監視します。
-
3scale がデプロイされている OpenShift プロジェクトに
MYLABELKEY=MYLABELVALUEのラベルを付けます。 podMonitorNamespaceSelectorフィルターを使用して 3scale Pod を選択します。たとえば、以下のカスタムリソースを適用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
3scale がデプロイされている OpenShift プロジェクトに
ダッシュボードおよびアラートが予想通りに機能させるには、以下のいずれかを実行して Kubernetes メトリクス (kube-state-metrics) を取り込む必要があります。
- Prometheus インスタンスをクラスターのデフォルト Prometheus インスタンスでフェデレーションする。
- 独自の収集ジョブを設定し、kubelet、etcd、その他からメトリクスを取得する。
関連情報
- Prometheus の詳細は、Prometheus のドキュメント を参照してください。