このページでは、ベアメタル版 GKE クラスタにデフォルトの StorageClass を設定する方法について説明します。
概要
ベアメタル版 GKE は、次のいずれかのメカニズムを使用して、ブロック ストレージまたはファイル ストレージと統合できます。
デフォルトの StorageClass
PersistentVolumeClaim(PVC)を使用してストレージをリクエストする場合、StorageClass を指定できます。StorageClass を指定しない場合は、デフォルトの StorageClass が使用されます(クラスタ内に構成されている場合)。ベアメタル版 GKE はデフォルトの StorageClass を構成しません。たとえば、StorageClass を指定しない PVC を作成した場合、ボリューム コントローラは、デフォルトの StorageClass に従ってクレームを処理します。
デフォルトの StorageClass を変更する
クラスタ管理者として、デフォルトのストレージ クラスを変更できます。StorageClass を指定しないストレージに対するすべての要求は、選択した StorageClass に従って処理されます。このセクションでは、デフォルトを変更する手順について説明します。
新しいストレージ システムのデプロイ
新しいストレージ メカニズムと、その新しいストレージ メカニズムを Kubernetes クラスタに統合するためのソフトウェア コンポーネントをデプロイします。たとえば、クラスタへの CSI ドライバのインストールが必要な場合があります。
既存のデフォルトの StorageClass をデフォルト以外としてマークする
デフォルトの StorageClass がすでに存在する場合は、クラスタを検索してデフォルト以外のマークを付けます。詳細については、デフォルトの StorageClass を変更するをご覧ください。
新しい StorageClass を作成する
新しい StorageClass のマニフェストを作成します。storageclass.kubernetes.io/is-default-class: "true"
アノテーション含めます。例:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: annotations: storageclass.kubernetes.io/is-default-class: "true" ... name: my-storage-class ... parameters: ... provisioner: [MY_PROVISIONER] ...
マニフェストを YAML ファイルとして保存し、新しい StorageClass を作成します。
kubectl --kubeconfig [CLUSTER_KUBECONFIG] apply -f [MANIFEST_FILE]
[MANIFEST_FILE] は、新しい StorageClass マニフェスト ファイルへのパスです。