1. 编写yaml文件 - depolyment - Service - Ingress
缺陷:
- 使用helm可以把这些yaml作为一个整体管理 - 实现yaml高效复用 - 使用heml应用级别的
helm是一个kubernetes的包管理工具,就像Linux下的包管理器,如yum/apt等,可以很方便的将之前打包好的yaml文件部署到kubernetes上。
之前版本
v3版本
helm repo add 仓库名称 地址 # 微软地址: http://mirror.azure.cn/kubernetes/charts # 阿里云地址: https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts helm repo update # 查看 helm repo list # 删除 helm repo remove 名称
shellhelm search repo 名称
helm install 起的名称 包的名称 # 查看安装之后的状态 helm list helm status 安装之后名称
如果遇到没有开发的端口,进行以下操作
修改service的yaml文件,type改为NodePort
helm create chart 名称
kubectl create deployment web1 --image=nginx --dry-run -o yaml > deployment.yaml
kubectl expose deployment web1 --port=80 --target-port=80 --type=NodePort --dry-run -o yaml > service.yaml
helm install web1 mychart
查看基本内容
做升级和更新操作
helm upgrade web1 mychart
通过传递参数,动态渲染模板,yaml内容动态传入参数生成,使用values.yml文件(定义yaml文件全局变量)
yaml文件有几个地方不同的
- image
- tag
- label
- port
- replicas
通过表达式形式使用全局变量
{{.Values.变量名称}} 例如:{{.Release.Name}} 获取当前版本号的名称
原来的
修改所用到的yaml
deployment.yaml
service.yaml
本文作者:Eric
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!