1

ネットワークの入出力バイト数、ディスクの読み書き速度などのメトリックデータを取得しようとしています。kubernetesダッシュボードでは、メモリとCPUのデータしか取得できません。私はkube-system名前空間にheapster、influx db、grafanaをインストールしました。 kubectl cluster-infoコマンドを実行すると、「このサイトには到達できません」と表示されます。だから、ダッシュボードは走っているようだが、他のAPIは動いていないようだ。このメトリックデータを取得する他の方法はありますか?kubernetesのコンポーネントメトリックデータを取得するには?

+0

私はcAdvisorをチェックアウトすることをお勧めします。 K8クラスタ内の実行中のコンテナのリソース使用量とパフォーマンス特性を提供します。 –

+0

文法上の訂正 –

答えて

0

ヒープスター、influxdb、grafanaをインストールしたことがあります。したがって、次のコマンドを使用して、CPU、MEMORYおよびストレージリソースを認識できます。

kubectl top pods --all-namespaces

このコマンドを使用すると、ポッドのリソース消費にアクセスできます。

さらに、あなたがnodes.Thenのためのリソース消費量をアクセスしたい場合は、このコマンドを撮影することができます

kubectl top nodes 
+0

上記のコマンドは動作するように見えましたが、ネットワークやディスクの情報ではなくメモリとCPUのデータしか与えられませんでした。これらのメトリクスの値を取得するには何かできますか? –

+0

コマンド "kubectl top pods -all-namespaces"は、すべて "kubectl top pods --all-namespaces"になる前に別のダッシュを持つ必要があります。 –

+0

@Samありがとうございます。答えを更新しました。 –

0

はい、あなたはheapster APIからそれらのデータを取得することができます。

heapster.yamlファイルに新しいエントリを追加するだけです。スペック(サービス)の下で

type: NodePort 

(actulllyあなたがそうすることによってheapsterのAPIを露出している)を追加します。

今すぐあなたのheapster.yamlファイル部分は、ここでもう一度、あなたのheapster.yamlを展開し、この
spec: type: NodePort ports: - port: 80 targetPort: 8082 selector: k8s-app: heapster

ようになるはずです。

次に、followngコマンドを使用してkubernetesクラスタからサービスリストを取得します。今

80:31637/TCP 

クラスタIPとポートをheapsterのAPIにアクセスしよう:

kubectl get services -n kube-system


がありますが、このようなheapster何かのポートを見ることができます。このような
何か:

http://192.168.99.100:31637/api/v1/model/metrics 

あなたは今指標を見ることができるはずです。
詳細については、https://github.com/kubernetes/heapster/blob/master/docs/model.mdを参照してください。

関連する問題