2017-12-06 3 views

答えて

0

Prometheusはpull modelを使用してデータを取得し、Heapsterは特定のエンドポイント(プルモデル)にメトリックをプッシュするツールです。

KubernetesのメトリックをPrometheusに適用したいとします。 cadvicorにはプロメテウスのエンドポイントがあり、これを直接掻き集めることができるので、ヒープスターは必要ありません。また、kubelet自体もいくつかのメトリックを提供します。

プロメテウスの設定は次のようになります。

- job_name: 'kubernetes-nodes' 
    kubernetes_sd_configs: 
    - role: node 
    relabel_configs: 
    - action: labelmap 
    regex: __meta_kubernetes_node_label_(.+) 

- job_name: 'kubernetes-cadvisor' 
    kubernetes_sd_configs: 
    - role: node 
    relabel_configs: 
    - source_labels: [__meta_kubernetes_node_address_InternalIP] 
    target_label: __address__ 
    regex: (.*) 
    replacement: $1:4194 

デフォルトのcadvisortポート4194を使用していると仮定します。また、Prometheusは正しいkubeletポートを検出できるはずです。

追加の注意:cAdvisorを削る作業は、Kubernetesバージョン>= 1.7を使用する場合にのみ必要です。その前にcAdvisorメトリックaccidentally got exposed via the Kubelet

+0

はい、私はすでに 'cAdvisor'を使用しています。チェックするだけで、それを行うための回避策はありますか?ありがとう – Veerendra

+0

何のための任意の回避策? – svenwltr

+0

*プロメテウスを引く? –