DUICUO

KUR8: Kubernetes クラスターのトポロジとメトリクスの可視化ツール

KUR8は、KubernetesトポロジとPrometheusメトリクスを可視化するためのオープンソースツールです。設定ファイルとRBAC認証のみを使用して、Kubernetesクラスターに直接デプロイできます。KUR8はローカルで起動し、Kubernetesクラスターを一目で監視できます。

関数

構造: ​Structure​ページを閲覧すると、コントロールプレーンとワーカーノード、そしてそれらのすべてのポッドを簡単に確認できます。コンポーネントをクリックすると、メタデータ、ステータス、仕様に関する詳細情報が表示されます。コンテナからIngressまで、あらゆるもののイメージIDやIPアドレスに関する情報も簡単に見つけることができます。


メトリクス:厳選されたメトリクス ダッシュボードを使用して、クラスターのステータスの概要を明確に把握します。


カスタム メトリック:カスタム メトリック ページを使用して、PROMQL を使って必要なメトリックのクエリを自動化します。


アラート:すべての Prometheus アラートが​Alerts​タブに表示されるので、アラートがトリガーされているかどうか、またアラートがどのルール グループに属しているかを確認できます。


展開する

KUR8を展開する

次のリソース リストを Kubernetes クラスターに直接デプロイできます。

 # kur8-depl.yaml
apiバージョン: apps/v1
種類:デプロイメント
メタデータ
名前: kur8-depl
仕様:
レプリカ 1
セレクター:
マッチラベル
アプリ kur8
テンプレート
メタデータ
ラベル:
アプリ kur8
仕様:
コンテナ
- 名前: kur8
画像: kur8/ダッシュボード:最新
---
apiバージョン: v1
種類:サービス
メタデータ
名前: kur8-srv
ラベル:
プロメテウスクラスター監視
k8s-app : kube-state-metrics
仕様:
セレクター:
アプリ kur8
タイプ: ClusterIP
ポート:
- 名前: kur8
プロトコル: TCP
ポート: 3000
ターゲットポート: 3000

さらに、APIリソースへのアクセスを許可するには、一連の権限を設定する必要があります。RBAC認証を使用したYAMLファイルは既に設定済みなので、Kubernetesクラスターに直接適用できます。

 # fabric8-rbac.yaml
# 注意: サービス アカウント `default:default` は、k8s クラスターにすでに存在します。
# 次のようにして新しいアカウントを作成できます。
#---
#apiバージョン: v1
#種類: サービスアカウント
#メタデータ:
# 名前: <新しいアカウント名>
# 名前空間: <名前空間>

---
apiバージョン: rbac.authorization.k8s.io/v1
種類: ClusterRoleBinding
メタデータ
名前: fabric8-rbac
科目
- 種類:サービスアカウント
# 上位の `metadata.name` への参照
名前:デフォルト
# 上位の `metadata.namespace` への参照
名前空間:デフォルト
ロールリファレンス:
種類: ClusterRole
名前:クラスター管理者
apiグループ: rbac.authorization.k8s.io

デプロイ後、 ​kubectl port-forward​コマンドを使用してポート 3068 で KUR8 を開くことができます。

 kubectl ポートフォワード デプロイメント/kur8-depl 3068 :3068

次に、Webブラウザを開き、http://localhost:3068にアクセスします。左側の「構造」タブでKubernetes APIにクエリを実行し、クラスターのアーキテクチャを確認します。

Prometheusのデプロイ

Prometheus インスタンスがインストールされていない場合は、まずリポジトリのクローンを作成してください。

 gitクローン https://github.com/oslabs-beta/KUR8

KUR8 ディレクトリで次のコマンドを実行します。

 kubectl create -fインフラ/マニフェスト/セットアップ

設定後、以下を実行します。

 kubectl create -fインフラ/マニフェスト/

Kur8 を Prometheus に接続する場合は、次のようにポートを開いてください。

 kubectl --namespace モニタリング ポート転送 svc/prometheus-k8s 9090

これで、KUR8 の Prometheus タブにアクセスして、カスタム ダッシュボードを表示および作成できるようになります

リポジトリアドレス: https://github.com/oslabs-beta/KUR8