Kubernetes

Kubo の UI を使って、クラスター内の Kubernetes リソースを確認・管理する方法を説明します。

関連: アプリのデプロイ / バックアップ

リソースの確認方法

クラスター詳細ページの「Kubernetes」タブを開くと、以下のリソースを種別ごとに一覧表示できます。

  • ワークロード: Pod / Deployment / ReplicaSet / StatefulSet / Job / CronJob
  • ネットワーク: Service / Ingress
  • 設定: ConfigMap / Secret
  • ストレージ: PersistentVolume (PV) / PersistentVolumeClaim (PVC) / StorageClass
  • クラスター: Node / Namespace
  • その他: Helm リリース / RBAC / Debug & Events

各一覧には共通の列(名前 / Namespace / 種別(Kind) / 作成日時)が表示され、リソース種別ごとに固有の列が追加されます。行をクリックすると詳細パネルが開き、一覧に出ていない詳細情報まで確認できます。

Pod

Pod はアプリケーションの実行単位です。一覧には Node / CPU / Memory / Status が表示され、詳細パネルでコンテナ・再起動回数・イベントなどを確認できます。

Service

Service はクラスター内外からのネットワークアクセスを管理します。一覧には共通列が表示され、タイプ(ClusterIP / NodePort / LoadBalancer)やポートは行クリックで開く詳細パネルで確認できます。

Deployment

Deployment はアプリケーションのデプロイ状態を管理します。一覧には レプリカ数(Replicas / Ready / Available) が表示され、使用イメージやポッドテンプレートは詳細パネルで確認できます。(ReplicaSet / StatefulSet も同様の列構成です)

Ingress

Ingress は外部からの HTTP アクセスをルーティングします。一覧には共通列が表示され、ホスト(ドメイン)やパスは詳細パネルで確認できます。

ローカルからのアクセス

kubeconfig ファイルをダウンロードして、ローカル環境から kubectl でアクセスすることも可能です。

kubeconfig のダウンロード

  1. クラスター詳細ページを開く
  2. ページ右上のメニュー(⋮)から「Download Kubeconfig」を選択
  3. ファイルがダウンロードされます

kubectl の設定

bash
export KUBECONFIG=/path/to/downloaded/kubeconfig.yaml

# ノードの確認
kubectl get nodes

# 全名前空間の Pod を確認
kubectl get pods -A

# サービスの確認
kubectl get services -A

# デプロイメントの確認
kubectl get deployments -A

トラブルシューティング

Pod が起動しない

bash
# Pod の詳細を確認
kubectl describe pod <pod-name> -n <namespace>

# Pod のログを確認
kubectl logs <pod-name> -n <namespace>

一般的な原因:

  • コンテナイメージが見つからない(ImagePullBackOff)
  • リソース不足(Insufficient CPU / Memory)
  • 設定ミス(CrashLoopBackOff)

Service にアクセスできない

bash
# Service の詳細を確認
kubectl describe service <service-name> -n <namespace>

# Endpoints の確認
kubectl get endpoints <service-name> -n <namespace>
On this page