用ansible 配置mysql主从,遇到了一坑,被搞了好久。版本2.7.5,2.7.8都有问题
ansible-playbook 如下:
---
- hosts: master
gather_facts: yes
tasks:
- name: Get Mysql-master Status
mysql_replication:
mode: "getslave"
login_user: "root"
login_password: "****"
#login_unix_socket: "/data/mysql/run/mysql.sock"
register: master_status
tags: master
执行的时候报如下错误:
mysql_replication cursor() got an unexpected keyword argument 'cursorclass'
查了好久的资料,官方也知道这个坑(https://github.com/ansible/ansible/pull/53326).尝试去改mysql_replication.py,没有成功。
解决办法: 升级anbile
pip install ansible==2.9
[root@vm10-4-0-57 MySQL-Binary-Master-slave-Playbook]# ansible-playbook test_mysql_replication.yaml
PLAY [master] ******************************************************************************************************************************
TASK [Gathering Facts] *********************************************************************************************************************
ok: [10.4.0.17]
TASK [Get Mysql-master Status] *************************************************************************************************************
ok: [10.4.0.17]
PLAY RECAP *********************************************************************************************************************************
10.4.0.17 : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
浪费了好多时间,感觉不值。