クラウド ネイティブ ストレージ はいくつかのコンポーネントを使用して、vSphere ストレージと統合します。

次の図は、これらのコンポーネントの相互関係を示しています。

Kubernetes クラスタ
クラウド ネイティブ ストレージ 環境では、Kubernetes クラスタは vSphere に展開された仮想マシンのクラスタまたはノードです。Kubernetes ユーザーは、クラスタと直接対話して、クラスタの上にステートフル アプリケーションを展開します。
vSphere コンテナ ストレージ インターフェイス (CSI)
vSphere CSI は、Kubernetes などのコンテナ Orchestrator 上のコンテナ化されたワークロードに vSphere ストレージを公開するインターフェイスです。これにより、vSAN など各種の vSphere ストレージが有効になります。

Kubernetes では、CSI ドライバがツリー外の vSphere Cloud Controller Manager (CCM) と共に使用されます。

コンテナ ストレージ インターフェイスでは、コンテナ ボリュームの動的プロビジョニングがサポートされます。

このインターフェイスでは、以下の機能がサポートされます。
  • vSphere First Class Disk 機能。
  • Kubernetes ゾーン。
  • 従来型のマウントと raw マウント。
  • 単一の vCenter Server、および複数のデータセンターとクラスタ。
  • 複数のデータストアまたはデータストア クラスタからのプロビジョニング。

Kubernetes では、CSI ドライバが、ツリー外の vSphere Cloud Provider インターフェイス (CPI) とともに使用されます。CSI ドライバはコンテナ イメージとして提供されるため、クラスタ管理者がデプロイする必要があります。詳細については、GitHub にあるKubernetes vSphere Cloud Provider のドキュメントでDeploying a Kubernetes Cluster on vSphere with CSI and CPIを参照してください。

クラウド ネイティブ ストレージ サーバ コンポーネント
CNS サーバ コンポーネントは vCenter Server に配置されます。これは、コンテナ ボリュームのプロビジョニングとライフサイクルの操作を実装する vCenter Server 管理の拡張機能です。
コンテナ ボリュームをプロビジョニングするときに、最初のクラス ディスク機能と通信して、ボリュームをバッキングする仮想ディスクを作成します。また、CNS サーバ コンポーネントは、ストレージ ポリシーベースの管理と通信して、ディスクに必要なサービス レベルを確保します。
CNS は、 vCenter Server を介してコンテナ ボリュームとそのバッキング仮想ディスクを管理および監視するクエリ処理も実行します。
最初のクラス ディスク (FCD)
強化された仮想ディスクとも呼ばれます。これは、仮想マシンと関連付けられていない名前付き仮想ディスクです。これらのディスクは、VMFS、NFS、または vSAN データストア、およびバック コンテナ ボリュームに配置されます。
ストレージ ポリシー ベースの管理
ストレージ ポリシー ベースの管理は、指定されたストレージ要件に基づき、パーシステント ボリュームのプロビジョニングをサポートする vCenter Server サービスです。プロビジョニング後、サービスは、必要なポリシー特性に対するボリュームのコンプライアンスを監視します。