Я хочу настроить сервер MySQL на AWS, используя Ansible для управления конфигурацией.
Я использую AMI по умолчанию от Amazon (ami-3275ee5b), который использует yum
для управления пакетами.
Когда исполняется Playbook ниже, все идет хорошо. Но когда я запускаю его во второй раз, задача Configure the root credentials
терпит неудачу, потому что старый пароль MySQL больше не соответствует, так как он был обновлен в последний раз, когда я запускал эту книгу.
Это делает Playbook не-идемпотентным, что мне не нравится. Я хочу иметь возможность запускать Playbook столько раз, сколько захочу.
- hosts: staging_mysql
user: ec2-user
sudo: yes
tasks:
- name: Install MySQL
action: yum name=$item
with_items:
- MySQL-python
- mysql
- mysql-server
- name: Start the MySQL service
action: service name=mysqld state=started
- name: Configure the root credentials
action: command mysqladmin -u root -p $mysql_root_password
Каким был бы лучший способ решить эту проблему, а это значит, сделать Idempotent в Playbook? Спасибо заранее!