diff --git a/ansible/roles/mariadb/defaults/main.yml b/ansible/roles/mariadb/defaults/main.yml index cb0ddbd9b1..48285a7104 100644 --- a/ansible/roles/mariadb/defaults/main.yml +++ b/ansible/roles/mariadb/defaults/main.yml @@ -10,12 +10,6 @@ database_cluster_name: "kolla" #################### # Docker #################### -docker_database_registry: "{{ docker_registry ~ '/' if docker_registry else '' }}" -docker_database_namespace: "{{ docker_namespace }}" -kolla_database_base_distro: "{{ kolla_base_distro }}" -kolla_database_install_type: "{{ kolla_install_type }}" -kolla_database_container_name: "galera" - -docker_database_image: "{{ docker_database_registry }}{{ docker_database_namespace }}/{{ kolla_database_base_distro }}-{{ kolla_database_install_type }}-{{ kolla_database_container_name }}" -docker_database_tag: "{{ openstack_release }}" -docker_database_image_full: "{{ docker_database_image }}:{{ docker_database_tag }}" +mariadb_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-galera" +mariadb_tag: "{{ openstack_release }}" +mariadb_image_full: "{{ mariadb_image }}:{{ mariadb_tag }}" diff --git a/ansible/roles/mariadb/tasks/bootstrap.yml b/ansible/roles/mariadb/tasks/bootstrap.yml index d84e255983..f31153c026 100644 --- a/ansible/roles/mariadb/tasks/bootstrap.yml +++ b/ansible/roles/mariadb/tasks/bootstrap.yml @@ -36,27 +36,44 @@ always_run: True run_once: True -- include: ../../start.yml - vars: - container_command: "/bin/sleep infinity" - container_image: "{{ docker_database_image_full }}" - container_name: "mariadb_data" - container_volumes: - - "/var/lib/mysql/" +- name: Starting MariaDB data container + docker: + docker_api_version: "{{ docker_api_version }}" + net: host + pull: "{{ docker_pull_policy }}" + restart_policy: "{{ docker_restart_policy }}" + restart_policy_retry: "{{ docker_restart_policy_retry }}" + state: reloaded + registry: "{{ docker_registry }}" + username: "{{ docker_registry_username }}" + password: "{{ docker_registry_password }}" + insecure_registry: "{{ docker_insecure_registry }}" + name: mariadb_data + image: "{{ mariadb_image_full }}" + command: "/bin/sleep infinity" + volumes: "/var/lib/mysql/" -- include: ../../start.yml - vars: - container_environment: +- name: Starting MariaDB bootstrap container + docker: + docker_api_version: "{{ docker_api_version }}" + net: host + pull: "{{ docker_pull_policy }}" + restart_policy: "no" + restart_policy_retry: "{{ docker_restart_policy_retry }}" + state: reloaded + registry: "{{ docker_registry }}" + username: "{{ docker_registry_username }}" + password: "{{ docker_registry_password }}" + insecure_registry: "{{ docker_insecure_registry }}" + name: mariadb + image: "{{ mariadb_image_full }}" + volumes: "{{ node_config_directory }}/mariadb/:/opt/kolla/mariadb/:ro" + volumes_from: + - "mariadb_data" + env: KOLLA_BOOTSTRAP: KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" DB_ROOT_PASSWORD: "{{ database_password }}" - container_image: "{{ docker_database_image_full }}" - container_name: "mariadb" - container_restart_policy: "no" - container_volumes: - - "{{ node_config_directory }}/mariadb/:/opt/kolla/mariadb/:ro" - container_volumes_from: - - "mariadb_data" when: delegate_host == 'None' and inventory_hostname == groups['mariadb'][0] - name: Sleeping for 15 seconds while the cluster starts diff --git a/ansible/roles/mariadb/tasks/register.yml b/ansible/roles/mariadb/tasks/register.yml index 5462aa4ceb..652545856e 100644 --- a/ansible/roles/mariadb/tasks/register.yml +++ b/ansible/roles/mariadb/tasks/register.yml @@ -1,19 +1,4 @@ --- -- include: ../../start.yml - vars: - container_environment: - KOLLA_BOOTSTRAP: - KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" - DB_ROOT_PASSWORD: "{{ database_password }}" - container_image: "{{ docker_database_image_full }}" - container_name: "mariadb" - container_restart_policy: "no" - container_volumes: - - "{{ node_config_directory }}/mariadb/:/opt/kolla/mariadb/:ro" - container_volumes_from: - - "mariadb_data" - when: delegate_host == 'None' and inventory_hostname == groups['mariadb'][0] - - name: Creating haproxy mysql user command: docker exec -t kolla_ansible /usr/bin/ansible localhost -m mysql_user diff --git a/ansible/roles/mariadb/tasks/start.yml b/ansible/roles/mariadb/tasks/start.yml index da0a8d3795..fe4c416b11 100644 --- a/ansible/roles/mariadb/tasks/start.yml +++ b/ansible/roles/mariadb/tasks/start.yml @@ -1,13 +1,23 @@ --- -- include: ../../start.yml - vars: - container_environment: - KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" - container_image: "{{ docker_database_image_full }}" - container_name: "mariadb" - container_volumes: - - "{{ node_config_directory }}/mariadb/:/opt/kolla/mariadb/:ro" - container_volumes_from: +- name: Starting MariaDB container + docker: + docker_api_version: "{{ docker_api_version }}" + net: host + pull: "{{ docker_pull_policy }}" + restart_policy: "{{ docker_restart_policy }}" + restart_policy_retry: "{{ docker_restart_policy_retry }}" + state: reloaded + registry: "{{ docker_registry }}" + username: "{{ docker_registry_username }}" + password: "{{ docker_registry_password }}" + insecure_registry: "{{ docker_insecure_registry }}" + name: mariadb + image: "{{ mariadb_image_full }}" + volumes: "{{ node_config_directory }}/mariadb/:/opt/kolla/mariadb/:ro" + volumes_from: - "mariadb_data" - when: delegate_host != 'None' or (groups['mariadb'] | length) == 1 or + env: + KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" + when: delegate_host != 'None' or + ( groups['mariadb'] | length ) == 1 or ( delegate_host == 'None' and inventory_hostname != groups['mariadb'][0] )