This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.第4章 Helm CLI
4.1. Helm 3 のスタートガイド
4.1.1. Helm について
Helm は、アプリケーションやサービスの OpenShift Container Platform クラスターへのデプロイメントを単純化するソフトウェアパッケージマネージャーです。
Helm は charts というパッケージ形式を使用します。Helm チャートは、OpenShift Container Platform リソースを記述するファイルのコレクションです。
クラスター内のチャートの実行中のインスタンスは、リリース と呼ばれます。チャートがクラスターにインストールされているたびに、新規のリリースが作成されます。
チャートのインストール時、またはリリースがアップグレードまたはロールバックされるたびに、増分リビジョンが作成されます。
4.1.1.1. 主な特長
Helm は以下を行う機能を提供します。
- チャートリポジトリーに保存したチャートの大規模なコレクションの検索。
- 既存のチャートの変更。
- OpenShift Container Platform または Kubernetes リソースの使用による独自のチャートの作成。
- アプリケーションのチャートとしてのパッケージ化および共有。
4.1.2. Helm のインストール
以下のセクションでは、CLI を使用して各種の異なるプラットフォームに Helm をインストールする方法を説明します。
また、OpenShift Container Platform Web コンソールから最新のバイナリーへの URL を見つけるには、右上隅の ? アイコンをクリックし、Command Line Tools を選択します。
前提条件
- Go バージョン 1.13 以降がインストールされている。
4.1.2.1. Linux の場合
Helm バイナリーをダウンロードし、これをパスに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-linux-amd64 -o /usr/local/bin/helm
# curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-linux-amd64 -o /usr/local/bin/helm
バイナリーファイルを実行可能にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x /usr/local/bin/helm
# chmod +x /usr/local/bin/helm
インストールされたバージョンを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm version
$ helm version
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
4.1.2.2. Windows 7/8 の場合
-
最新の
.exe
ファイル をダウンロードし、希望のディレクトリーに配置します。 - Start を右クリックし、Control Panel をクリックします。
- System and Security を選択してから System をクリックします。
- 左側のメニューから、Advanced systems settings を選択し、下部にある Environment Variables をクリックします。
- Variable セクションから Path を選択し、Edit をクリックします。
-
New をクリックして、
.exe
ファイルのあるフォルダーへのパスをフィールドに入力するか、または Browse をクリックし、ディレクトリーを選択して OK をクリックします。
4.1.2.3. Windows 10 の場合
-
最新の
.exe
ファイル をダウンロードし、希望のディレクトリーに配置します。 -
Search クリックして、
env
またはenvironment
を入力します。 - Edit environment variables for your account を選択します。
- Variable セクションから Path を選択し、Edit をクリックします。
- New をクリックし、exe ファイルのあるディレクトリーへのパスをフィールドに入力するか、または Browse をクリックし、ディレクトリーを選択して OK をクリックします。
4.1.2.4. MacOS の場合
Helm バイナリーをダウンロードし、これをパスに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-darwin-amd64 -o /usr/local/bin/helm
# curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-darwin-amd64 -o /usr/local/bin/helm
バイナリーファイルを実行可能にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x /usr/local/bin/helm
# chmod +x /usr/local/bin/helm
インストールされたバージョンを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm version
$ helm version
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
4.1.3. OpenShift Container Platform クラスターでの Helm チャートのインストール
前提条件
- 実行中の OpenShift Container Platform クラスターがあり、ログインしている。
- Helm がインストールされている。
手順
新規プロジェクトを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc new-project mysql
$ oc new-project mysql
Helm チャートのリポジトリーをローカルの Helm クライアントに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm repo add stable https://kubernetes-charts.storage.googleapis.com/
$ helm repo add stable https://kubernetes-charts.storage.googleapis.com/
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow "stable" has been added to your repositories
"stable" has been added to your repositories
リポジトリーを更新します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm repo update
$ helm repo update
MySQL チャートのサンプルをインストールします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm install example-mysql stable/mysql
$ helm install example-mysql stable/mysql
チャートが正常にインストールされたことを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm list
$ helm list
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION example-mysql mysql 1 2019-12-05 15:06:51.379134163 -0500 EST deployed mysql-1.5.0 5.7.27
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION example-mysql mysql 1 2019-12-05 15:06:51.379134163 -0500 EST deployed mysql-1.5.0 5.7.27
4.1.4. OpenShift Container Platform でのカスタム Helm チャートの作成
手順
新規プロジェクトを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc new-project nodejs-ex-k
$ oc new-project nodejs-ex-k
OpenShift Container Platform オブジェクトが含まれる Node.js チャートのサンプルをダウンロードします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow git clone https://github.com/redhat-developer/redhat-helm-charts
$ git clone https://github.com/redhat-developer/redhat-helm-charts
サンプルチャートを含むディレクトリーに移動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd redhat-helm-charts/alpha/nodejs-ex-k/
$ cd redhat-helm-charts/alpha/nodejs-ex-k/
Chart.yaml
ファイルを編集し、チャートの説明を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: v2 name: nodejs-ex-k description: A Helm chart for OpenShift icon: https://static.redhat.com/libs/redhat/brand-assets/latest/corp/logo.svg
apiVersion: v2
1 name: nodejs-ex-k
2 description: A Helm chart for OpenShift
3 icon: https://static.redhat.com/libs/redhat/brand-assets/latest/corp/logo.svg
4 チャートが適切にフォーマットされていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm lint
$ helm lint
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, 0 chart(s) failed
[INFO] Chart.yaml: icon is recommended 1 chart(s) linted, 0 chart(s) failed
直前のディレクトリーレベルに移動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd ..
$ cd ..
チャートをインストールします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm install nodejs-chart nodejs-ex-k
$ helm install nodejs-chart nodejs-ex-k
チャートが正常にインストールされたことを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow helm list
$ helm list
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION nodejs-chart nodejs-ex-k 1 2019-12-05 15:06:51.379134163 -0500 EST deployed nodejs-0.1.0 1.16.0
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION nodejs-chart nodejs-ex-k 1 2019-12-05 15:06:51.379134163 -0500 EST deployed nodejs-0.1.0 1.16.0