在k8s上部署mysql 8.0 MGR

一。环境概述

     k8s环境:1台master节点,3台node节点。

      在三个节点上搭建MGR集群。mysql的数据文件是挂载在本地存储,在镜像制作完成后,需要把初始化后的数据文件copy到三个节点本地的挂载点/data/mysql/data/,另外需要修改auto.cnf里面的uuid,让三个节点的uuid不同。


二。搭建步骤

  1. 制作mysql 8.0.15镜像

    此步骤略过,参照mysql官方的二进制包安装步骤, https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html。   安装完毕后制作成镜像。

  2. 准备生成三个节点pod的相关yaml文件。

    ---创建namespace的文件namespace.yaml:

    apiVersion: v1
    kind: Namespace
    metadata:
      name: mysqldb

    ---节点1的configmap文件mysql-mgr-cnf-0.yaml:

    apiVersion: v1
    data:
      mysql-mgr-0.cnf: |
        [mysqld]
        port = 3306
        character_set_server = utf8
        socket = /tmp/mysql.sock
        basedir = /usr/local/mysql
        log-error = /data/mysql/data/mysql.err
        pid-file = /data/mysql/data/mysql.pid
        datadir = /data/mysql/data
        server_id = 092832
        log_bin = mysql-bin
        relay-log = relay-bin
        #back_log = 500
        #max_connections = 3000
        #wait_timeout = 5022397
        interactive_timeout = 5022397
        max_connect_errors = 1000
        relay-log-recovery=1
        #max_allowed_packet = 32M
        sort_buffer_size = 4M
        read_buffer_size = 4M
        join_buffer_size = 8M
        thread_cache_size = 64
        #tmp_table_size = 256M
        log_slave_updates=1
        long_query_time = 1
        slow_query_log = 1
        slow_query_log_file = /data/mysql/data/slow_sql.log
        skip-name-resolve
        sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
        innodb_buffer_pool_size=700M
        #innodb_data_file_path = ibdata1:1024M:autoextend
        innodb_flush_log_at_trx_commit=1
        innodb_log_buffer_size = 16M
        innodb_log_file_size = 256M
        innodb_log_files_in_group = 2
        innodb_max_dirty_pages_pct = 50
        sync_binlog=1
        master_info_repository=TABLE
        relay_log_info_repository=TABLE
        log_timestamps=SYSTEM
        gtid_mode = ON
        enforce_gtid_consistency = ON
        master_info_repository = TABLE
        relay_log_info_repository = TABLE
        log_slave_updates = ON
        binlog_checksum = NONE
        log_slave_updates = ON
        slave_parallel_type=LOGICAL_CLOCK
        slave_parallel_workers=8
        slave-preserve-commit-order=on
        #group_replication_compression_threshold=200000
        transaction_write_set_extraction = XXHASH64
        loose-group_replication_group_name="01e5fb97-be64-41f7-bafd-3afc7a6ab555"
        loose-group_replication_start_on_boot=off
        loose-group_replication_local_address="mysql-mgr-0.mgrtest.mysqldb.svc.cluster.local.:13306"
        loose-group_replication_group_seeds="mysql-mgr-0.mgrtest.mysqldb.svc.cluster.local.:13306,mysql-mgr-1.mgrtest.mysqldb.svc.cluster.local.:13306,mysql-mgr-2.mgrtest.mysqldb.svc.cluster.local.:13306"
        loose-group_replication_bootstrap_group = off
        loose-group_replication_ip_whitelist='10.244.0.0/16,172.17.0.0/16,10.229.0.0/16,10.228.0.0/16'
        report_host = mysql-mgr-0.mgrtest.mysqldb.svc.cluster.local
        [mysqldump]
        quick
        max_allowed_packet = 32M
    kind: ConfigMap
    metadata:
      name: mysql-mgr-0-cnf
      namespace: mysqldb


    ---节点2的configmap文件mysql-mgr-cnf-1.yaml:

    apiVersion: v1
    data:
      mysql-mgr-1.cnf: |
        [mysqld]
     

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值