ansible角色部署mysql主从复制
ansible角色部署mysql主从复制
创建角色mariadb
[root@ansible roles]# ansible-galaxy init mariadb
编写角色执行任务
[root@ansible roles]# vim mariadb/tasks/main.yml
[root@ansible roles]# cat mariadb/tasks/main.yml
---
# tasks file for mariadb
- name: mountmount:src: /dev/cdrompath: /mnt/fstype: iso9660state: mounted- name: reposhell:cmd: rm -rf /etc/yum.repos.d/*- name: yum_repository1yum_repository:file: servername: AppStreamdescription: AppStreambaseurl: file:///mnt/AppStreamenabled: yesgpgcheck: no- name: yum_reposirtoryyum_repository:file: servername: BaseOSdescription: BaseOSbaseurl: file:///mnt/BaseOSenabled: yesgpgcheck: no- name: stop firewalldservice:name: firewalldstate: stoppedenabled: no- name: stop selinuxlineinfile:path: /etc/selinux/configregexp: '^SELINUX='line: SELINUX=enforcing- name: stop selinuxshell: setenforce 0- name: install mariadbyum:name:- mariadb- mariadb-serverstate: present- name: templatetemplate:src: mastermy.cnf.j2dest: /etc/my.cnfwhen: inventory_hostname in {{ groups.mysql_master }}- name: templatetemplate:src: slavemy.cnf.j2dest: /etc/my.cnfwhen: inventory_hostname in {{ groups.mysql_slave }}- name: restart mariadbservice:name: mariadbstate: restartedenabled: yes- name: mariadb1shell:cmd: mysql -uroot -e "create user 'xuanning'@'192.168.226.60' identified by '123456';"when: inventory_hostname in {{ groups.mysql_master }}- name: mariadb2shell:cmd: mysql -uroot -e "GRANT REPLICATION SLAVE ON *.* TO 'xuanning'@'192.168.226.60';"when: inventory_hostname in {{ groups.mysql_master }}- name: mariadb3shell:cmd: mysql -uroot -e "flush privileges;"when: inventory_hostname in {{ groups.mysql_master }}
- name: slaveshell:cmd: mysql -uroot -e "change master to master_host='192.168.226.50',master_user = 'xuanning',master_password = '123456';"when: inventory_hostname in {{ groups.mysql_slave }}- name: slave2shell:cmd: mysql -uroot -e "start slave;"when: inventory_hostname in {{ groups.mysql_slave }}
编写所需的模板文件
[root@ansible roles]# cat mariadb/templates/mastermy.cnf.j2
[master]
log-bin=g
server-id=2000
[root@ansible roles]# cat mariadb/templates/slavemy.cnf.j2
[slave]
log-bin=g
server-id=2001
编写剧本调用角色
[root@ansible ansible]# cat mariadb.yml
---
- name: mariadbhosts: mysqlroles:- mariadb
执行剧本
[root@ansible ansible]# ansible-playbook mariadb.yml
验证
MariaDB [(none)]> show slave status \G
*************************** 1. row ***************************Slave_IO_State:Master_Host: 192.168.226.50Master_User: xuanningMaster_Port: 3306Connect_Retry: 60Master_Log_File:Read_Master_Log_Pos: 4Relay_Log_File: node2-relay-bin.000001Relay_Log_Pos: 4Relay_Master_Log_File:Slave_IO_Running: ConnectingSlave_SQL_Running: Yes
ansible角色部署mysql主从复制相关推荐
- ansible角色部署mysql主从
linux ansible角色部署mysql主从 ansible主机创建角色 重新定义主机清单 [root@ansible ~]# cd /etc/ansible/ [root@ansible ans ...
- ansible角色部署lamp架构
使用ansible角色部署lamp架构 文章目录 使用ansible角色部署lamp架构 一.部署Apache 1.配置主机并创建角色 2.编写task任务 3.编写脚本 4.调用角色 二.部署mys ...
- 使用docker compose部署MySQL主从复制集群
使用docker compose部署MySQL主从复制集群 环境说明 宿主机:Ubuntu 14.04.6 LTS Docker Engine: 18.06.3-ce docker compose: ...
- 史上最详细Docker部署Mysql主从复制,带每一步骤图!!!
没有夸大标题哈,能够成功的,实测后发文 本文主要讲怎么用Docker部署Mysql的主从复制,看起来很长,实际非常简单的,看一遍,立马就能懂的. 直接CV也能搭建起来,莫慌. 我们一起加油!!! 地点 ...
- osm2mysql_安装部署MySQL主从复制
Environment:{ CentOS 7 两台 安装MySQL(mariadb mariadb-server) } !!!关闭防火墙SELinux 1.查看版本信息 2.启动mysql服务,查 ...
- 基于Docker部署Mysql主从复制-实战详解篇
一.前言 MySQL的主从复制详细讲解,根据网上教程也踩了很多坑,浪费了一些时间 ,特地全面的梳理下基于docker构建的mysql主从复制构建过程.遇到的问题以及提供安装包样例等 希望一篇文章足以解 ...
- Centos7部署MySQL主从复制
一.准备 1.准备两台服务器,如果本地测试,准备两台虚拟机. 2.两台服务器上安装相同的mysql数据库. 3.我这里准备两台虚拟机演示: 192.168.21.102 主机 192.168.21 ...
- 使用docker部署mysql主从复制集群
一.环境搭建 虚拟机环境:centos7 IP:192.168.37.134 用户名:root 密码:123 启动3个容器,一个是master,端口是3307,另外两个是slaver,端口是3308和 ...
- 自动化部署mysql主从复制集群_使用docker部署mysql主从复制集群
一.环境搭建 虚拟机环境:centos7 IP:192.168.37.134 用户名:root 密码:123 启动3个容器,一个是master,端口是3307,另外两个是slaver,端口是3308和 ...
最新文章
- 在redhat6.4下安装 Oracle® Database 11g Release 2
- 高速串行总线设计基础(五)揭秘SERDES高速面纱之多相数据提取电路与线路编码方案
- linux 打包压缩工具
- rtorrent - 强大的命令行BT客户端
- rmmod: can't change directory to '/lib/modules': No such file or directory问题解决
- 打破信息孤岛完成EAI
- Codeforces 1028C(面积并/思维)
- 【英语学习】【WOTD】thole 释义/词源/示例
- Service绑定模式
- python转移矩阵_使用Python / Numpy中的单词构建转换矩阵
- Java or PHP? 谈谈高并发网站的技术选型和架构设计
- Python--day26--封装和@property
- 管理感悟:复制代码是错误行为
- STM32+DWM1000开发uwb测距系列教程之一:官方例程简介
- C++与QT学习路线
- 什么是CPU主频、外频、倍频?之间关系是?
- 年龄、工龄、计算(精确到天)
- linux 卸载oracle
- 2019C语言课程设计
- 阻塞双端消息队列 BlockingDeque(先进先出的原则管理)