(24)k8s部署mysql

k8s部署mysql:

1.创建数据目录文件夹:

mkdir /var/lib/mysql

#创建配置目录:

mkdir cicd

eg:/home/kui/ccmysql/cicd

2.创建secret对象,存储mysql账号密码:

Secret对象:mysql-auth

#命令:

kubectl create secret generic mysql-auth --from-literal=username=root --from-literal=password=123456

#创建完成后查看mysql-auth对象

kubectl get secret

#查看secret对象yaml文件

kubectl get secret mysql-auth -o yaml

3.创建mysql deployment并完成pod部署:

创建deploy:deployment-cicd-mysql.yaml

vim deployment-cicd-mysql.yaml

yaml文件:

apiVersion: apps/v1

kind: Deployment

metadata:

name: cicd-mysql

spec:

replicas: 1

selector:

matchLabels:

app: cicd-mysql

template:

metadata:

labels:

app: cicd-mysql

spec:

containers:

  • name: cicd-mysql

image: drupalci/mysql-5.7

imagePullPolicy: IfNotPresent #镜像拉取策略:如果不存在就拉取镜像

args:

  • "--ignore-db-dir=lost+found"

ports:

  • containerPort: 3306

volumeMounts: #挂载数据卷

  • name: mysql-data

mountPath: "/var/lib/mysql" #挂载到容器内的目录

env: #环境变量

  • name: MYSQL_ROOT_PASSWORD

valueFrom:

secretKeyRef:

name: mysql-auth

key: password #引用mysql-auth中的password值

volumes: #数据卷

  • name: mysql-data

hostPath: #宿主机路径

path: /var/lib/mysql #宿主机的目录

type: Directory

备注:以下配置文档中有,但视频没用

tolerations:

  • key: "mysql"

operator: "Equal"

value: "true"

effect: "NoSchedule"

#创建mysql deployment:

#启动成功

kubectl apply -f deployment-cicd-mysql.yaml

4.创建mysql的service:

vim service-cicd-mysql.yaml

apiVersion: v1

kind: Service

metadata: #源数据

name: service-cicd-mysql

spec: #规格

selector: #选择器

app: cicd-mysql #与deployment配置中的container-name相对应

ports: #将pod的 3306端口代理到宿主机的3306端口

  • protocol: TCP

port: 3306

targetPort: 3306 #虚拟端口->真正的端口要看Service启动后实际分配的

type: NodePort #不写就不能访问到pod

相关推荐
2201_761199041 小时前
k8s4部署
云原生·容器·kubernetes
小柏ぁ1 小时前
calico/node is not ready: BIRD is not ready: BGP not established with xxx
运维·docker·kubernetes
在未来等你2 小时前
SQL进阶之旅 Day 21:临时表与内存表应用
sql·mysql·postgresql·database·temporary-table·memory-table·sql-optimization
三劫散仙3 小时前
kubernetes jenkins pipeline优化拉取大仓库性能指定分支+深度
容器·kubernetes·jenkins
西京刀客3 小时前
k8s热更新-subPath 不支持热更新
云原生·容器·kubernetes·configmap·subpath
weixin_434936283 小时前
k8S 命令
linux·容器·kubernetes
小Tomkk4 小时前
阿里云 RDS mysql 5.7 怎么 添加白名单 并链接数据库
数据库·mysql·阿里云
nuczzz5 小时前
GPU虚拟化
docker·kubernetes·k8s·gpu·nvidia
Johny_Zhao6 小时前
2025年6月Docker镜像加速失效终极解决方案
linux·网络·网络安全·docker·信息安全·kubernetes·云计算·containerd·yum源·系统运维
寒山李白6 小时前
MySQL复杂SQL(多表联查/子查询)详细讲解
sql·mysql·子查询·多表联查