Container Service for Kubernetes (ACK) を使用すると、Kubernetes クラスターで Alibaba Cloud のストレージサービスを利用できます。ACK はネイティブの Kubernetes ストレージと互換性があり、Container Storage Interface (CSI) プラグインを介してストレージサービスに接続します。ディスクボリューム、NAS ボリューム、OSS ボリューム、およびローカルボリュームを Pod にマウントできます。本トピックでは、登録済みクラスターにおける Alibaba Cloud CSI プラグインの使用方法について説明します。
前提条件
-
ACK One 登録済みクラスターを作成し、外部 Kubernetes クラスターをそのクラスターに接続済みです。詳細については、「ACK One 登録済みクラスターの作成」をご参照ください。
-
登録済みクラスターは Kubernetes 1.24 以降のバージョンで実行されています。
-
外部クラスターがデータセンターにデプロイされている場合、データセンターと Alibaba Cloud を接続するための Express Connect 回線を確立する必要があります。
考慮事項
-
外部クラスターが Alibaba Cloud ECS インスタンス上にデプロイされている場合、インスタンスに必要なノードラベルを追加する必要があります。詳細については、「外部クラスターを ACK One 登録済みクラスターに接続した後の ECS ノードの初期化」をご参照ください。
-
登録済みクラスターのノードプール機能を使用して、データセンター内の外部クラスターを Alibaba Cloud ECS ノードでスケールアウトする場合、システムはデフォルトでノードラベル
alibabacloud.com/external=trueを追加します。
ステップ 1:RAM 権限の設定
onectl を使用する方法
オンプレミスマシンに onectl をインストールします。詳細については、「onectl を使用した登録済みクラスターの管理」をご参照ください。
-
onectl は RAM ユーザーの AccessKey ペアを使用して Alibaba Cloud リソースにアクセスします。以下のコマンドを実行して、RAM ユーザーに CSI プラグインの管理権限を付与します。
onectl ram-user grant --addon csi-plugin期待される出力:
Ram policy ack-one-registered-cluster-policy-csi-plugin granted to ram user ack-one-user-ce313528c3 successfully.
コンソールを使用する方法
CSI プラグインをインストールする前に、クラウドサービスへのアクセスに使用する AccessKey ペアを作成する必要があります。このプロセスには、RAM ユーザーの作成、必要な権限の付与、およびそのユーザーに対する AccessKey ペアの作成が含まれます。
-
RAM ユーザーの作成を行います。
-
カスタムポリシーの作成を行います。以下のサンプルポリシーでは、ディスク、スナップショット、スナップショットポリシー、リソースラベル、インスタンス、ファイルシステム、OSS バケットの管理権限が付与されます。
RAM ユーザーの AccessKey の作成を行います。
警告AccessKey の呼び出しを信頼されたネットワーク環境に制限するネットワークポリシーを設定することを推奨します。これにより、AccessKey のセキュリティが向上します。詳細については、「AccessKey のネットワークアクセス制限ポリシー」をご参照ください。
-
AccessKey ペアを使用して、登録済みクラスター内に `alibaba-addon-secret` という名前のシークレットを作成します。
CSI プラグインをインストールする際、プラグインはこの AccessKey ペアを自動的に使用して対応するクラウドサービスにアクセスします。
kubectl -n kube-system create secret generic alibaba-addon-secret --from-literal='access-key-id=<your access key id>' --from-literal='access-key-secret=<your access key secret>'説明<your access key id>および<your access key secret>を、直前の手順で取得した AccessKey ペアに置き換えてください。
ステップ 2:CSI プラグインのインストール
onectl を使用する方法
以下のコマンドを実行して、CSI プラグインのコンポーネントをインストールします。
onectl addon install csi-plugin
onectl addon install csi-provisioner
期待される出力:
Addon csi-plugin, version **** installed.
Addon csi-provisioner, version **** installed.
コンソールを使用する方法
ACK コンソールにログインします。左側のナビゲーションウィンドウで、クラスターリスト をクリックします。
「クラスターリスト」ページで、クラスターの名前をクリックします。左側のナビゲーションウィンドウで、「アドオン管理」をクリックします。
-
[ボリューム] タブをクリックします。[csi-plugin] カードと [csi-provisioner] カードを見つけ、各カードの [インストール] をクリックします。
-
メッセージダイアログボックスで、バージョンを確認し、OKをクリックします。
ステップ 3:ボリュームの使用
以下の表では、登録済みクラスターでさまざまなタイプのボリュームを使用する方法について説明したトピックへのリンクを示します。
|
タイプ |
参考情報 |
|
NAS |
|
|
OSS |
|
|
ディスクボリューム |