总结:它由两部分组成:客户端和服务器端。 虽然它在集群上运行和管理,但客户端是一个可以在本地运行的命令行工具,通常在持续集成和持续交付服务器上运行。 如有必要,您可以将命令行参数重命名为您想要的名称。
什么是 Helm?它是 Diablo:它不仅仅是头盔设备的名称,它是 Kubernetes 的包管理工具,可以简化 Kubernetes 应用程序的部署和管理。 Helm 和 Kubernetes 可以理解为 yum 和 CentOS 或者 apt-get 和 Ubuntu。
Helm 由两部分组成:客户端 Helm 和服务端 Tiller。
Tiller 在 Kubernetes 集群上运行并管理图表。 另一方面,Client Helm 是一个可以在本地运行的命令行工具(通常在持续集成/持续交付服务器上)。
下图是helm的架构图。
现在是时候尝试 Helm 了。
首先,安装Helm客户端。
下载helm可执行文件的压缩包:
wget -O helm.tar.gz https://storage.googleapis.co... tar [ k4]xzf helm .tar.gz
解压后,将 helm 文件移动到目录 /usr/local/bin/helm。
mv linux-amd64/helm /usr /local /bin/helm
给该文件添加执行权限。
chmod +x /usr/local/bin/helm
第一个 [k4 ] 命名空间 该参数指定要使用的命名空间。 本例中的命名空间为part-0110:
helm init --tiller-namespa。ce 部分-0110 --服务-帐户访问
helm init --tiller-命名空间部分- 0110 --服务-帐户访问
创建 /home/vagrant/.helm
创建 /home/vagrant/.helm/repository
创建/home/vagrant/.helm/repository/cache
创建/home/vagrant/.helm/repository/local
/home/vagrant/创建helm/plugins
创建 /home/vagrant/.helm/starters
创建 /home/vagrant/.helm/cache/archive
创建 /home/vagrant/.helm /repository/repositories.yaml
使用 URL 添加稳定存储库:https://kubernetes-charts.sto...
使用 URL 添加本地存储库:http:// 127.0.0.1:8879/charts
$HELM_HOME 设置为 /home/vagrant/.helm。
Tiller(Helm 服务器 - 侧组件)
注意:默认情况下,Tiller 部署时使用了不安全的“允许未经身份验证的用户”策略。
有关保护安装安全的更多信息,请参阅 https://。 docs.helm.sh/using_he...
Happy Helming!
helm 的 init 命令的输出显示该命令生成了许多交互所需的命令。 。 使用舵服务器。 存储库。
您现在可以使用 helm version 命令行参数显示 helm 客户端和服务器的版本号。
helm 版本 --tiller-connection- ]timeout = 5 --tiller-命名空间部分-0110
vagrant@vagrant:~/.kube$ helm 版本 --tiller-连接[ k4]timeout =5 --tiller-命名空间部分-0110
客户端:&version.Version{SemVer:“v2.9.1”,GitCommit:“20adb27c7c5868466912eebdf6664e7390ebe710”,GitTreeState:“干净”}
服务器:&version.Version{SemVer:“v2.9.1”,GitCommit: “20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}
使用命令 helm repo list 查看 helm 存储库列表。
搜索按名称helm图表:
helm搜索Chaoskube
使用以下命令行安装图表:参数jerry可以更改
helm install --name jerrystead/chaoskube --set namespaces=part-0110 --set rbac.serviceAccountName =access --tiller-。命名空间部分-0110 --debug
作为参考,helm install命令的输出如下所示:
vagrant@vagrant:~/.kube$ helm install --名称 jerrystead/chaoskube [ k4][ k4]set namespaces=part -0110 - -set rbac.serviceAccountName=access --tiller-命名空间部分-0110 --debug
[DEBUG]使用本地端口创建隧道:“36408 "
[DEBUG]服务器:"127.0.0.1:36408"
[DEBUG]原始图表版本:""
[debug] 获取稳定版本/chaoskube 到 /home/vagrant/.helm/cache/archive/chaoskube-0.10.0.tgz
[debug] 图表路径:/home/vagrant /.helm /cache/archive/chaoskube-0.10.0.tgz
姓名:Jerry
修订版:1
发布日期:11 月 15 日周日周四 16 日: 2018年37:19
图表:chaoskube-0.10.0
User-指定值:
Namespace:part-0110
rbac:
serviceAccountName:访问
计算值:
亲和性:{}
注释:null
调试:假
dryRun:真
excludedDaysOfYear:null
excludedTimesOfDay:null
excludedWeekdays:null
图片:quay.io/linki/chaoskube
图片标签:v0.10.0
距离:10m
标签:null
图片标签:v0.10.0
距离:10m
标签:null
p>
minimumAge:0s
名称:chaoskube
命名空间:part-0110
nodeSelector:{}
优先yClassName:“”
rbac:
创建:false
serviceAccountName:访问
副本:1
资源:{}
时区:UTC
容差:[]
挂钩:
清单:
来源:Chaoskube/templates/deployment.yaml
api版本:apps/v1beta1
类型:部署
元数据:
名称:jerry-chaoskube
标签:
应用程序:Chaoskube
传统:“Tiller”
发布:“jerry”
图表:Chaoskube-0.10.0
规格:
副本:1
选择器:
matchLabels:
应用程序:Chaoskube
发布:Jerry
模板:
元数据:
标签:
应用:chaoskube
传承:“Tiller”
发布:“Jerry”
图表:chaoskube[k4 ]0.10.0
规格:
容器:
名称:chaoskube
图片:quay.io/linki/chaoskube:v0.10.0
args:
--interval=10m
--labels=
--注释=
--命名空间=部分-0110
--排除-工作日=
--排除-次-of-天=
--排除-天-of- ] ]year=
--timezone=UTC
--minimum-age=0s
资源:
{}
serviceAccountName:“access”
上次部署:2018 年 11 月 15 日星期四 16:37:19
命名空间:部分[k4 ]0110
状态:已部署
资源:
==> v1beta1/Deployment
当前名称如- TO-DateAvailableAge
jerry-chaoskube 1 1 1 0 2s
==> v1/Pod(相关)
名称就绪状态年龄恢复
jerry-chaoskube-6689695476-kchtn 0/1 ContainerCreating 0 1s
注意:
chaoskube 正在运行ng 并每隔 10 米杀死任何 pod。
您可以按照日志查看 Chaoskube 的运行情况。
POD=$(kubectl -n part-0110 获取 Pod -l="release=jerry-chaoskube" --output=jsonpath="{. items[0].metadata.name}")
kubectl -n part-0110 log -f $POD
以干-运行模式运行我正在做。 没有 Pod 实际上终止。
现在使用 helm list 命令。 您现在可以查看刚刚安装的名为 jerry 的图表。
helm list --tiller-命名空间部分-0110
使用 helm 命令了解有关此图表的更多信息 (与 kubectl 描述 pod 类似,生成的 pod 名称为 jerry-chaoskube-6689695476-kchtn,可以使用 kubectl log 命令查看。 ] ]chaoskube-6689695476- kchtn
更多Jerry原创文章,请访问公众号关注“王子熙”:
评论前必须登录!
注册