第 3 章 Helm CLI
3.1. 在 OpenShift Container Platform 中使用 Helm 3 复制链接链接已复制到粘贴板!
3.1.1. 了解 Helm 复制链接链接已复制到粘贴板!
Helm 是一个命令行界面 (CLI) 工具,简化了应用程序和服务部署到 OpenShift Container Platform 集群的过程。Helm 使用名为 charts 的打包格式。Helm chart 是描述 OpenShift Container Platform 资源的一个文件集合。在集群中运行的一个 chart 实例被称为 release。当每次一个 chart 在集群中安装时,一个新的 release 会被创建。
3.1.1.1. 主要特性 复制链接链接已复制到粘贴板!
Helm 提供以下功能:
- 搜索存储在 chart 存储库中的一个大型 chart 集合。
- 修改现有 chart。
- 使用 OpenShift Container Platform 或 Kubernetes 资源创建自己的 chart。
- 将应用程序打包为 chart 并共享。
3.1.2. 安装 Helm 复制链接链接已复制到粘贴板!
下面的部分论述了如何使用 CLI 在不同的平台中安装 Helm。
在 OpenShift Container Platform web 控制台中,点右上角的 ? 图标并选 Command Line Tools。
先决条件
- 已安装了 Go 版本 1.13 或更高版本。
3.1.2.1. 对于 Linux 复制链接链接已复制到粘贴板!
下载 Helm 二进制文件并将其添加到您的路径中:
# curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-linux-amd64 -o /usr/local/bin/helm使二进制文件可执行:
# chmod +x /usr/local/bin/helm检查已安装的版本:
$ helm version version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
3.1.2.2. 对于 Windows 7/8 复制链接链接已复制到粘贴板!
-
下载最新的
.exe文件并放入您自己选择的目录 。 - 右键点击 Start 并点击 Control Panel。
- 选择 系统和安全性 ,然后点击 系统。
- 在左侧的菜单中选择高级系统设置并点击底部的环境变量按钮。
- 在变量部分选择路径并点编辑 。
-
点新建并输入到
.exe文件的路径,或者点击 浏览 并选择目录,然后点 确定。
3.1.2.3. 对于 Windows 10 复制链接链接已复制到粘贴板!
-
下载最新的
.exe文件并放入您自己选择的目录 。 -
点击 搜索 并输入
env或者environment。 - 选择为您的帐户编辑环境变量。
- 在变量部分选择路径并点编辑 。
- 点新建并输入到 exe 文件所在目录的路径,或者点击 浏览 并选择目录,然后点击确定。
3.1.2.4. 对于 macOS: 复制链接链接已复制到粘贴板!
下载 Helm 二进制文件并将其添加到您的路径中:
# curl -L https://mirror.openshift.com/pub/openshift-v4/clients/helm/latest/helm-darwin-amd64 -o /usr/local/bin/helm使二进制文件可执行:
# chmod +x /usr/local/bin/helm检查已安装的版本:
$ helm version version.BuildInfo{Version:"v3.0", GitCommit:"b31719aab7963acf4887a1c1e6d5e53378e34d93", GitTreeState:"clean", GoVersion:"go1.13.4"}
3.1.3. 在 OpenShift Container Platform 集群中安装 Helm chart 复制链接链接已复制到粘贴板!
先决条件
- 您有一个正在运行的 OpenShift Container Platform 集群,并已登录该集群。
- 您已安装 Helm。
流程
创建一个新项目
$ oc new-project mysql将一个 Helm chart 存储库添加到本地 Helm 客户端:
$ helm repo add stable https://kubernetes-charts.storage.googleapis.com/ "stable" has been added to your repositories更新存储库:
$ helm repo update安装示例 MySQL chart:
$ helm install example-mysql stable/mysql验证 chart 是否已成功安装:
$ helm list NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION example-mysql mysql 1 2019-12-05 15:06:51.379134163 -0500 EST deployed mysql-1.5.0 5.7.27
3.1.4. 在 OpenShift Container Platform 上创建自定义 Helm chart 复制链接链接已复制到粘贴板!
流程
创建一个新项目
$ oc new-project nodejs-ex-k下载包含 OpenShift Container Platform 对象的示例 Node.js chart:
$ git clone https://github.com/redhat-developer/redhat-helm-charts进入包含 chart 示例的目录:
$ cd redhat-helm-charts/alpha/nodejs-ex-k/编辑
Chart.yaml文件并添加 chart 描述:apiVersion: v21 name: nodejs-ex-k2 description: A Helm chart for OpenShift3 icon: https://static.redhat.com/libs/redhat/brand-assets/latest/corp/logo.svg4 验证 chart 格式是否正确:
$ helm lint [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, 0 chart(s) failed安装 chart:
$ cd .. $ helm install nodejs-chart nodejs-ex-k验证 chart 是否已成功安装:
$ helm list NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION nodejs-chart nodejs-ex-k 1 2019-12-05 15:06:51.379134163 -0500 EST deployed nodejs-0.1.0 1.16.0