[容器] Helm的安装和使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[容器] Helm的安装和使用相关的知识,希望对你有一定的参考价值。
参考技术A helm与EKS是无缝结合的,按照AWS教程即可了解了下helm客户端和服务端tiller的区别
tiller是helm的服务端,helm客户端指令给到tiller部署EKS上的服务。AWS为了安全考虑建议tiller部署在本地,helm与本地的tiller交互,但缺点是每次helm指令都需要保证tiller服务在线。作为初学者,我直接将tiller部署到EKS上了。
helm init会将tiller服务部署好,同时测试helm repo update也成功了,但是helm ls遇到了如下错误:
原因是kubernetes对部署的服务有api权限控制,说白了就是tiller服务没有权限访问kubernetes的资源,需要赋予tiller一个role且绑定必要的权限,来做一下吧。
创建一个yaml描述文件,能看到该文件创建了一个ServiceAccount,同时做了一个ClusterRoleBinding。注意其中name、namespace取值要填写正确。
应用该yaml文件
表明使用上面的含有权限的账户,然后再运行不会报错了
EKS让参考helm官网的安装服务示例,helm上面的是mysql,但是验证mysql还需要client程序,blabla... 可以使用更简单的nginx来玩一下。
最后使用kubectl可以看到部署好的nignx服务,不过dns生效需要5分钟左右的时间,要耐心等一下。
使用Helm 在容器服务k8s集群一键部署wordpress
摘要: Helm 是啥? 微服务和容器化给复杂应用部署与管理带来了极大的挑战。Helm是目前Kubernetes服务编排领域的唯一开源子项目,做为Kubernetes应用的一个包管理工具,可理解为Kubernetes的apt-get / yum,由Deis 公司发起,该公司已经被微软收购。
Helm 是啥?
微服务和容器化给复杂应用部署与管理带来了极大的挑战。Helm是目前Kubernetes服务编排领域的唯一开源子项目,做为Kubernetes应用的一个包管理工具,可理解为Kubernetes的apt-get / yum,由Deis 公司发起,该公司已经被微软收购。Helm通过软件打包的形式,支持发布的版本管理和控制,很大程度上简化了Kubernetes应用部署和管理的复杂性。
Helm 架构
Helm 用途
做为Kubernetes的一个包管理工具,Helm具有如下功能:
- 创建新的chart
- chart打包成tgz格式
- 上传chart到chart仓库或从仓库中下载chart
- 在Kubernetes集群中安装或卸载chart
- 管理用Helm安装的chart的发布周期
Helm有三个重要概念:
- chart:包含了创建Kubernetes的一个应用实例的必要信息
- config:包含了应用发布配置信息
- release:是一个chart及其配置的一个运行实例
如何在阿里云容器服务使用Helm
阿里云容器服务的kubernets集群默认集成了helm并初始化提供了一些常用charts,下面我们就以安装wordpress示例来演示使用流程。
以上为容器服务默认提供的一些安装charts,下面我们来安装wordpress:
可以根据用户自身的需要,修改wordpress安装charts的一些默认配置,当然使用默认配置安装也是没问题的,输入本次安装release的名字,点击部署后就完成了一键部署。
我们使用控制台查看一下部署资源的情况:
可以看到wordpress的依赖资源都已经安装完毕,访问图中圈出来的地址就可以打开wordpress界面:
可以看到wordpress已经可以正常访问。如果使用传统方式,你可能需要创建一堆deployment + service + pvc等集合体,现在只需要一键部署,等待片刻,一个wordpress应用就可以展现在你面前。
阅读更多干货好文,请关注扫描以下二维码:
以上是关于[容器] Helm的安装和使用的主要内容,如果未能解决你的问题,请参考以下文章
部署 Helm - 每天5分钟玩转 Docker 容器技术(162)
helm 安装EFK(Elasticsearch+Filebeat+Kibana)收集容器日志
Helm 架构 - 每天5分钟玩转 Docker 容器技术(161)