概念:基础架构与常用命令
三个重要概念:
1.chart 创建Kukernetes应用程序所必需的一组信息。
2.config 包含了可以合并到打包的chart中的配置信息,用于创建一个可发布的对象。
3.release 是一个与特走配置相结合的chart的运行实例。
常用命令
# 查看镜像仓库
helm repo list
# 基于仓库/远程hub 来搜索关键词 chart
helm search repo/hub [chart名]
# 拉取远程仓库中的 chart 到本地
helm pull
# 在本地创建新的 chart
helm create
# 管理 chart 依赖
helm dependency
# 安装 chart
helm install
# 列出所有 release
helm list
# 检査 chart 配置是否有误
helm lint
# 打包本地 chart
helm package
# 回滚 release 到历史版本
helm rollback
# 卸载 release
helm uninstall
# 升级 release
helm upgrade
Chart实战1:Redis主从模式搭建
1、修改 helm 源
#查看默认仓库
helm repo list
# 添加仓库
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add aliyun https://apphub.aliyuncs.com/stable
helm repo add azure http://mirror.azure.cn/kubernetes/charts
2、搜索 redis chart
# 搜索redis
helm search repo redis
# 显示结果 描述包含‘DEPRECATED’的,表示不可以,已经过期
NAME CHART VERSION APP VERSION DESCRIPTION
azure/prometheus-redis-exporter 3.5.1 1.3.4 DEPRECATED Prometheus exporter for Redis metrics
主要:描述包含DEPRECATED
的,表示不可以用,已经过期
# 查看相关内容的信息
helm show readme bitnami/redis
# 拉取到本地,一般为xxx.tgz文件
helm pull bitnami/redis
# 解压.tgz文件
tar -xzf xxx.tgz
3、修改配置安装
修改value.yaml文件。
# 修改storageClass为managed-nfs-storage
# 设置 redis 密码 password
# 修改集群架构 architecture,默认是主从(replication,3个节点),可以修改为 standalone 单机模式
# 修改实例存储大小 persistence,size 为需要的大小
# 修改 service.node Ports.redis 向外暴露端口,范围<30000-32767>
# 创建一个新的命名空间
kubectl create namespace [namespace名]
# 将更改配置后的,下载的redis 进行安装
helm install redis[实例名] ./redis/[下载,更改的目录地址] -n [namespace名]
安装完成后,按返回的提示操作:
集群搭建完。
4、查看安装情况
# 查看 helm 安装列表
helm list
# 查看 redis 命名空间下所有对象信息
kubectl get all -n redis
Chart实战2:应用升级,回滚,卸载
升级
和安装配置方式一样,(略…)
回滚
# 查看可以回滚的版本
kubectl history redis[实例名] -n [namespace名]
# 回滚位置
kubectl rollback redis[实例名] [版本序号] -n [namespace名]
#Rollback was a success! Happy Helming!
卸载
kubectl delete redis[实例名] -n [namespace名]
注意:
删除应用后,但是集群的pvc并没有删除,确保数据的安全。
如果依然要把删掉数据,需要命令:kubectl delete pvc [pvc名]