下の図は、このソリューションの展開アーキテクチャを示しています。主に以下が含まれます:
Heapster を使用して、CPU、メモリ、ネットワーク、ファイル システムなどを含む K8 パフォーマンス データを収集します。
Heapster の Statsd シンクを使用して Splunk のメトリクス ストアにデータを送信します
Splunk の検索コマンドとダッシュボード機能を使用してパフォーマンス データを監視します
初期段階で準備する必要があるのは主に 2 つです:
最新の Heapster イメージをコンパイルし、Docker Hub などのパブリック Docker イメージ リポジトリにアップロードします
Splunk でメトリクスストアと対応するネットワーク入力 (ネットワーク入力 UDP/TCP) を設定する
ここでの主な選択は、Statsd の送信プロトコルとして UDP を使用するか TCP を使用するかです。ここでは TCP を使用することをお勧めします。 最新の Heapster コードは、log、influxdb、stackdriver、gcp モニタリング、gcp ロギング、statsd、hawkular-metrics、wavefront、openTSDB、kafka、riemann、elasticsearch などのさまざまなバックエンドをサポートしています。 Splunk の Metrics Store は statsd プロトコルをサポートしているため、Heapster と簡単に統合できます。
まず、最新の heapster コードを使用してコンテナー イメージをコンパイルする必要があります。これは、Docker Hub 上の heapsterd の公式イメージが古く、statsd をサポートしていないためです。したがって、自分でコンパイルする必要があります。
リーリー上記のコマンドを実行して、最新のヒープスターイメージをコンパイルします。
ヒープスターはデフォルトでudpプロトコルを使用することに注意してください。tcpを使用したい場合は、コードを変更する必要があります
。https://github.com/kubernetes/heapster/blob/master/metrics/sinks/statsd/statsd_client.go
リーリーudp を tcp に変更します。
それぞれudpバージョンとtcpバージョンに対応する2つのイメージをdocker Hubに配置しました。これらを直接使用できます
。naughtytao/heapster-amd64:v1.5.0-beta.3 udp
naughtytao/heapster-amd64:v1.5.0-beta.4 tcp
次に、Splunk でメトリクス ストアを設定する必要があります。このドキュメントを参照してください
K8 にヒープスターをデプロイするのは比較的簡単です。対応する yaml 構成ファイルを作成し、kubectl コマンド ラインを使用して作成します。
以下は、Deployment と Service の構成ファイルです:
deployment.yaml
リーリーservice.yaml
リーリーここでのシンク構成に注意してください。IP は Splunk の IP またはホスト名であり、ポートは Splunk のデータ入力のポート番号に対応します。 udp プロトコルを使用する場合、設定する必要がある numMetricsPerMsg の値が比較的小さい場合、メッセージが長すぎますというエラーが表示されます。 TCPを使用する場合は、より大きな値を設定できます。
kubectl apply -f *.yaml を実行してヒープスターをデプロイします
正常に動作している場合、ヒープスターポッドの対応ログは以下の通りです
リーリーすべてが正常に進むと、heapster は statsd プロトコルと形式を使用して Splunk のメトリクス ストアにメトリクスを送信します。
その後、SPL の mstats および mcatalog コマンドを使用して、メトリクス データを分析および監視できます。
次の検索ステートメントはすべてのメトリクスをリストします
リーリー次の検索ステートメントは、クラスター全体の CPU 使用率をリストします。面グラフまたは折れ線グラフを使用して検索結果を視覚化できます。
リーリーkube-system 名前空間の対応するメモリ使用量
リーリー 関心のある分析結果をダッシュボードに配置し、モニタリングにリアルタイム設定を使用できます。
その他の分析オプションについては、Splunk のドキュメントを参照してください。
以上がSplunk を使用した Kubernetes パフォーマンスの監視について詳しく説明しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。