Prometheus
Prometheusは、クラウド・ネイティブ・アプリケーションをモニターするためのシステムであり、Verrazzanoによってアプリケーションのモニターに使用されます。Prometheusは、システム・パフォーマンス・メトリックと、Verrazzanoによってデプロイまたは管理されるアプリケーションのメトリックを収集するためにVerrazzanoで使用されます。Prometheusはメトリックを分析し、Grafanaを使用してビジュアライゼーションを提供します。
Prometheus構成のカスタマイズ
Verrazzanoは、kube-prometheus-stack Helmチャートを使用してPrometheusオペレータやPrometheusなどのPrometheusコンポーネントをインストールします。Verrazzanoカスタム・リソースで指定されたHelmオーバーライドを使用して、インストール構成をカスタマイズできます。たとえば、次のVerrazzanoカスタム・リソースはPrometheusレプリカの数をオーバーライドします。
apiVersion: install.verrazzano.io/v1beta1
kind: Verrazzano
metadata:
name: custom-prometheus
spec:
profile: prod
components:
prometheusOperator:
overrides:
- values:
prometheus:
prometheusSpec:
replicas: 3
Alertmanagerを有効にするには、次のVerrazzanoカスタム・リソースを使用します:
apiVersion: install.verrazzano.io/v1beta1
kind: Verrazzano
metadata:
name: custom-prometheus
spec:
profile: prod
components:
prometheusOperator:
overrides:
- values:
alertmanager:
enabled: true
alertmanagerSpec:
podMetadata:
annotations:
sidecar.istio.io/inject: "false"
コンポーネント・オーバーライドの設定の詳細は、Customizing the Chart Before Installingを参照してください。
Alertmanagerを有効にした後、アラート・ルールをデプロイしてプロアクティブなアラートを取得できます。TestAlertRule
を作成するには、次のコマンドを実行します。
$ kubectl apply -f - <<EOF
apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
labels:
release: prometheus-operator
name: prometheus-operator-test
namespace: verrazzano-monitoring
spec:
groups:
- name: test
rules:
- alert: TestAlertRule
annotations:
description: Test alert rule
runbook_url: test-runbook-url
summary: Test alert rule
expr: |-
prometheus_config_last_reload_successful{job="prometheus-operator-kube-p-prometheus",namespace="verrazzano-monitoring"} == 0
for: 10m
labels:
severity: critical
EOF
詳細は、「Deploying Prometheus Rules」を参照してください。
永続ストレージの設定をカスタマイズする手順については、「永続ストレージのカスタマイズ」を参照してください。
データ保持設定の構成
Verrazzanoは、デフォルトのデータ保持設定の10日でPrometheusを構成します。収集されるメトリック・データの速度は、モニターの数、モニターのスクレイピング間隔、各モニターから返されるメトリックの数など、多くの要因によって異なります。
Prometheusに永続ストレージを使用する場合、すべてのストレージを消費する可能性があります。Prometheusがすべての使用可能な永続ストレージを使用している場合、問合せはデータを返さず、新しいメトリックを保存できません。永続ストレージの設定をカスタマイズしたり、データ保持日数を変更して最大保持サイズを構成したりできます。保持サイズを構成する場合、永続ストレージ・サイズの85%以下の値に設定することをお薦めします。
次の例では、最大3日または40GBのメトリック・データを格納するようにPrometheusを構成しています。
apiVersion: install.verrazzano.io/v1beta1
kind: Verrazzano
metadata:
name: custom-prometheus
spec:
profile: prod
components:
prometheusOperator:
overrides:
- values:
prometheus:
prometheusSpec:
retention: 3d
retentionSize: 40GB