From 7fb7f1ba753e0c146602839ec5f2a676d93830f5 Mon Sep 17 00:00:00 2001 From: Dmitriy Rabotyagov Date: Thu, 20 Aug 2020 19:30:54 +0300 Subject: [PATCH] Use the utility host for db setup tasks Move it to the service setup host (defaults to utility[0]) instead of the galera[0] host, and use galera_address (defaults to internal VIP) as the endpoint instead of a local connection on the db host. Change-Id: I0bd9a36b69fb2eb388b0e23ed1fb52644d7ba4bc --- defaults/main.yml | 4 +++- tasks/db_setup.yml | 6 ++++++ tasks/main.yml | 3 +++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/defaults/main.yml b/defaults/main.yml index 02b6ec40..a6a1dd80 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -68,7 +68,8 @@ octavia_auth_strategy: keystone octavia_cinder_enabled: False ## Database info -octavia_db_setup_host: "{{ ('galera_all' in groups) | ternary(groups['galera_all'][0], 'localhost') }}" +octavia_db_setup_host: "{{ openstack_db_setup_host | default('localhost') }}" +octavia_db_setup_python_interpreter: "{{ openstack_db_setup_python_interpreter | default((octavia_db_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_python['executable'])) }}" octavia_galera_address: "{{ galera_address | default('127.0.0.1') }}" octavia_galera_user: octavia octavia_galera_database: octavia @@ -77,6 +78,7 @@ octavia_galera_ssl_ca_cert: "{{ galera_ssl_ca_cert | default('/etc/ssl/certs/gal octavia_db_max_overflow: 20 octavia_db_pool_size: 120 octavia_db_pool_timeout: 30 +octavia_galera_port: 3306 ## Oslo Messaging diff --git a/tasks/db_setup.yml b/tasks/db_setup.yml index 7a0120d4..aca206e4 100644 --- a/tasks/db_setup.yml +++ b/tasks/db_setup.yml @@ -22,12 +22,16 @@ - name: Setup Database Service (MariaDB) delegate_to: "{{ _oslodb_setup_host }}" + vars: + ansible_python_interpreter: "{{ _oslodb_ansible_python_interpreter }}" tags: - common-mariadb block: - name: Create database for service mysql_db: name: "{{ item.name }}" + login_host: "{{ _oslodb_setup_endpoint | default(omit) }}" + login_port: "{{ _oslodb_setup_port | default(omit) }}" loop: "{{ _oslodb_databases }}" no_log: true @@ -38,5 +42,7 @@ host: "{{ item.1.host | default('%') }}" priv: "{{ item.0.name }}.*:{{ item.1.priv | default('ALL') }}" append_privs: yes + login_host: "{{ _oslodb_setup_endpoint | default(omit) }}" + login_port: "{{ _oslodb_setup_port | default(omit) }}" loop: "{{ _oslodb_databases | subelements('users') }}" no_log: true diff --git a/tasks/main.yml b/tasks/main.yml index a60f4966..c94cb33e 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -47,6 +47,9 @@ - inventory_hostname == groups['octavia_all'][0] vars: _oslodb_setup_host: "{{ octavia_db_setup_host }}" + _oslodb_ansible_python_interpreter: "{{ octavia_db_setup_python_interpreter }}" + _oslodb_setup_endpoint: "{{ octavia_galera_address }}" + _oslodb_setup_port: "{{ octavia_galera_port }}" _oslodb_databases: - name: "{{ octavia_galera_database }}" users: