k 8 sのhelm学習ノート

2321 ワード

Helmって何?
成功したソフトウェアプラットフォームごとに、Debian、Ubuntuのapt、Redhat、Centosのyumなどの優れたパッケージシステムがあります.HelmはKubernetesのパッケージマネージャです.
Helmのアーキテクチャ
Helmには2つの重要な概念がある:chartとrelease.
chartは、さまざまなKubernetesオブジェクトの構成テンプレート、パラメータ定義、依存関係、ドキュメントの説明など、アプリケーションを作成する情報セットです.chartは、アプリケーションが配置する自己包含論理ユニットです.chartはapt,yumのソフトウェアインストールパッケージとして想像できる.
releaseはchartの実行例であり、実行中のアプリケーションを表します.chartがKubernetesクラスタにインストールされるとreleaseが生成される.chartは同じクラスタに複数回インストールでき,インストールするたびにreleaseである.
Helmはパッケージ管理ツールで、ここでのパッケージはchartを指します.
Helmには、HelmクライアントとTillerサーバの2つのコンポーネントが含まれています.
簡単に言えば、Helmクライアントはchartの管理を担当しています.Tillerサーバはreleaseの管理を担当します.
HelmクライアントとTillerサーバのインストールと導入
Helmクライアントをkubectlコマンドを実行できるノードにインストールするcurl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
Tillerサーバのインストールは簡単です.helm initを実行するだけです.
これで、helm versionコマンドを使用してクライアントとサーバのバージョン情報を表示できます.
Helmの使用
Helmが正常にインストールされた後、helm searchを実行して現在インストール可能なchartを表示します.たとえばmysql:helm searchmysqlを探します
Helm倉庫:helm repo list
Helmはインストール時に2つの倉庫をデフォルトで構成しました:stableとlocal.stableは公式倉庫,localはユーザが開発したchartを格納するローカル倉庫である.
ユーザーはhelm repo addでより多くの倉庫を追加できます.例えば、企業のプライベート倉庫、倉庫の管理とメンテナンス方法は公式サイトのドキュメントを参照してください.https://docs.helm.sh
倉庫の追加:helm repo add incubatorhttp://storage.googleapis.com/kubernetes-charts-incubatorhelm repo list
chartのインストールも簡単で、以下のコマンドを実行してMySQLをインストールできます.helm install stable/mysql
エラーが表示された場合、通常はTillerサーバの権限が不足しているためです.
helm install --name roy-kafka incubator/kafkaError: release roy-kafka failed: namespaces "default"is forbidden: User "system:serviceaccount:kube-system:default"cannot get resource "namespaces"in API group ""in the namespace "default"
$kubectl create serviceaccount--namespace kube-system tiller$kubectl create clusterrolebinding tiller-clusterrole-clusterrole=cluster-admin--serviceaccount=kube-system:tiller$kubectl patch deploy--namespace kube-system tiller-deploy-p'{spec":{template":{spec":{serviceAcceAcceAccee:{spec":{serviceAcceAcceAcceAcceAcceAcceAcceAcceAccel create service create service service serviceaccount--account--namesicecount":"tiller"}}}}}}}'
次にhelm install stable/mysqlを再度実行します
参照リンク:https://www.jianshu.com/p/32f968d0f9e1出典:簡書