diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/database/tasks')
-rw-r--r-- | deploy/adapters/ansible/roles/database/tasks/mariadb_cluster_debian.yml | 43 | ||||
-rw-r--r-- | deploy/adapters/ansible/roles/database/tasks/mariadb_install.yml | 11 |
2 files changed, 28 insertions, 26 deletions
diff --git a/deploy/adapters/ansible/roles/database/tasks/mariadb_cluster_debian.yml b/deploy/adapters/ansible/roles/database/tasks/mariadb_cluster_debian.yml index f083a40f..442cd18b 100644 --- a/deploy/adapters/ansible/roles/database/tasks/mariadb_cluster_debian.yml +++ b/deploy/adapters/ansible/roles/database/tasks/mariadb_cluster_debian.yml @@ -7,14 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- -- name: Register RECOVERY - set_fact: RECOVERY_ENV={{RECOVERY_ENV | default('False')}} - -- name: killall mysqld processes - shell: sudo killall -9 mysqld - when: RECOVERY_ENV - ignore_errors: True - - name: get cluster status shell: mysql --silent --skip-column-names -e 'SHOW STATUS LIKE "wsrep_evs_state"'|awk '{print $2}' register: cluster_status @@ -22,11 +14,9 @@ - inventory_hostname == haproxy_hosts.keys()[0] - name: start first node to create new cluster - service: - name: mysql - state: restarted - enabled: yes - args: "--wsrep-new-cluster" + shell: > + service mysql bootstrap; + service mysql start; when: | inventory_hostname == haproxy_hosts.keys()[0] and not cluster_status.stdout | search("OPERATIONAL") @@ -47,19 +37,30 @@ register: cluster_nodes changed_when: false -- name: restart other nodes and join cluster - service: - name: mysql - state: restarted - enabled: yes +- name: restart other nodes and join cluster1 + shell: service mysql restart; + when: | + inventory_hostname != haproxy_hosts.keys()[0] + and not cluster_nodes.stdout | search( "{{ internal_ip }}" ) + ignore_errors: True + +- name: delay 60 seconds + shell: sleep 60 + +- name: restart other nodes and join cluster2 + shell: service mysql restart; when: | inventory_hostname != haproxy_hosts.keys()[0] and not cluster_nodes.stdout | search( "{{ internal_ip }}" ) +- name: chmod directory + shell: > + chmod 755 -R /var/lib/mysql/ ; + chmod 755 -R /var/log/mysql/ ; + chmod 755 -R /etc/mysql/conf.d/; + - name: restart first nodes - service: - name: mysql - state: restarted + shell: service mysql restart when: | (inventory_hostname == haproxy_hosts.keys()[0] and haproxy_hosts|length > 1 diff --git a/deploy/adapters/ansible/roles/database/tasks/mariadb_install.yml b/deploy/adapters/ansible/roles/database/tasks/mariadb_install.yml index bf9f3464..1b08172d 100644 --- a/deploy/adapters/ansible/roles/database/tasks/mariadb_install.yml +++ b/deploy/adapters/ansible/roles/database/tasks/mariadb_install.yml @@ -14,16 +14,16 @@ mode: 0755 when: ansible_os_family == "Debian" -- name: install python-mysqldb - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: maridb_packages | union(packages_noarch) - - name: change open file limit copy: content: "* - nofile 65536 }}" dest: "/etc/security/limits.conf" mode: 0755 +- name: install python-mysqldb + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: maridb_packages | union(packages_noarch) + - name: create conf dir for wsrep file: path=/etc/my.cnf.d state=directory mode=0755 when: ansible_os_family == "RedHat" @@ -52,7 +52,7 @@ when: ansible_os_family == "Debian" - name: set owner - file: path=/var/lib/mysql owner=mysql group=mysql recurse=yes state=directory + file: path=/var/lib/mysql owner=mysql group=mysql recurse=yes state=directory mode=0755 - name: get logfile stat stat: path='{{ mysql_data_dir }}/ib_logfile0' @@ -67,3 +67,4 @@ when: | logfile_stat.stat.exists and logfile_stat.stat.size != 1073741824 + |