【基于k8s集群的MySQL部署】

1.编写 mysql.yaml文件

bash 复制代码
apiVersion: v1
kind: Namespace
metadata:
  name: devops   # Namespace 的名称
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: devops-mysql   # deployment控制器名称
  namespace: devops
spec:
  replicas: 1
  revisionHistoryLimit: 5
  strategy:
    type: RollingUpdate
  selector:
    matchLabels:
      app: devops-mysql
  template:
    metadata:
      labels:
        app: devops-mysql
    spec:
      volumes:
        - name: devops-mysql
          nfs:
            server: xx.xx.xx.xx  # nfs服务端,参考之前nfs共享存储的部署文案
            path: /root/data/nfs/mysql/devops   # 修改为存储服务器的存储挂载路径
      containers:
        - name: devops-mysql
          image: mysql:5.7
          env:
            - name: MYSQL_ROOT_PASSWORD
              value: xxxxxxxx     # 设置MySQL数据库登录密码
          imagePullPolicy: Always
          ports:
            - containerPort: 3306
          volumeMounts:
            - name: devops-mysql
              mountPath: /var/lib/mysql
---
apiVersion: v1
kind: Service
metadata:
  name: devops-mysql    # 数据库服务的名称
  namespace: devops
spec:
  ports:
    - port: 3306
      protocol: TCP
      targetPort: 3306
      nodePort: 30001    # 对外访问的端口
  selector:
    app: devops-mysql
  type: NodePort
  sessionAffinity: ClientIP   

2.执行部署命令

bash 复制代码
kubectl create -f mysql.yaml

3.查看部署结果

bash 复制代码
kubectl get pod -n devops | grep mysql

4.exec命令进入Pod并登录mysql

bash 复制代码
 kubectl exec -it devops-mysql-59b68c47d4-ttbng bash -n devops

进入容器后,使用 mysql -uroot -p命令登陆MySQL,初始密码为yaml文件配置。

如果登陆一切正常,则部署成功。

5.外部使用MySQL数据库

通过ip+端口,这里是30001,进行数据库登陆,这里推荐使用HeidiSQL工具,一款轻量、简单、方便的MySQL工具,我已经免费共享出来了,可点击这里直接下载使用。

相关推荐
sulikey几秒前
数据库中等值连接与自然连接的区别。为什么不建议使用自然连接?
数据库·sql·mysql·等值连接·自然连接
huisheng_qaq1 小时前
【项目篇-01】Vmware虚拟机和环境安装配置
redis·mysql·canal·rocketmq·es·vaware虚拟机
承渊政道1 小时前
【MySQL数据库学习】(MySQL内置函数)
数据库·学习·mysql·ubuntu·bash·数据库开发·数据库系统
zhangfeng11331 小时前
国家超算中心K8s 容器服务,新版容器和老版本的一些坑
云原生·容器·kubernetes
北顾笙98011 小时前
MySQL-day2
数据库·mysql
程序猿乐锅12 小时前
【MySQL | 第八篇】MySQL 视图
数据库·mysql
开发者联盟league14 小时前
使用k8s安装Sonarqube
云原生·容器·kubernetes
就叫_这个吧16 小时前
IDEA Mybatis xml文件,实现sql语句联想,自动填入补充
xml·mysql·intellij-idea·mybatis
北顾笙98017 小时前
MYSQL-day03
数据库·sql·mysql
ULIi096kr17 小时前
MySQL大表优化终极方案:单表数据量上限、卡顿解决、分表分库实战教程
数据库·mysql