Alibaba Cloud Container Compute Service (ACS) クラスタのストレージ機能は、Kubernetes Container Storage Interface (CSI) プラグインに基づいて開発されています。この機能は、ディスク、File Storage NAS (NAS)、および Object Storage Service (OSS) と統合されており、Kubernetes ネイティブの EmptyDir ボリュームと ConfigMap と互換性があります。このトピックでは、ACS でサポートされている Alibaba Cloud ストレージサービスについて、その機能、アプリケーションシナリオ、およびマウント方法を含めて説明します。
ストレージの基本
ボリューム
PV と PVC
Alibaba Cloud ストレージサービスの選択
Alibaba Cloud は、ブロック、ファイル、オブジェクトなどのさまざまなストレージリソースに基づいて、低コスト、高信頼性、高可用性のストレージサービスを提供しています。ビジネス負荷のストレージ要件と、データ量、データアクセス頻度、IOPS、スループットなどの要因に基づいて、適切なクラウドストレージサービスを選択できます。
Alibaba Cloud ストレージサービス | 機能 | シナリオ | 参照 |
ディスクは、非共有、低レイテンシ、高信頼性のランダムブロックストレージです。ディスクは物理ディスクに似ており、パーティションのフォーマットとファイルシステムの作成をサポートしています。 |
| 次のタイプのディスクがサポートされています。
課金とパフォーマンスの要件に基づいて、ディスクカテゴリを選択できます。詳細については、ブロックストレージデバイスの価格とブロックストレージのパフォーマンスを参照してください。 | |
NAS は、並列共有アクセス、自動スケーリング、高可用性、高信頼性など、複数のメリットを提供する分散ファイルシステムです。NAS は、高スループットと高 IOPS を提供し、ランダム読み取り/書き込み操作とオンラインファイル変更をサポートしています。 |
| 汎用 NAS ファイルシステムと Extreme NAS ファイルシステムがサポートされています。 NAS のコストとパフォーマンスに基づいて、適切な NAS タイプとストレージ仕様を選択できます。詳細については、汎用 NAS ファイルシステム、Extreme NAS ファイルシステム、およびファイルシステムの選択を参照してください。 | |
凌雲向け Cloud Parallel File Storage (CPFS) は、インテリジェントコンピューティングシナリオ向けに高スループットと IOPS を提供し、エンドツーエンドの Remote Direct Memory Access (RDMA) ネットワークをサポートしています。 |
| 凌雲向け CPFS のみがサポートされています。 CPFS は招待プレビュー中で、特定のリージョンとゾーンでのみサポートされています。詳細については、凌雲向け CPFS (招待プレビュー) とはを参照してください。 | |
OSS は、巨大で低コストの共有ストレージスペースを提供します。書き込んだデータを頻繁に変更する必要がない場合は、データを OSS ボリュームに保存することをお勧めします。 |
| 課金方法とデータアクセス頻度に基づいて、ストレージクラスを選択できます。詳細については、ストレージソリューション選択のガイダンスと概要を参照してください。 |
Alibaba Cloud ストレージサービスの使用
ボリュームプラグイン
Container Storage Interface (CSI) は、Kubernetes コミュニティで推奨されているストレージプラグインです。ACS は、managed-csiprovisioner を ACS クラスタの CSI プラグインとして提供しており、Alibaba Cloud ストレージリソースに基づくストレージボリュームをサポートしています。
CSI プラグインを使用してボリュームをマウント、アンマウント、作成、および削除する前に、CSI プラグインに他の Alibaba Cloud サービスへのアクセスを承認する必要があります。CSI は、AliyunCCCSIPluginRole Resource Access Management (RAM) ロールを担って、他の Alibaba Cloud サービスのリソースにアクセスします。詳細については、認証の概要を参照してください。
マウント方法
PV を使用して、クラウドディスクや NAS ファイルシステムなどの Alibaba Cloud ストレージリソースを定義します。PVC を PV にバインドし、ポッドのボリュームで PVC を使用してストレージリソースをマウントするように指定します。クラウドストレージリソースと PV の作成方法の違いに基づいて、クラウドストレージリソースのマウントに使用される方法は、次のタイプに分類できます。
静的にプロビジョニングされたボリューム
既存のクラウドストレージリソースに基づいて PV を作成し、PV を PVC にバインドして静的マウントを実装します。この方法では、コンテナが起動される前に PV が準備されていることが保証されるため、既存のストレージリソースが関係するシナリオに適しています。
動的にプロビジョニングされたボリューム
StorageClass を使用して、動的に作成するクラウドストレージリソースを定義し、StorageClass を PVC に関連付けることができます。システムは、PVC と StorageClass の構成に基づいて PV を自動的に作成およびバインドします。このモードはより柔軟で自動化されており、事前に PV を作成する必要はありません。
次の表は、さまざまなタイプのボリュームのマウント方法について説明しています。
Alibaba Cloud ストレージサービス | 静的にプロビジョニングされたボリューム | 動的にプロビジョニングされたボリューム |
ディスク | サポートされていません | |
NAS | ||
凌雲向け CPFS | サポートされていません | |
OSS | サポートされていません |
永続ストレージに加えて、ディスクを一時ストレージボリュームとして使用して、一時的なデータを保持できます。このようなストレージボリュームは、ポッドとともに作成および削除されます。詳細については、一時ボリュームのマウントを参照してください。