首页 > 数据库 >k8s快速部署MySQL单机

k8s快速部署MySQL单机

时间:2023-05-19 11:36:23浏览次数:45  
标签:name 单机 MySQL 3306 mysqld mysql var k8s

1.创建PV/PVC

2.创建MySQL配置文件

kind: ConfigMap
apiVersion: v1
metadata:
  name: mysql-config
  namespace: ops-share
data:
  my.cnf: |-
    [mysqld]

    skip-host-cache
    skip-name-resolve
    datadir=/var/lib/mysql
    socket=/var/run/mysqld/mysqld.sock
    secure-file-priv=/var/lib/mysql-files
    user=mysql
    symbolic-links=0
    pid-file=/var/run/mysqld/mysqld.pid
    [client]
    socket=/var/run/mysqld/mysqld.sock

    !includedir /etc/mysql/conf.d/
    !includedir /etc/mysql/mysql.conf.d/

3.创建MySQL deploy文件

apiVersion: apps/v1
kind: Deployment
metadata:
  name: t1-mysql
  namespace: ops-share
spec:
  selector:
    matchLabels:
      app: mysql-5.7
  template:
    metadata:
      labels:
        app: mysql-5.7
    spec:
      containers:
      - name: mysql
        image: mysql:5.7.42
        env:                        
        - name: MYSQL_ROOT_PASSWORD
          value: "System@123"  #设置root登录密码
        ports:
        - containerPort: 3306
        volumeMounts:
        - name: mysql-data
          mountPath: /var/lib/mysql         
          subPath: mysql
        - name: config
          mountPath:  /etc/my.cnf
          subPath: my.cnf
      volumes:
      - name: mysql-data
        persistentVolumeClaim:
          claimName: mysql-data
      - name: config
        configMap:
          name: mysql-config

4.MySQL svc文件

apiVersion: v1
kind: Service
metadata:

  labels:
    app: t1-mysql-svc
  name: t1-mysql-svc
  namespace: ops-share

spec:

  ports:
  - name: tcp-mysql-3306
    nodePort: 30117
    port: 3306
    protocol: TCP
    targetPort: 3306
  selector:
    app: mysql-5.7
  type: NodePort

MySQL访问

内部:t1-mysql-svc.ops-share.svc.cluster.local:3306 
外部:SLB转发到节点30117端口,根据实际情况进行访问

 

标签:name,单机,MySQL,3306,mysqld,mysql,var,k8s
From: https://www.cnblogs.com/panwenbin-logs/p/17414389.html

相关文章

  • mysql 存储过程详解
    前言在项目开发中,经常会遇到这样一种场景,当修改A表的一条数据时,需要关联修改B表、C表甚至其他更多表的数据,为什么会这样呢?在真实的业务场景中,往往一张表的数据关联的业务是多样的,举例来说,用户在页面上完成一个订单,对服务端来说,与这个订单相关的业务还有很多,比如生成一条出库记......
  • k8s 1.23.0 安装使用ingress 1.1.1
    1、部署ingresscontroller下载yaml文件,要指定版本wgethttps://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.1/deploy/static/provider/cloud/deploy.yaml2、修改配置文件中的镜像下载地址,总共3处修改image:registry.cn-hangzhou.aliy......
  • K8S Pod 优雅停机
    优雅停止(GracfulShutdown)与502/504报错如果Pod正在处理大量请求(比如1000QPS+)时,因为节点故障或「竞价节点」被回收等原因被重新调度,你可能会观察到在容器被terminate的一段时间内出现少量502/504。为了搞清楚这个问题,需要先理解清楚terminate一个Pod的流程:1.Pod......
  • MySQL学习基础篇Day4
    CREATEUSER'用户名'@'主机名'IDENTIFIEDBY'密码';2.7DCLDCL英文全称是DataControlLanguage(数据控制语言),用来管理数据库用户、控制数据库的访问权限。2.7.1管理用户1).查询用户select*frommysql.user; 查询的结果如下:其中Host代表当前用户访问的主机,......
  • Mybatis和Mybatis-Plus对MySQL中json类型处理
    目录1MySQL中json类型处理1.1引言1.2准备建表1.3Mybatis1.3.1实体类1.3.2BaseTypeHandler1.3.3application.yml1.3.4修改SQL文件1.4MybatisPlus1.4.1实体类1.4.2application.yml1.4.3SQL文件1MySQL中json类型处理1.1引言mysql5.7开始支持json类型字段点击了解M......
  • K8s 资源缩写
    点击查看代码[root@nginx~]#kubectlapi-resourcesNAMESHORTNAMESAPIVERSIONNAMESPACEDKINDbindingsv1trueBindingcompon......
  • mysql备份与恢复
    数据库备份时把把数据库的结构,包括数据、约束、索引、视图等全部另存为一个文件。使用mysqldump备份的语句:mysqldump 是MySQL用于备份数据库的实用程序。它主要产生一个SQL脚本文件,其中包含从头重新创建数据库所必需的命令 CREATE TABLE INSERT 等。使用 mysqldump......
  • MySQL双主复制原理
    MySQL双主复制(Master-MasterReplication)是一种基于MySQL异步复制(AsynchronousReplication)技术的高可用性方案。它的原理是将两台MySQL主服务器互相复制对方的数据,同时允许在两台服务器上进行读写操作,从而实现负载均衡和高可用性。具体来说,MySQL双主复制的原理如下:双主服务器......
  • k8s集群环境搭建
    注:如下文档不是一次性搭建成功的,可能有一些地方ip地址和实际成功的那次地址不一样。首先,我们准备3台虚拟机,配置都是是2核心2.2G内存192.168.3.121k8s-master192.168.3.133k8s-node1192.168.3.119k8s-node21修改主机名经过实践,发现,如果不修改主机名的话,安装可能......
  • MySQL学习基础篇Day3
    2.6.4聚合函数1).介绍将一列数据作为一个整体,进行纵向计算。2).常见的聚合函数函数功能count统计数量max最大值min最小值avg平均值sum求和3).语法seclect聚合函数(字段列表)from表名; 案例:A.统计该企业员工......