[k8s シリーズ] kube-state-metrics の kube_endpoint_address インジケーター


作成者: ningan123
日付: 2022-12-27 10:13
更新日: 2022-12-27 12:12

背景

k8sのエンドポイントにip項目がないことを警告するインジケーターが欲しい

下の図と同様に、一部の eps には IP がありません。これらのアイテムには時間内に警告し、理由を確認するために時間内に対処したいと考えています。

画像.png

合計 7 つの EPS があり、4 つは正常、3 つは異常であることがわかります (kube-dns、kubernetes-dashboard、metrics-server)。

環境

kube-state-metrics バージョン: v2.6.0

操作する

# HELP kube_endpoint_address_available (Deprecated since v2.6.0) Number of addresses available in endpoint.
# TYPE kube_endpoint_address_available gauge

# HELP kube_endpoint_address_not_ready (Deprecated since v2.6.0) Number of addresses not ready in endpoint
# TYPE kube_endpoint_address_not_ready gauge

# HELP kube_endpoint_address Information about Endpoint available and non available addresses.
# TYPE kube_endpoint_address gauge

方法 1: 0 より大きい kube_endpoint_address_not_ready を選択する

項目は全部で7つあり、0以上は異常

画像.png

さらに、kube-dns には 3 が表示され、kubernetes-dashboard と metrics-server には 1 が表示されていることがわかります。これはなぜでしょうか。

検証方法1

タイトルの背景の画像からわかるように、ep には ip:port が表示されており、これらの eps の具体的な詳細を確認できます: 以下の図に示すように、kube-dns には 1 つの ip と 3 つのポートがあります
。ダッシュボードには 1 つの IP、1 ポートがあり、メトリクスサーバーには 1 つの IP、1 ポートがあります

画像.png

画像.png

画像.png

検証方法2

別のクラスター k2 が見つかりました。デプロイ方法は k と同じです。
k2 の 3 つの eps を見ると、3、1、1 であることがわかります。

画像.png

方法 2: 0 未満の kube_endpoint_address_available を選択する

項目は全部で7つあり、0未満は異常です

画像.png

nginx で 3 が表示されるのはなぜですか?
クラスターを見ると、nginx の下に 3 つの項目があることがわかります。

画像.png

方法 3: kube_endpoint_address{ready="false"} は 0 より大きい値を選択します

選択がready="false"なので表示が異常です

画像.png

再度、ready="true" を選択すると、
項目が 6 つあることがわかります。これはなぜでしょうか。
よく見てみると、kube_endpoint_address インジケーターが IP ラベルに追加されており、nginx には 3 つの IP があるため、3 つの項目に分割されています。

画像.png

説明する

v2.6.0 では、新しいインジケーター kube_endpoint_address が追加されました
(詳細: https://github.com/kubernetes/kube-state-metrics/releases)

画像.png

1761 にジャンプすると、kube_endpoint_address_available と kube_endpoint_address_not_ready が kube_endpoint_address_available と kube_endpoint_address_not_ready に置き換えられることがわかります。 v2.6.0以降

詳細については、https://github.com/kubernetes/kube-state-metrics/pull/1761 を参照してください。

画像.png

終わり〜

メッセージ: 一歩一歩が大切です!

参考

https://github.com/kubernetes/kube-state-metrics/releases
https://github.com/kubernetes/kube-state-metrics/pull/1761

おすすめ

転載: blog.csdn.net/weixin_42072280/article/details/128454267