Helm 是 Kubernetes 中一个著名的包管理工具,其用处类似于 ubuntu 中的 apt-get, windows 中的 Chocolatey, Mac OS 中的 Brew。 本文简单说明如何在 Windows 10 环境中使用 Helm 在 Minikube 中安装、发布应用。
安装 Helm
在使用 Helm 之前,请先安装好 Kubernetes 集群或是 Minikube。 关于在 Windows 10 中安装 Minikube, 可参考: 在 Win10 系统中安装 minikube
如果你在 Windows 环境中安装了 Docker, 先执行以下命令,与 Minikube 共享 Docker 环境
1 | minikube docker-env | Invoke-Expression |
Helm 的安装有很多方式,本文选择的是手动下载编译好的可执行文件,自己安装。 在 官网 下载, 选择 Windows amd64 版本。在这以后简单解压到任意目录,再在 Path 中添加该路径即可。 在本文中我将其解压到 C:\Devel\Helm 目录。
然后打开一个命令行窗口,执行:
1 | helm version |
如果看到类似以下的输出,则表明安装成功:
1 | version.BuildInfo{Version:"v3.1.2", GitCommit:"d878d4d45863e42fd5cff6743294a11d28a9abce", GitTreeState:"clean", GoVersion:"go1.13.8"} |
添加 Chart 仓库
因为在国内使用,选择使用阿里的 Chart 仓库,执行:
1 | helm repo add aliyun-stable https://apphub.aliyuncs.com/stable |
其中 “aliyun-stable” 是对于该仓库给定的一个本地名称,因为你可以加入多个仓库。
系统显示:
1 | "aliyun-stable" has been added to your repositories |
则说明已经添加成功。
添加完成后,就可以试试在仓库中搜索应用了。 要搜索 redis, 执行:
1 | helm search repo aliyun-stable/redis |
系统会显示在 aliyun-stable 仓库中带 redis 名称的应用:
1 | NAME CHART VERSION APP VERSION DESCRIPTION |
安装应用
我们以安装 redis-ha 为例,执行:
1 | helm install aliyun-stable/redis-ha --generate-name |
在安装是,你可以要安装的应用命名,也可以使用 –generate-name 参数让系统自动生成名称。 执行后,系统显示:
1 | NAME: redis-ha-1584698965 |
执行 ls 命令,可以列出已经按照的应用:
1 | helm ls |
系统显示:
1 | NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION |
最后,我们查以下 minikube, 看看是否真的安装了应用,执行:
1 | kubectl get pods |
系统显示:
1 | NAME READY STATUS RESTARTS AGE |
可以看到,相关的 POD 已经被建立并运行。 再执行:
1 | kubectl get svc |
可以看到系统显示:
1 | NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE |
可以看到,相应的服务也已经建立好了。