Helm入門 まずは使ってみよう

こんちには、サイオステクノロジーの角川です。
Kubernetes環境でアプリケーションをデプロイする際はYAML形式で記述されたマニフェストファイルを作成し、
kubectlコマンドなどを用いて適用をおこなうのが一番簡易な方法です。

しかし、システムやアプリケーションが大規模になったり、複数のアプリケーションを運用していくにあたり同じような役割で設定値だけが異なるマニフェストファイルが増え管理が煩雑になっていきます。
そこでHelmというパッケージマネージャーを利用することでマニフェストの管理やデプロイ作業などを簡素化することが出来ます。

 

Helmを使ってWordpressをデプロイしてみよう

Helmの使い方を說明するにあたりHelmを使ってKubernetes上にWordPressをデプロイしてみます。

Helmではアプリケーションの動作に必要な複数のマニフェストをChartという単位にまとめます。

今回はこのWordPressのChartをインストールする手順を例にHelmについてご紹介します。

Helmを使わずにWordPress環境を構築する場合、以下の設定が記載されたマニフェストファイルが必要になります。

  • WordPressコンテナやデータベースコンテナの起動設定
  • WordPressコンテナからデータベースコンテナへの接続設定
  • データベースストレージの設定
  • データベースのパスワードの設定

などがあります。
その他にも多くの必要な設定があり、その分マニフェストファイルが必要となります。
WordPressのChartはこれらがひとまとまりになっており、Chartをインストールすることで簡易な手順でWordpressを利用することが出来ます。

 

Helmクライアントのインストール

まずはHelmのクライアントをインストールします。
公式ドキュメントをご覧いただき、環境に合わせてインストールをおこなってください。

WordPressのHelm Chartをインストール

WordPressのChartはBitnami社が提供しているものを利用します。

Chartのインストールの前に事前準備としてHelmリポジトリを追加します。

Bitnami社提供するHelmリポジトリを追加

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

追加したリポジトリの確認

helm repo list

以下のような表示になっていればリポジトリが追加されています。

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

Helmリポジトリを最新版へ更新

helm repo update

Chartのインストール

以下を実行してWordPressのChartをインストールします。

helm install wordpress-sample bitnami/wordpress

ここではwordpress-sampleという任意の名前(Release名)をつけてインストールをおこなっています。

Chartインストール後の確認

以下を実行してインストールが完了しているか確認します。

helm list

表示結果例

$ helm list
NAME            	NAMESPACE	REVISION	UPDATED                             	STATUS  	CHART            	APP VERSION
wordpress-sample	default  	1       	2022-08-15 00:00:00.000000 +0900 JST	deployed	wordpress-15.0.12	6.0.1
$

STATUSがdeployedとなっていればインストールが完了しています。

kubectl get podを実行してPodが起動していることも確認してください。

ブラウザから確認

kubectl get serviceを実行してEXTERNAL-IPに表示されているアドレスをブラウザで開き、WordPressのページが表示出来ているか確認してください。

ブラウザでアクセスすると以下のようにWordpressのページが表示されるようになっているはずです。

 

以下の手順によってWordpressの管理画面へのアクセスも可能です。

EXTERNAL-IPに表示されているアドレスに/adminをつけて以下のようなURLへアクセスすることで管理画面のページへアクセス出来ます。

http://127.0.0.1/admin

127.0.0.1の部分はご自身の環境に合わせて変更してください。

 

ユーザ名はデフォルトでuser、パスワードは以下のコマンドで取得することが可能です。

kubectl get secret --namespace default wordpress-sample -o jsonpath="{.data.wordpress-password}" | base64 -d

 

ログイン後、以下のようなWordpressのダッシュボードが表示されるはずです。

 

最後に

今回はHelmとはどういったものかをご紹介するため、まずは動かしてみるというところを重点的に説明をおこないました。

次回以降はHelmのコマンドの使い方などより便利に使える方法などをご紹介出来ればと思います。

ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

1人がこの投稿は役に立ったと言っています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です