k8s集群中安装redis、mysql(使用helm),两个简单的案例。

1、k8s中安装redis服务 (4.0.8-r2)

mkdir  rediswork
cd rediswork
helm search redis
helm fetch  stable/redis --version 1.1.15   #下载redis-1.1.15.tgz包到当前目录
tar -zxvf  redis-1.1.15.tgz #解压后得到一个redis目录
cd redis #进入redis目录
vi template/deployment.yaml,
(1)将第一行的apiVersion的值修改为"apps/v1",而不是"extensions/v1beta1"
(2)在控制器的sepc字段下添加
selector:
matchLabels:
app:  {{ template "redis.fullname" . }}
cp values.yaml myvalues.yaml #复制一份值文件
vi myvalues.yaml,修改配置参数,例如:
redisPassword: 123456asd #指定redis连接密码
persistence.size: 2Gi #最大持久化数据的大小,默认是8Gi,可以适当调整(调大或调小)
resources.requests.memory:100Mi #申请内存大小
#实例化一个Release ,注意最后有个点,表示当前目录,--namespace 指定运行服务所在名称空间,默认为default
# --name 指定Release的名称
helm install --name myredis --namespace default -f myvalues.yaml  .
查看运行结果:
helm list
kubectl get deployment
kubectl get pod
kubectl get svc
2、k8s中安装mysql(5.7.26)
mkdir mysqlwork
cd mysqlwork
helm search mysql
helm fetch  stable/mysql #下载chart包为 mysql-0.3.5.tgz
tar -zxvf mysql-0.3.5.tgz #解压为mysql目录
cd mysql #进入mysql chart目录
cp values.yaml myvalues.yaml
vi myvalues.yaml 修改其中某些配置项目,例如:
mageTag: "5.7.26" #指定mysql安装版本
mysqlRootPassword: 123456asd #指定mysql的root用户的密码
configurationFiles: #配置my.cnf文件参数
mysql.cnf: |-
[mysqld]
character_set_server=utf8
service.type: NodePort
service.port: 3306
service.nodePort: 32000
vi templates/deployment.yaml ,
(1)修改deployment控制器的apiVersion为apps/v1
(2)在控制器的sepc字段下添加
selector:
matchLabels:
app:  {{ template "mysql.fullname" . }}
#实例化一个Release
helm install --name tcmysql  -f  myvalues.yaml .  #Release的名称中不要带"-"短横线
查看运行结果:
helm list
kubectl get deployment
kubectl get pod
kubectl get svc

都安装完成后,最后上张图看看 :

k8s安装mysql k8s安装redis_mysql