【基于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工具,我已经免费共享出来了,可点击这里直接下载使用。

相关推荐
@大嘴巴子1 小时前
MySQL知识回顾总结----数据库基础
数据库·mysql
lubiii_1 小时前
SQL手工测试(MySQL数据库)
数据库·mysql·web安全·网络安全
有个傻瓜3 小时前
PHP语言核心技术全景解析
开发语言·kubernetes·php
bbsh20993 小时前
WebFuture 升级提示“不能同时包含聚集KEY和大字段””的处理办法
数据库·sql·mysql·webfuture
幻灭行度3 小时前
CKA考试知识点分享(2)---ingress
kubernetes
霖檬ing3 小时前
Python——MySQL远程控制
开发语言·python·mysql
limingade8 小时前
ADB识别手机系统弹授权框-如何处理多重弹框叠加和重叠问题
adb·智能手机·android自动授权确认·安卓弹框授权·自动化点击android授权框
FREEDOM_X8 小时前
系统调试——ADB 工具
adb
曼汐 .12 小时前
数据库管理与高可用-MySQL高可用
数据库·mysql
MickeyCV12 小时前
使用Docker部署MySQL&Redis容器与常见命令
redis·mysql·docker·容器·wsl·镜像