K8S集群安装(四)使用helm安装应用
安装
使用脚本安装
#!/bin/bash
#安装helm
#官方提供的脚本安装
#curl https://raw.githubusercontent.com/helm/helm/master/scripts/get > get_helm.sh
#chmod 700 get_helm.sh
#./get_helm.sh
#自行下载安装
wget https://storage.googleapis.com/kubernetes-helm/helm-v2.9.1-linux-amd64.tar.gz
tar -zxvf helm-v2.9.1-linux-amd64.tar.gz
cp linux-amd64/helm /usr/local/bin/
#开启命令补全 ##todo 测试没通过
helm completion bash > .helmrc && echo "source .helmrc" >> .bashrc
echo "helm 版本"
helm version
sleep 2
#Tiller服务器运行在Kubernetes集群中,它会处理Helm客户端的请求,与Kubernetes API Server交互。
#安装tiller
helm init --upgrade --tiller-image registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.9.1 --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
#查看tiller服务
kubectl get --namespace=kube-system svc tiller-deploy
#授权
kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
#查看授权
kubectl get deploy --namespace kube-system tiller-deploy --output yaml|grep serviceAccount
#查看tiller是否安装成功
kubectl -n kube-system get pods|grep tiller
安装应用
搜索应用
helm search mysql
查看应用
使用helm安装服务虽然方便,但需要先查看helm包的安装要求,如果不满足这些安装要求,也是安装不成功的。
helm inspect values stable/mysql
mysql
helm inspect values stable/mysql
查看注释可知mysql chart 支持什么参数。安装之前需要做哪些准备。其中有一部分是关于存储的。由于我们的实验环境不支持动态供给,因此要预
先创建好相应的PV。
创建PV
kubectl apply -f mysql-pv.yml
kubectl get pv
安装
在安装中需要传递参数,有两种方式:
(1)指定自己的values文件。通常的做法是首先通过helm
inspect values mysql >myvalues.yaml生成values文件,然后设置
mysqlRootPassword,最后执行helm install--values=myvalues.yaml
Mysq
(2)通过--set直接传入参数值。
helm install stable/mysql --set mysqlRootPassword=abc111 -n my
设置密码,密码不能设置成纯数字,否则会报错。
mysqlRootPassword=asdf123
root空密码
mysqlAllowEmptyPassword=true
端口:
配置文件:
-n 设置名称
验证
helm list 可以查看chart的最新状态。
helm status xx可以查看chart的详细信息。
在运行中修改应用
kubectl describe service
kubectl --namespace=default edit service my-mysql
删除应用
通过helm ls --all
查看所有的helm应用,使用del --purge XX 删除。
helm del --purge mysql
常用操作
Helm 常用命令
查看版本
#helm version
查看当前安装的charts
#helm list
查询 charts
#helm search redis
安装charts
#helm install --name redis --namespaces prod bitnami/redis
查看charts状态
#helm status redis
删除charts
#helm delete --purge redis
增加repo
#helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
#helm repo add --username admin --password password myharbor https://harbor.qing.cn/chartrepo/charts
更新repo仓库资源
#helm repo update
创建charts
#helm create helm_charts
测试charts语法
#helm lint
打包charts
#cd helm_charts && helm package ./
查看生成的yaml文件
#helm template helm_charts-0.1.1.tgz
更新image
#helm upgrade --set image.tag='v2019-05-09-18-48-40' study-api-en-oral myharbor/study-api-en-oral
回滚relase
#helm hist study-api-en-oral
#helm rollback study-api-en-oral 4
---------------------------------------------------------
恐惧是因为努力的还不够,加油 ~~---------------------------------------------