デフォルトの StorageClass を設定する

このページでは、ベアメタル版 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 マニフェスト ファイルへのパスです。

次のステップ