仕事でHelmfileを触るのですが、その前にHelmとの関係がよくわからなかったので調べてみました。
Helmとは
Helmとはkubernetesのpackage managerのことを言います。Ubuntuでいうapt,CentOSでいうyumですね。HelmはChartsと呼ばれる、関連するKubernetesリソース群単位を管理します。
QuickStartをやってみる
公式DocのQuickStartに従って動作を確認しました。
以下のコマンドを実行することにより、Helmにリポジトリを登録します。リポジトリを登録することにより、そのリポジトリに登録してあるChartsを参照できるようになります。
helm repo add bitnami https://charts.bitnami.com/bitnami
以下のコマンドで登録したリポジトリのChartsを参照できます
helm search repo bitnami
以下のコマンドにより、最新のChartsリストが参照できるようになります。後述するhelm installを行う前にはやっておいたほうがよさそうです。
helm repo update
以下のコマンドでmysql Chartsをreleaseします。以下のコマンドを実行するたびに新たにreleaseが行われます。これらreleaseに関しては独立に管理がされます。
helm install bitnami/mysql --generate-name
以下のコマンドを行うことにより、releaseのuninstallが行われ関連リソースが削除されます。
helm uninstall mysql-xxxxx
Helmを使うことによるメリット
Helmを利用することにより、誰かが作ったChartsを再利用できます。任せられるところは他に任して、自分はより本質的な部分に集中できます。
感想
Helm Chartsが登録してあるArtifactHUBを見てみましたが、かなりの数が登録してあり、Kubernetesのエコシステムの巨大さを感じました。次は本来知りたかったHelmfileが何をするものなのかを調べていきたいと思います。