当前位置: 首页 > article >正文

(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


http://www.kler.cn/a/323253.html

相关文章:

  • PHP代码审计 --MVC模型开发框架rce示例
  • java 读取 有时需要sc.nextLine();读取换行符 有时不需要sc.nextLine();读取换行符 详解
  • WebRTC视频 03 - 视频采集类 VideoCaptureDS 上篇
  • IDEA2024:右下角显示内存
  • 什么是Spring Boot Actuator
  • 【操作系统不挂科】<Linux进程概念(4)>选择题(带答案与解析)
  • django基于python的房价分析可视化系统的设计与开发 h1y0i
  • 洗浴中心澡堂污水处理设备主要包括以下几个步骤
  • 分享一下PHP基本语法总结
  • DERT目标检测源码流程图main.py的执行
  • 微信支付准备工作之内网穿透2024/9/28
  • 面向未来的设计:推动企业架构创新的关键——The Open Group 2024生态系统架构与可持续发展年度大会
  • 了解HTTPS
  • 如何在 Windows 台式机或笔记本电脑上恢复未保存的 Excel 文件
  • 【AI创作组】MATLAB基础语法总结
  • matlab处理语音信号
  • scikit-sparse安装
  • 【LLM多模态】文生视频综述From Sora What We Can See: A Survey of Text-to-Video Generation
  • 万户OA-ezOFFICE fileUpload.controller 任意文件上传漏洞复现
  • 保姆级复现yolov7(论文复现)
  • class 026 哈希表、有序表和比较器的用法
  • Linux云计算 |【第四阶段】PROJECT2-DAY2
  • Nginx+Tomcat负载均衡、反向代理
  • C语言编程-经典易错题1
  • 若依开源系统多数据源整合clickhouse数据库详细步骤
  • C++远端开发环境安装(centos7)