zoukankan      html  css  js  c++  java
  • saltsack自动化配置day03:服务部署mysql部署

    一、MySQL集群需求分享

    1、抽象:功能模块

    1. 把基础的写成通用
    2. 服务部署也要抽象出来模块
    3. redis内存有的多,有的少,可以config set在线更改
    4. redis 安装、配置、启动
    5. mysql 安装、配置(my.cnf可以统一 目录默认配置可以统一)
    master: server_id 1111
    slave: server_id 2222

     

    二、mysql 主从实现思路

    2.1 mysql-install.sls 安装 配置 初始化

    把基础的写成通用

    2.2 my.cnf配置不同-server id

    my.cnf不一样的数据include,线上十几个mysql集群,我很多业务需要用我就include

    1、按类型分的场景

    我只有四台机器

    2、按业务分

    业务很大,每个业务都是不同的东西

    2.3 创建主从同步用户

    1. 所有MySQ主从一样好不好?
    2. 没有从没关系就是创建一个用户而已

    2.4 master上获取binlog 和 pos值

    show master status

    2.5 slave上

    change master && start slave

    2.6 检查主从状态

    GRANT replication slave on

     

    二、MySQL集群配置实战

    1、没有按照官方的是按照自己的cmd.run

    虽然推荐你使用他自己写的模块,但有的时候用它的写的反而复杂了,那你就要勇敢的放弃
    很多时候绕就是因为你对需求理解的不够深刻,针对不同的服务做不一样的选择

    2、目录结构

    [root@saltstack mysql]# pwd
    /srv/salt/prod/modules/mysql
    [root@saltstack mysql]# tree -L 2
    .
    ├── files
    │   ├── mariadb-server-master.cnf
    │   ├── mariadb-server-slave.cnf
    │   └── my.cnf
    ├── install.sls
    ├── master.sls
    └── slave.sls
    

    3、安装

    [root@saltstack mysql]# cat install.sls 
    mysql-install:
      pkg.installed:
        - pkgs:
          - mariadb
          - mariadb-server
    mysql-config:
      file.managed:
        - name: /etc/my.cnf
        - source: salt://modules/mysql/files/my.cnf
        - user: root
        - group: root
        - mode: 644

    4、master.sls

    [root@saltstack mysql]# cat master.sls 
    include:
      - modules.mysql.install
    
    master-config:
      file.managed:
        - name: /etc/my.cnf.d/mariadb-server.cnf
        - source: salt://modules/mysql/files/mariadb-server-master.cnf
        - user: root
        - group: root
        - mode: 644
    
    master-service:
      service.running:
        - name: mariadb
        - enable: True
    

    5、slave.sls

    [root@saltstack mysql]# cat slave.sls 
    include:
      - modules.mysql.install
    
    slave-config:
      file.managed:
        - name: /etc/my.cnf.d/mariadb-server.cnf
        - source: salt://modules/mysql/files/mariadb-server-slave.cnf
        - user: root
        - group: root
        - mode: 644
    
    slave-service:
      service.running:
        - name: mariadb
        - enable: True
    

    6、mariadb-server-master.cnf

    [root@saltstack files]# cat mariadb-server-master.cnf 
    [mysqld]
    log_bin=mysqlbin
    server_id=1111
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    log-error=/var/log/mariadb/mariadb.log
    pid-file=/var/run/mariadb/mariadb.pid

    7、mariadb-server-slave.cnf

    [root@saltstack files]# cat mariadb-server-slave.cnf 
    [mysqld]
    log_bin=mysqlbin
    server_id=2222
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    log-error=/var/log/mariadb/mariadb.log
    pid-file=/var/run/mariadb/mariadb.pid
  • 相关阅读:
    HDU1258 Sum It Up(DFS)
    hdu 1078 FatMouse and Cheese(记忆化搜索)
    HDU1072 Nightmare (bfs+贪心)
    HDU 2102 A计划 经典搜索
    hdu 1180诡异的楼梯(bfs)
    HDU 1065.I Think I Need a Houseboat
    559_N叉树的最大深度
    236_二叉树的最近公共祖先
    589_N叉树的前序遍历
    每天进步一点点
  • 原文地址:https://www.cnblogs.com/luoahong/p/9652572.html
Copyright © 2011-2022 走看看