salt 启动mysql_saltsack自动化配置day03:服务部署mysql部署
一、MySQL集群需求分享
1、抽象:功能模塊
把基礎(chǔ)的寫成通用
服務(wù)部署也要抽象出來模塊
redis內(nèi)存有的多,有的少,可以config set在線更改
redis 安裝、配置、啟動
mysql 安裝、配置(my.cnf可以統(tǒng)一 目錄默認(rèn)配置可以統(tǒng)一)
master: server_id 1111
slave: server_id 2222
二、mysql 主從實(shí)現(xiàn)思路
2.1 mysql-install.sls 安裝 配置 初始化
把基礎(chǔ)的寫成通用
2.2 my.cnf配置不同-server id
my.cnf不一樣的數(shù)據(jù)include,線上十幾個mysql集群,我很多業(yè)務(wù)需要用我就include
1、按類型分的場景
我只有四臺機(jī)器
2、按業(yè)務(wù)分
業(yè)務(wù)很大,每個業(yè)務(wù)都是不同的東西
2.3 創(chuàng)建主從同步用戶
所有MySQ主從一樣好不好?
沒有從沒關(guān)系就是創(chuàng)建一個用戶而已
2.4 master上獲取binlog 和 pos值
show master status
2.5 slave上
change master && start slave
2.6 檢查主從狀態(tài)
GRANT replication slave on
二、MySQL集群配置實(shí)戰(zhàn)
1、沒有按照官方的是按照自己的cmd.run
雖然推薦你使用他自己寫的模塊,但有的時候用它的寫的反而復(fù)雜了,那你就要勇敢的放棄
很多時候繞就是因?yàn)槟銓π枨罄斫獾牟粔蛏羁?#xff0c;針對不同的服務(wù)做不一樣的選擇
2、目錄結(jié)構(gòu)
[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
總結(jié)
以上是生活随笔為你收集整理的salt 启动mysql_saltsack自动化配置day03:服务部署mysql部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python实现队列_用Python实现
- 下一篇: linux cmake编译源码,linu