ステートフル ワークロードを検査する

このページでは、Google Distributed Cloud(GDC)のエアギャップ Kubernetes クラスタで実行されている既存のステートフル ワークロードを検査する方法について説明します。ステートフル ワークロードを使用すると、永続コンテナ ストレージでアプリケーションを実行できます。GDC コンソールまたは kubectl CLI を使用してステートフル ワークロードを表示し、リソース使用量とワークロードの健全性をモニタリングできます。

このページは、組織のアプリケーション ワークロードの管理を担当するアプリケーション オペレーター グループ内のデベロッパーを対象としています。詳細については、GDC エアギャップの対象読者に関するドキュメントをご覧ください。

始める前に

Kubernetes クラスタに対してコマンドを実行するには、次のリソースがあることを確認してください。

  1. Kubernetes クラスタ名を確認するか、プラットフォーム管理者にクラスタ名を確認します。

  2. まだ Kubernetes クラスタの kubeconfig ファイルがない場合は、ログインして生成します。

  3. これらの手順では、Kubernetes クラスタの kubeconfig パスを使用して KUBERNETES_CLUSTER_KUBECONFIG を置き換えます。

プロジェクトにデプロイされたすべてのワークロードを表示するために必要な権限を取得するには、組織の IAM 管理者に、プロジェクトの Namespace でワークロード閲覧者ロール(workload-viewer)を付与するよう依頼してください。

ステートフル ワークロードを検査するために必要な権限を取得するには、組織の IAM 管理者に、プロジェクトの Namespace で Namespace 管理者ロール(namespace-admin)を付与するよう依頼してください。

プロジェクトのコンテナ ワークロードを表示する

プロジェクトのコンテナ ワークロードを表示するには、次の操作を行います。

コンソール

  • ナビゲーション メニューで、[Kubernetes Engine] > [ワークロード] を選択します。

    コンテナ ワークロードの詳細(次のようなもの)を表示できます。

    • 名前
    • タイプ
    • Pod の数
    • Kubernetes クラスタ
    • 最終更新日

    コンテナ ワークロードは、属する Kubernetes クラスタごとに整理されます。[クラスタ] プルダウンを選択して、クラスタ コンテキストを切り替えます。

CLI

  • 次のコマンドを実行して、プロジェクト内のすべての Pod を一覧表示します。

    kubectl get pods -n PROJECT_NAMESPACE
    

    出力は次のようになります。

    NAME                        READY   STATUS    RESTARTS   AGE
    nginx-workload-ah-aa-1228   1/1     Running   0          12h
    nginx-workload-ah-ab-6784   1/1     Running   0          11h
    nginx-workload-ah-ac-0045   1/1     Running   0          12h
    

StatefulSet リソースを検査する

StatefulSet リソースのコンポーネントに関する詳細情報をリクエストするには、検査するエンティティを直接ターゲットにするコマンドを実行します。

StatefulSet オブジェクト情報を取得する

StatefulSet オブジェクトの詳細情報を取得するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe statefulset STATEFULSET_NAME

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: StatefulSet オブジェクトを実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • STATEFULSET_NAME: StatefulSet オブジェクトの名前。

ライブ構成を YAML 形式で表示する

StatefulSet リソースのライブ構成を YAML 形式で表示するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    get statefulset STATEFULSET_NAME -o yaml

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: StatefulSet オブジェクトを実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • STATEFULSET_NAME: StatefulSet オブジェクトの名前。

ポッドの一覧表示

StatefulSet によって作成された Pod オブジェクトを一覧表示するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    get pods -l app=APP_NAME

このコマンドで -l フラグを指定すると、APP_NAME ラベルを持つすべての Pod オブジェクトが一覧表示されます。

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: StatefulSet オブジェクトを実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • APP_NAME: StatefulSet オブジェクトによって管理されるステートフル アプリケーションの名前。

特定の Pod の情報を取得する

クラスタ内の特定の Pod に関する情報を取得するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pod POD_NAME

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: Pod を実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • POD_NAME: StatefulSet オブジェクトによって管理される Pod の名前。

PVC を一覧表示する

クラスタ内の PersistentVolumeClaim(PVC)オブジェクトを一覧表示するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    get pvc

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: PVC を実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

特定の PVC 情報を取得する

クラスタ内の特定の PersistentVolumeClaim(PVC)に関する情報を取得するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pvc PVC_NAME

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: PVC を実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • PVC_NAME: StatefulSet オブジェクト用に構成された PVC の名前。

PV 情報を取得する

クラスタ内の特定の PersistentVolume(PV)に関する情報を取得するには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pv PV_NAME

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: PV を実行しているクラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • PV_NAME: StatefulSet オブジェクト用に構成された PV の名前。