Azure コンテナー ストレージの永続ボリュームをクローンする
Azure Container Storage の永続ボリュームはクローンすることができます。 クローンされたボリュームは、既存の永続ボリュームの複製となります。 クローンできるのは、同じストレージ・プール内にある同じサイズのボリュームのみです。
前提条件
- この記事では、最新バージョン (2.35.0 以降) の Azure CLI が必要です。 「Azure CLI のインストール方法」を参照してください。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。 Azure Cloud Shell ではなくローカルでコマンドを実行する場合は、必ず管理特権で実行してください。
- クラスター ノード用の少なくとも 3 つの仮想マシン (VM) (それぞれが少なくとも 4 つの仮想 CPU (vCPU) を持つ) のノード プールを持つ Azure Kubernetes Service (AKS) クラスターが必要になります。
- この記事では、AKS クラスターに Azure Container Storage を既にインストールしていることと、Azure Disks かエフェメラル ディスク (ローカル ストレージ) を使用してストレージ プールと永続ボリューム要求 (PVC) を作成していることを前提としています。 Azure Elastic SAN では、ボリュームのサイズ変更はサポートされていません。
ボリュームを複製する
永続ボリュームをクローンするには、以下の手順に従います。
任意のテキスト エディターを使用して、
code acstor-clonevolume.yaml
などの YAML マニフェスト ファイルを作成します。次のコードを貼り付けて、ファイルを保存します。 組み込みのストレージ クラスではボリュームのクローンがサポートされているため、dataSource では Azure Container Storage ストレージ クラスによって以前に作成された PVC を必ず参照してください。 たとえば、Azure Disk 用の PVC を作成した場合、それは
azurediskpvc
と呼ばれることがあります。 ストレージでは、元の PVC のサイズを指定します。apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-acstor-cloning spec: accessModes: - ReadWriteOnce storageClassName: acstor-azuredisk resources: requests: storage: 100Gi dataSource: kind: PersistentVolumeClaim name: azurediskpvc
YAML マニフェスト ファイルを適用して PVC をクローンします。
kubectl apply -f acstor-clonevolume.yaml
次のような出力が表示されます。
persistentvolumeclaim/pvc-acstor-cloning created
任意のテキスト エディターを使用して、
code acstor-pod.yaml
などの YAML マニフェスト ファイルを作成します。次のコードを貼り付けて、ファイルを保存します。 claimName では、必ずクローンされた PVC を参照してください。
kind: Pod apiVersion: v1 metadata: name: fiopod2 spec: nodeSelector: acstor.azure.com/io-engine: acstor volumes: - name: azurediskpv persistentVolumeClaim: claimName: pvc-acstor-cloning containers: - name: fio image: nixery.dev/shell/fio args: - sleep - "1000000" volumeMounts: - mountPath: "/volume" name: azurediskpv
YAML マニフェスト ファイルを適用して新しいポッドをデプロイします。
kubectl apply -f acstor-pod.yaml
次のような出力が表示されます。
pod/fiopod2 created
ポッドが実行されていること、および永続ボリューム要求がポッドに正常にバインドされていることを確認します。
kubectl describe pod fiopod2 kubectl describe pvc azurediskpvc