Helm cm-pushプラグインを使用すると、チャートをプッシュおよびプルできます。 Helmはチャートと呼ばれるパッケージ形式を使用します。 チャートは、関連するKubernetesリソースのセットを記述するファイルのコレクションです。 Helm cm-pushプラグインを使用してチャートをリモートチャートリポジトリにプッシュする前に、helm plugin install
コマンドを実行して、オンプレミスデバイスにHelm cm-pushプラグインをインストールする必要があります。 次に、helm push
コマンドを実行してチャートをプッシュできます。
Helm cm-pushプラグインを使用してHTTP経由でチャートをプッシュおよびプルする場合は、チケットを起票し、チャートリポジトリのローカルIPアドレスをホワイトリストに追加します。
手順1: Enterprise Editionインスタンスの設定
名前空間を作成します。
Container Registryコンソールにログインします。
左側のナビゲーションウィンドウで、[インスタンス] をクリックします。
[インスタンス] ページで、管理するEnterprise Editionインスタンスをクリックします。
Enterprise Editionインスタンスの管理ページの左側のナビゲーションウィンドウで、 .
On the名前空間ページをクリックします。名前空間の作成.
では、名前空間の作成ダイアログボックスで、名前空間,リポジトリの自動作成、およびデフォルトのリポジトリタイプをクリックし、確認.
チャートリポジトリを作成します。
説明名前空間に対して [リポジトリの自動作成] が有効になっている場合、Container Registryコンソールで事前にチャートリポジトリを作成する必要なく、Helmを使用してチャートをチャートリポジトリにプッシュできます。
Enterprise Editionインスタンスのチャートリポジトリの形式は、
<インスタンス名>-chart.<リージョンI D>.cr.aliyuncs.com/<名前空間>/<チャートリポジトリ名>
です。 チャートリポジトリのバージョンは<chart name>-<version number>
です。 仮想プライベートクラウド (VPC) 経由でチャートリポジトリにアクセスする場合、チャートリポジトリの形式は<インスタンス名>-chart-vpc.<リージョンI D>.cr.aliyuncs.com/<名前空間>/<チャートリポジトリ名>
である必要があります。On the概要Enterprise Editionインスタンスのページで、チャートで、コンポーネント設定セクションにアクセスします。
Enterprise Editionインスタンスの管理ページの左側のナビゲーションウィンドウで、 .
On theリポジトリページをクリックします。リポジトリの作成.
では、Helmチャートの作成ダイアログボックスで、名前空間,リポジトリ名、およびタイプをクリックし、確認.
アクセス資格情報を設定します。
Helmグラフへのアクセスに使用するパスワードまたは一時的なトークンを設定します。 この例では、パスワードがアクセス資格情報として設定されています。
Enterprise Editionインスタンスの管理ページの左側のナビゲーションウィンドウで、 .
On theアクセス資格ページをクリックします。パスワードの設定.
[パスワードの設定] ダイアログボックスで、[パスワード] および [パスワードの確認] パラメーターを設定します。 [確認] をクリックします。
アクセス制御ポリシーを設定します。
インターネットアクセスまたはVPCアクセスを有効にして、Helmチャートをリポジトリにプッシュできるようにします。 この例では、インターネットアクセスが有効になっています。 VPCアクセスを有効にする方法については、「VPC ACLの設定」をご参照ください。
Enterprise Editionインスタンスの管理ページの左側のナビゲーションウィンドウで、 [アクセス制御] を選択します。
On theアクセス制御ページをクリックし、インターネットタブをクリックします。
On theインターネットタブ、オンにするインターネット経由のアクセスを有効にするをクリックし、インターネットホワイトリストの追加.
では、インターネットホワイトリストの追加ダイアログボックスで、Enterprise Editionインスタンスとノートへのアクセスを許可するCIDRブロックを指定し、確認.
(オプション) Pull from Anonymous Usersをオンにします。
[匿名ユーザーからプル] をオンにすると、ログオンせずに匿名でパブリックチャートリポジトリにアクセスできます。
Container Registryコンソールにログインします。
上部のナビゲーションバーで、リージョンを選択します。
左側のナビゲーションウィンドウで、[インスタンス] をクリックします。
[インスタンス] ページで、管理するEnterprise Editionインスタンスをクリックします。
では、インスタンス設定の右側にあるセクション概要Enterprise Editionインスタンスのページで、匿名ユーザーからプル.
では、ヒントダイアログボックスで、OK.
手順2: Helmクライアントのインストールと設定
ダウンロードHelm.
説明Helm 3.7以降のクライアントを使用して、チャートをプッシュおよびプルできます。
helm version -c
コマンドを実行して、helmクライアントのバージョンを表示できます。 この例では、Helm 3.10.0をダウンロードしてチャートをプッシュおよびプルします。次のコマンドを実行してHelmインストールパッケージを解凍し、Helmインストールパッケージを指定されたディレクトリに配置します。
# Decompress the installation package. tar -zxvf helm-v3.10.0-rc.1-linux-amd64.tar.gz # Move the extracted files to the specified directory. mv linux-amd64/helm /usr/local/bin/helm
次のコマンドを実行して、Helm cm-pushプラグインをインストールします。
説明Helm cm-pushプラグインをインストールする前に、
yum install git
コマンドを実行してGitをインストールします。helm plugin install https://github.com/AliyunContainerService/helm-acr
ステップ3: プッシュとプルチャート
次のコマンドを実行して、オンプレミスのリポジトリの名前を指定し、リポジトリ名をContainer Registryの名前空間内のチャートリポジトリにマップします。
helm repo add <Name of the on-premises repository> https://test9-7-chart****.cn-hangzhou.cr.aliyuncs.com/ns1/repo1 --username <username> --password <password>
次のコマンドを実行してチャートをプッシュします。
# Create an on-premises chart. helm create <Chart name> # Push the chart directory. helm cm-push <Chart name> <Name of the on-premises repository>
Container Registry Enterprise Editionインスタンスの左側のナビゲーションウィンドウで、[Helm Chart]> [リポジトリ] を選択します。 [リポジトリ] ページで、表示するチャートリポジトリの名前をクリックし、[バージョン] をクリックします。 [バージョン] ページで、プッシュした新しいグラフを表示できます。
次のコマンドを実行して、チャートをインストールしてプルします。
# Update the on-premises chart index from the chart repository in Container Registry. helm repo update # Pull a chart. helm fetch <Name of the on-premises repository>/<Chart name> --version <Chart version> # Directly install a chart. helm install -f values.yaml <Name of the on-premises repository>/<Chart name> --version <Chart version>