diff --git a/ansible/roles/cinder/templates/cinder.conf.j2 b/ansible/roles/cinder/templates/cinder.conf.j2 index c0039e3b03..033e45a2eb 100644 --- a/ansible/roles/cinder/templates/cinder.conf.j2 +++ b/ansible/roles/cinder/templates/cinder.conf.j2 @@ -41,7 +41,7 @@ nova_catalog_info = compute:nova:internalURL auth_strategy = keystone [database] -connection = mysql://{{ cinder_database_user }}:{{ cinder_database_password }}@{{ cinder_database_address }}/{{ cinder_database_name }} +connection = mysql+pymysql://{{ cinder_database_user }}:{{ cinder_database_password }}@{{ cinder_database_address }}/{{ cinder_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/glance/templates/glance-api.conf.j2 b/ansible/roles/glance/templates/glance-api.conf.j2 index 7d47439f81..b853411d79 100755 --- a/ansible/roles/glance/templates/glance-api.conf.j2 +++ b/ansible/roles/glance/templates/glance-api.conf.j2 @@ -17,7 +17,7 @@ show_image_direct_url= True {% endif %} [database] -connection = mysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }} +connection = mysql+pymysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/glance/templates/glance-registry.conf.j2 b/ansible/roles/glance/templates/glance-registry.conf.j2 index a5970a82e5..be36a7851c 100755 --- a/ansible/roles/glance/templates/glance-registry.conf.j2 +++ b/ansible/roles/glance/templates/glance-registry.conf.j2 @@ -11,7 +11,7 @@ use_syslog = True syslog_log_facility = LOG_LOCAL0 [database] -connection = mysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }} +connection = mysql+pymysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/heat/templates/heat.conf.j2 b/ansible/roles/heat/templates/heat.conf.j2 index a57c617e3e..522fe9b95a 100644 --- a/ansible/roles/heat/templates/heat.conf.j2 +++ b/ansible/roles/heat/templates/heat.conf.j2 @@ -33,7 +33,7 @@ bind_port = {{ heat_api_cfn_port }} {% endif %} [database] -connection = mysql://{{ heat_database_user }}:{{ heat_database_password }}@{{ heat_database_address }}/{{ heat_database_name }} +connection = mysql+pymysql://{{ heat_database_user }}:{{ heat_database_password }}@{{ heat_database_address }}/{{ heat_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/ironic/templates/ironic.conf.j2 b/ansible/roles/ironic/templates/ironic.conf.j2 index 6c358aa26c..eebc1650e3 100644 --- a/ansible/roles/ironic/templates/ironic.conf.j2 +++ b/ansible/roles/ironic/templates/ironic.conf.j2 @@ -16,7 +16,7 @@ clean_nodes = false {% endif %} [database] -connection = mysql://{{ ironic_database_user }}:{{ ironic_database_password }}@{{ ironic_database_address }}/{{ ironic_database_name }} +connection = mysql+pymysql://{{ ironic_database_user }}:{{ ironic_database_password }}@{{ ironic_database_address }}/{{ ironic_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/keystone/templates/keystone.conf.j2 b/ansible/roles/keystone/templates/keystone.conf.j2 index 80c29b6dd1..a51cd13cd2 100644 --- a/ansible/roles/keystone/templates/keystone.conf.j2 +++ b/ansible/roles/keystone/templates/keystone.conf.j2 @@ -7,4 +7,4 @@ use_syslog = True admin_token = {{ keystone_admin_token }} [database] -connection = mysql://{{ keystone_database_user }}:{{ keystone_database_password }}@{{ keystone_database_address }}/{{ keystone_database_name }} +connection = mysql+pymysql://{{ keystone_database_user }}:{{ keystone_database_password }}@{{ keystone_database_address }}/{{ keystone_database_name }} diff --git a/ansible/roles/magnum/templates/magnum.conf.j2 b/ansible/roles/magnum/templates/magnum.conf.j2 index 47b2e5881b..d3beeab5e8 100644 --- a/ansible/roles/magnum/templates/magnum.conf.j2 +++ b/ansible/roles/magnum/templates/magnum.conf.j2 @@ -12,7 +12,7 @@ host = {{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['addr {% endif %} [database] -connection = mysql://{{ magnum_database_user }}:{{ magnum_database_password }}@{{ magnum_database_address}}/{{ magnum_database_name }} +connection = mysql+pymysql://{{ magnum_database_user }}:{{ magnum_database_password }}@{{ magnum_database_address}}/{{ magnum_database_name }} [heat_client] region_name = {{ openstack_region_name }} diff --git a/ansible/roles/murano/templates/murano.conf.j2 b/ansible/roles/murano/templates/murano.conf.j2 index e36d92ff6f..fe45bb0895 100644 --- a/ansible/roles/murano/templates/murano.conf.j2 +++ b/ansible/roles/murano/templates/murano.conf.j2 @@ -13,7 +13,7 @@ bind_port = {{ murano_api_port }} {% endif %} [database] -connection = mysql://{{ murano_database_user }}:{{ murano_database_password }}@{{ murano_database_address }}/{{ murano_database_name }} +connection = mysql+pymysql://{{ murano_database_user }}:{{ murano_database_password }}@{{ murano_database_address }}/{{ murano_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/neutron/templates/neutron.conf.j2 b/ansible/roles/neutron/templates/neutron.conf.j2 index ccfc8c0f32..a80349cc52 100644 --- a/ansible/roles/neutron/templates/neutron.conf.j2 +++ b/ansible/roles/neutron/templates/neutron.conf.j2 @@ -47,7 +47,7 @@ rabbit_hosts = {% for host in groups['rabbitmq'] %}{{ hostvars[host]['ansible_' root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf [database] -connection = mysql://{{ neutron_database_user }}:{{ neutron_database_password }}@{{ neutron_database_address }}/{{ neutron_database_name }} +connection = mysql+pymysql://{{ neutron_database_user }}:{{ neutron_database_password }}@{{ neutron_database_address }}/{{ neutron_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/ansible/roles/nova/templates/nova.conf.j2 b/ansible/roles/nova/templates/nova.conf.j2 index fac1f863bb..781d8dba1a 100644 --- a/ansible/roles/nova/templates/nova.conf.j2 +++ b/ansible/roles/nova/templates/nova.conf.j2 @@ -119,7 +119,7 @@ username = neutron password = {{ neutron_keystone_password }} [database] -connection = mysql://{{ nova_database_user }}:{{ nova_database_password }}@{{ nova_database_address }}/{{ nova_database_name }} +connection = mysql+pymysql://{{ nova_database_user }}:{{ nova_database_password }}@{{ nova_database_address }}/{{ nova_database_name }} [keystone_authtoken] auth_uri = http://{{ kolla_internal_address }}:{{ keystone_public_port }} diff --git a/docker/openstack-base/Dockerfile.j2 b/docker/openstack-base/Dockerfile.j2 index 8532c4e3df..7d87a4bd2f 100644 --- a/docker/openstack-base/Dockerfile.j2 +++ b/docker/openstack-base/Dockerfile.j2 @@ -26,6 +26,7 @@ RUN yum -y install \ python-manilaclient \ python-mistralclient \ python-muranoclient \ + python-PyMySQL \ python-pip \ python-saharaclient \ python-swiftclient \ @@ -33,7 +34,6 @@ RUN yum -y install \ python-tuskarclient \ python-zaqarclient \ python-openstackclient \ - MySQL-python \ python-keystoneauth1 \ && yum clean all @@ -100,7 +100,7 @@ RUN ln -s openstack-base-source/* /requirements \ python-tuskarclient \ python-zaqarclient \ python-openstackclient \ - MySQL-python \ + pymysql \ python-memcached \ six ENV PATH /var/lib/kolla/venv/bin:$PATH