このページでは、Google Distributed Cloud(GDC)のエアギャップ ソブリン ユニバースでコンテナ ワークロードの永続ストレージを作成して管理する方法について説明します。永続ストレージは、ワークロードのスケジュール場所に関係なく、アプリケーションに一貫した ID と安定したホスト名を提供します。
このページは、組織のアプリケーション ワークロードの作成を担当するアプリケーション オペレーター グループ内のデベロッパーを対象としています。詳細については、GDC エアギャップの対象読者に関するドキュメントをご覧ください。
始める前に
Kubernetes クラスタに対してコマンドを実行するには、次のリソースがあることを確認してください。
Kubernetes クラスタ名を確認するか、プラットフォーム管理者にクラスタ名を確認します。
まだ Kubernetes クラスタの kubeconfig ファイルがない場合は、ログインして生成します。
これらの手順では、Kubernetes クラスタの kubeconfig パスを使用して
KUBERNETES_CLUSTER_KUBECONFIG
を置き換えます。
永続ボリュームを作成するために必要な権限を取得するには、プロジェクトの Namespace で Namespace 管理者ロール(namespace-admin
)を付与するよう組織の IAM 管理者に依頼してください。
永続ボリュームを作成する
次の手順では、GDC standard-rwo
StorageClass
を使用してボリュームを作成する方法について説明します。GDC で使用可能な StorageClass
リソースの詳細については、コンテナの永続ストレージをご覧ください。
PersistentVolumeClaim
を作成し、ReadWriteOnce
アクセスモードとstandard-rwo
ストレージ クラスで構成します。kubectl --kubeconfig KUBERNETES_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
次のように置き換えます。
KUBERNETES_CLUSTER_KUBECONFIG
: クラスタの kubeconfig ファイル。NAMESPACE
: PVC を作成するプロジェクト Namespace。PVC_NAME
:PersistentVolumeClaim
オブジェクトの名前。
PersistentVolume
(PV)オブジェクトは動的にプロビジョニングされます。Kubernetes クラスタ内の新しい PV のステータスを確認します。kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG
出力は次のようになります。
NAME CAPACITY ACCESS MODES STATUS CLAIM STORAGECLASS AGE pvc-uuidd 10Gi RWO Bound pvc-name standard-rwo 60s
PVC を使用するようにコンテナ ワークロードを構成します。以下は、
standard-rwo
PVC を使用するnginx
Pod の例です。kubectl --kubeconfig KUBERNETES_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 EOF
PVC_NAME
は、作成した PVC に置き換えます。
ボリューム容量を拡張する
PersistentVolumeClaim
オブジェクトの容量を増やすには、spec.resources.storage
フィールドを新しい容量に更新します。サポートされている最大ボリューム サイズは 14.5 Ti です。
PersistentVolumeClaim
オブジェクトのマニフェスト ファイルで、ボリュームをより大きなサイズに更新します。kubectl --kubeconfig KUBERNETES_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
次のように置き換えます。
KUBERNETES_CLUSTER_KUBECONFIG
: クラスタの kubeconfig ファイル。NAMESPACE
: PVC リソースが存在するプロジェクト Namespace。PVC_NAME
: ストレージ サイズを増やす PVC の名前。VOLUME_SNAPSHOT_SIZE
: 増やすストレージ サイズの量(50Gi
など)。
クラスタ内の更新された PV のステータスを確認します。
kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG