Kubernetes の helm とは何ですか?使い方は?

Kubernetes の helm とは何ですか?使い方は?

Kubernetes (K8S) エコシステムにおいて、Helm は強力なプログラムの展開と管理のためのパッケージ管理ツールです。アプリケーションの展開、管理、アップグレードのプロセスを簡素化できます。この記事では、Kubernetes クラスターでの Helm の基本的な概念、機能、および使用方法について説明します。

1. Helm とは何ですか?

Helm[1]は、LinuxシステムのAPTやYUMに似たKubernetes用のパッケージマネージャーです。これにより、チャートと呼ばれることが多い Kubernetes アプリケーションの定義済みパッケージを定義、インストール、アップグレードできます。 Helm は、Kubernetes アプリケーションのデプロイと管理のプロセスを簡素化し、繰り返し性と保守性を高めることを目的としています。

1.Helmアーキテクチャ

Helm アーキテクチャは、Helm クライアント、Tiller サーバー、および Chart リポジトリで構成されます。 Tiller は Kubernetes にデプロイされ、Helm クライアントは Tiller と通信して Charts のデプロイとアップグレードを管理します。 Chart リポジトリから Chart インストール パッケージを取得し、Kubernetes クラスターにインストールします。

2. Helm のコアコンセプト

Helm の使い方を詳しく説明する前に、Helm のいくつかのコア概念を理解する必要があります。

(1)チャート

Chart は Helm のパッケージ形式であり、Kubernetes アプリケーションといくつかの構成可能なパラメータを記述するリソース テンプレート ファイルのセットが含まれています。チャートは、Kubernetes クラスターにすばやくデプロイできる再利用可能なアプリケーション テンプレートと考えることができます。

(2)リリース

リリースは、Kubernetes クラスターで実行されるチャートの特定のインスタンスです。各リリースには一意の名前があり、Helm 経由でデプロイ、アップグレード、または削除できます。

(3)リポジトリ

リポジトリは、ソフトウェア パッケージ管理システムのソフトウェア ソースと同様に、パッケージ化されたチャートのセットの保存場所です。 Helm を使用すると、1 つ以上のリポジトリからチャートを検索、ダウンロード、インストールできます。

2. Helm の使い方

それでは、Helm を使用して Kubernetes アプリケーションを管理する方法を見てみましょう。

1. Helmをインストールする

Helm には、バイナリ方式、スクリプトインストール、パッケージマネージャーインストールなど、さまざまなインストール方法が用意されています。今回は、スクリプトインストール方法を使用し、次のコマンドを実行しました。その他のインストール方法については、公式ウェブサイトのドキュメント[2]を参照してください。

 curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh

上記のコードを実行した後、 helm version を実行すると、出力は以下のようになり、Helm が正常にインストールされたことが示されます。

2. チャートウェアハウスを追加する

Helm は Chart リポジトリを使用して利用可能なチャートを検索します。次のコマンドを使用して Chart リポジトリを追加できます。

 helm repo add <repository-name> <repository-url>

Artifact Hub は、Helm チャートを検索、インストール、共有するためのオンライン リポジトリです。 Artifact Hub を Helm のリポジトリとして追加するには、次のように helm repo add コマンドを使用します。

 helm repo add bitnami https://charts.bitnami.com/bitnami helm repo update

bitnami: 倉庫に付けられた名前です

次に、次のコマンドを使用して、ウェアハウスのステータスを再度確認します。

 controlplane $ helm repo list NAME URL bitnami https://charts.bitnami.com/bitnami controlplane $

3. チャートを検索してインストールする

リポジトリを追加したら、 helm search コマンドを使用して利用可能なチャートを検索できます。

 helm search repo <keyword>

helm コマンドの具体的な使い方がわからない場合は、helm -h でヘルプ ドキュメントを表示できます。

たとえば、MySQL のチャートを検索する場合は、次のコマンドを実行します。

 helm search repo mysql

上記のコマンドを実行すると、ウェアハウス内でキー mysql を持つ Chart が検索されます。次に、以下のように結果をターミナルに返します。

必要なチャートが見つかったら、 helm install コマンドを使用して Kubernetes クラスターにデプロイできます。

 helm install <release-name> <repository-name>/<chart-name>

たとえば、MySQL サービスをインストールするには、次のコマンドを実行します。

 helm install my-mysql bitnami/mysql

上記のコマンドを実行すると、デプロイメントが成功すると次の情報が入力されます。

プロンプトに従って次のコマンドを実行すると、MySQL ルート パスワードを取得できます。

 kubectl get secret --namespace default my-mysql -o jsonpath="{.data.mysql-root-password}" | base64 -d

4. リリース管理

チャートがリリースとしてデプロイされると、Helm を使用して管理できるようになります。たとえば、「helm list」コマンドを使用して、デプロイされたすべてのリリースを一覧表示できます。

 controlplane $ helm list NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION my-mysql default 1 2024-04-08 12:00:44.864307773 +0000 UTC deployed mysql-10.1.1 8.0.36

helm upgrade コマンドと helm uninstall コマンドを使用して、リリースをアップグレードおよび削除することもできます。

 controlplane $ helm uninstall my-mysql release "my-mysql" uninstalled controlplane $

最後まで書きなさい

Kubernetes では、Helm はアプリケーションのデプロイと管理のプロセスを簡素化する非常に便利なツールです。定義済みのチャートを使用することで、アプリケーションを迅速かつ繰り返し展開し、簡単にアップグレードおよび管理できます。この記事が、Helm の基本的な概念を理解し、Kubernetes クラスターで Helm を使用してワークフローを効率化するのに役立ったことを願っています。

参照:

  • [1]ヘルム: https://helm.sh/zh/
  • [2] 公式サイトのドキュメント: https://helm.sh/zh/docs/intro/install/

<<:  クラウド意思決定の十戒のうち、どれに従いましたか?

>>:  2024 年にクラウド ネイティブ アーキテクチャに必要なテクノロジー スタックは何ですか?

推薦する

訪問者維持の核心:訪問者の価値の認識と実現

ウェブサイトにとって、持続的な発展の鍵となるのは訪問者であり、訪問者の蓄積は訪問者の体験に依存します...

ウェブマスターと販売者がショッピングトレンドを分析できるように、Taobao Indexが正式に開始されました

Admin5によると、タオバオの消費者データ調査プラットフォームであるタオバオインデックス(http...

Alibaba Cloud、データベースパフォーマンスの最適化と問題診断の問題を解決するCloudDBAを発表

トラブルシューティングとパフォーマンス チューニングは、データベース分野では常に専門的な問題であり、...

iwebfusion: ハイエンド専用サーバーのセール価格をご覧ください。月額 189 ドル、4*e7-4870/512g メモリ/1Tssd...

最近、アメリカの老舗ホスティング会社 iwebfusion (2001 年に設立された H4Y Te...

リバースホスト - 年間 12 ドル / 512 MB RAM / 1 GB バースト / 60 GB ハードドライブ / 1 TB トラフィック

ホストキャットに何度も登場しているリバースホスト。大容量ハードドライブが特長ですが、通常のディスクは...

gigenetcloud-25 USD/月 50.33TB 月間トラフィック/512MB メモリ/20GB ハードディスク

512M メモリ、20G ハードディスク、標準 333G 月間トラフィック、G ポ​​ート、シカゴ、...

starrydns: 香港 VPS/KVM/$10/512 メモリ/20g ハードドライブ/500g トラフィック

香港のVPSのおすすめ:香港に登録されている会社、starrydns(Starlight Netwo...

ソーシャル検索についての簡単な説明: クラウド検索 (パート 1)

「ソーシャル化」はインターネット上で一連の騒動を引き起こしています。どの業界であっても、「ソーシャル...

SAPの「インテリジェントエンタープライズ」について

[51CTO.com からのオリジナル記事] インターネットの台頭により、今日の消費者は大きな可能性...

クラウド ネイティブ テクノロジーとは何でしょうか?

クラウド ネイティブ テクノロジーは、現代のエンタープライズ アーキテクチャに欠かせない要素になりつ...

Kubernetes アプリケーションの管理を簡素化: Knative を使用してサーバーレス アプリケーションを簡単に構築できます。​

サーバーレス アーキテクチャは開発者の間でますます人気が高まっており、サーバーの管理に余分な労力をか...

#NewMerchant# hostemporium-43USD/年/KVM/512M メモリ/10gSSD/4 コンピュータ ルーム

hostemporium.com は新しく設立されたホスティング会社のようです。公式の紹介はほとんど...

Baiduの絶え間ない変化に直面して、SEOにはより冷静な姿勢が求められる

昨日、たまたまネットで記事を見ました。どのページだったかは覚えていませんが、長年 SEO に携わって...

百度検索がICP申請情報の表示を開始、一部の病院関連の検索も表示

BaiduオンラインウェブサイトICP申請のヒント新浪科技は11月14日朝、百度からの公式ニュースに...