我试图创建一个使用MySQL
mysql_user
模块中ansible
数据库演示的用户。我ansible-playbook
是:
---
- hosts: db01
tasks:
- name: install dependencies tool
yum: name={{item}} state=latest update_cache=yes
with_items:
- MySQL-python
- mysql-devel
- python-devel
- name: install mysql-server
yum: name=mysql-server state=installed update_cache=yes
- name: ensure mysql started
service: name=mysql state=started enabled=yes
- name: ensure mysql listening on all ports
lineinfile: dest=/etc/my.cnf regexp=^bind-address line="bind-address = 0.0.0.0"
notify: restart mysql
- name: create demo database
mysql_db: name=demo state=present
- name: create demo user
mysql_user: name=demo password=demo priv=demo.*:ALL host='%' state=present
handlers:
- name: restart mysql
service: name=mysql state=restarted
不幸的是,ansible-playbook
炸弹的同时创建用户:
TASK ... *********************************************************************************************************************
ok: [db01] => ...
TASK [create demo user] **************************************************************************************************************
fatal: [db01]: FAILED! => {
"changed": false,
"module_stderr": "Shared connection to db01 closed.\r\n",
"module_stdout": "Traceback (most recent call last):\r\n File \"/tmp/ansible_d7y4gT/ansible_module_mysql_user.py\", line 218, in <module>\r\n from ansible.module_utils.basic import AnsibleModule\r\nzlib.error: Error -2 while preparing to decompress data: inconsistent stream state\r\n",
"msg": "MODULE FAILURE",
"rc": 0
}
任何人都可以使用误差zlib.error: Error -2 while preparing to decompress data: inconsistent stream state
帮助吗?有没有其他人遇到这个错误?
参照https://github.com/ansible/ansible/issues/47927这可能是一个已知的错误没有直接的关系,而ansible
到zlib
依赖你MySQL
的版本。