このページでは、Google Distributed Cloud(GDC)エアギャップ アプライアンス デバイスでコンテナ ワークロードの永続ストレージを作成して管理する方法について説明します。永続ストレージにより、ワークロードのスケジュールに関係なく、アプリケーションに一貫した ID と安定したホスト名が提供されます。
このページは、組織のアプリケーション ワークロードの作成を担当するアプリケーション オペレーター グループ内のデベロッパーを対象としています。
始める前に
このドキュメントの手順を完了するには、必要な権限をリクエストして環境を準備する必要があります。
IAM ロールをリクエストする
Kubernetes クラスタで永続ボリュームを作成、削除、編集、表示するには、組織の IAM 管理者に Namespace 管理者
(namespace-admin)ロールの付与を依頼してください。このロールは、プロジェクト Namespace にバインドされます。
環境を準備する
事前構成されたベアメタル Kubernetes クラスタに対してコマンドを実行するには、次のリソースが必要です。
Kubernetes クラスタ名を確認するか、プラットフォーム管理者にクラスタ名を確認します。
ログインして生成します。Kubernetes クラスタの kubeconfig ファイルがない場合
Kubernetes クラスタの kubeconfig パスを使用して、この手順の
CLUSTER_KUBECONFIGを置き換えます。
永続ボリュームを作成する
次の手順では、GDC standard-rwo StorageClass を使用してボリュームを作成する方法について説明します。GDC で使用可能な StorageClass リソースの詳細については、コンテナの永続ストレージをご覧ください。
PersistentVolumeClaimを作成し、ReadWriteOnceアクセス モードとstandard-rwoストレージ クラスで構成します。kubectl --kubeconfig CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: standard-rwo EOF次のように置き換えます。
CLUSTER_KUBECONFIG: Kubernetes クラスタの kubeconfig ファイル。NAMESPACE: PVC を作成するプロジェクト Namespace。PVC_NAME:PersistentVolumeClaimオブジェクトの名前。
PersistentVolume(PV)オブジェクトは動的にプロビジョニングされます。Kubernetes クラスタで新しい PV のステータスを確認します。kubectl get pv --kubeconfig CLUSTER_KUBECONFIG出力は次のようになります。
NAME CAPACITY ACCESS MODES STATUS CLAIM STORAGECLASS AGE pvc-uuidd 10Gi RWO Bound pvc-name standard-rwo 60sPVC を使用するようにコンテナ ワークロードを構成します。次に、
standard-rwoPVC を使用するnginxPod の例を示します。kubectl --kubeconfig CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: apps/v1 kind: Pod metadata: name: web-server-deployment labels: app: nginx spec: containers: - name: nginx image: nginx volumeMounts: - mountPath: /usr/share/nginx/html name: data volumes: - name: data persistentVolumeClaim: claimName: PVC_NAME EOFPVC_NAMEは、作成した PVC に置き換えます。
ボリューム容量を拡張する
PersistentVolumeClaim オブジェクトの容量を増やすには、spec.resources.storage フィールドを新しい容量に更新します。サポートされている最大ボリューム サイズは 14.5 Ti です。
PersistentVolumeClaimオブジェクトのマニフェスト ファイルで、ボリュームを大きいサイズに更新します。kubectl --kubeconfig CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: VOLUME_STORAGE_SIZE EOF次のように置き換えます。
CLUSTER_KUBECONFIG: Kubernetes クラスタの kubeconfig ファイル。NAMESPACE: PVC リソースが存在するプロジェクト Namespace。PVC_NAME: ストレージ サイズを増やす PVC の名前。VOLUME_SNAPSHOT_SIZE: 増やすストレージ サイズ(50Giなど)。
クラスタで更新された PV のステータスを確認します。
kubectl get pv --kubeconfig CLUSTER_KUBECONFIG