12.0.10 to 13.0.1 Neutron database migration failure
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack-Ansible |
Expired
|
High
|
Unassigned |
Bug Description
During an upgrade from 12.0.10 to 13.0.1, I experienced the following failure:
TASK: [os_neutron | Perform a Neutron DB online upgrade (expand)] *************
skipping: [infra02_
skipping: [compute01]
skipping: [compute02]
skipping: [infra03_
skipping: [infra02_
skipping: [infra03_
failed: [infra01_
stderr: No handlers could be found for logger "oslo_config.cfg"
INFO [alembic.
INFO [alembic.
Traceback (most recent call last):
File "/openstack/
sys.
File "/openstack/
return_val |= bool(CONF.
File "/openstack/
run_
File "/openstack/
script_
File "/openstack/
util.
File "/openstack/
module = load_module_
File "/openstack/
mod = imp.load_
File "/openstack/
run_
File "/openstack/
context.
File "<string>", line 8, in run_migrations
File "/openstack/
self.
File "/openstack/
for step in self._migration
File "/openstack/
script.
File "/openstack/
raise DuplicateL3HARo
1df244e556f5_
FATAL: all hosts have already failed -- aborting
PLAY RECAP *******
to retry, use: --limit @/root/
cinder01 : ok=86 changed=10 unreachable=0 failed=0
cinder02 : ok=86 changed=9 unreachable=0 failed=0
compute01 : ok=174 changed=37 unreachable=0 failed=0
compute02 : ok=174 changed=35 unreachable=0 failed=0
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra01_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra02_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
infra03_
Here is the router list, including the router MyFourRouter it is complaining about:
root@infra01-
+------
| id | name | external_
+------
| 0b7ea3fd-
| e127cd16-
| | | "enable_snat": true, "external_
| | | "52152718-
| | | "fd32:4580:
+------
A look at the port bindings table:
MariaDB [neutron]> select * from ml2_port_bindings;
+------
| port_id | host | vif_type | vnic_type | profile | vif_details |
+------
| 023343ae-
| 18a3ee27-
| 20e04c9a-
| 33a04ddb-
| 432b359b-
| 5218ba18-
| 6c5ca1f4-
| 72a73e64-
| 770e3b5b-
| 79b8e7f4-
| 92706bac-
| 93eb86ea-
| ab10f710-
| be7dd04a-
| c9a85728-
| ca45f119-
| cc1277df-
| f3883c8b-
+------
The ports marked as HA ports belong to the MyFourRouter router that has not yet been assigned a gateway and has not yet been scheduled as a result. Thus, the ports are unbound and no host is set. Below are the details of the ports:
root@infra01-
+------
| Field | Value |
+------
| admin_state_up | True |
| allowed_
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | 0b7ea3fd-
| device_owner | network:
| dns_assignment | {"hostname": "host-169-
| dns_name | |
| extra_dhcp_opts | |
| fixed_ips | {"subnet_id": "f33da905-
| id | 92706bac-
| mac_address | fa:16:3e:a1:e8:ec |
| name | HA port tenant b4d44d8a3f4844c
| network_id | b46a9f9c-
| port_security_
| security_groups | |
| status | DOWN |
| tenant_id | |
+------
root@infra01-
+------
| Field | Value |
+------
| admin_state_up | True |
| allowed_
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | 0b7ea3fd-
| device_owner | network:
| dns_assignment | {"hostname": "host-169-
| dns_name | |
| extra_dhcp_opts | |
| fixed_ips | {"subnet_id": "f33da905-
| id | 93eb86ea-
| mac_address | fa:16:3e:4c:3a:0f |
| name | HA port tenant b4d44d8a3f4844c
| network_id | b46a9f9c-
| port_security_
| security_groups | |
| status | DOWN |
| tenant_id | |
+------
root@infra01-
+------
| Field | Value |
+------
| admin_state_up | True |
| allowed_
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | 0b7ea3fd-
| device_owner | network:
| dns_assignment | {"hostname": "host-169-
| dns_name | |
| extra_dhcp_opts | |
| fixed_ips | {"subnet_id": "f33da905-
| id | f3883c8b-
| mac_address | fa:16:3e:60:96:c1 |
| name | HA port tenant b4d44d8a3f4844c
| network_id | b46a9f9c-
| port_security_
| security_groups | |
| status | DOWN |
| tenant_id | |
+------
With the following commands, I reverted the router to a standalone router expecting Neutron to delete the HA ports:
root@infra01-
Updated router: MyFourRouter
root@infra01-
Updated router: MyFourRouter
root@infra01-
Updated router: MyFourRouter
MariaDB [neutron]> select * from ml2_port_bindings;
+------
| port_id | host | vif_type | vnic_type | profile | vif_details |
+------
| 023343ae-
| 18a3ee27-
| 20e04c9a-
| 33a04ddb-
| 432b359b-
| 5218ba18-
| 6c5ca1f4-
| 72a73e64-
| 770e3b5b-
| 79b8e7f4-
| ab10f710-
| be7dd04a-
| c9a85728-
| ca45f119-
| cc1277df-
+------
After rerunning the setup-openstack playbook the operation completed successfully:
root@infra01:
TASK: [os_neutron | Perform a Neutron DB online upgrade (expand)] *************
skipping: [infra03_
skipping: [compute02]
skipping: [infra02_
skipping: [compute01]
skipping: [infra03_
skipping: [infra02_
changed: [infra01_
Changed in openstack-ansible: | |
assignee: | nobody → Anton Haldin (anton-haldin) |
Changed in openstack-ansible: | |
assignee: | Anton Haldin (anton-haldin) → Kevin Carter (kevin-carter) |
status: | New → In Progress |
importance: | Undecided → High |
milestone: | none → 13.2.0 |
Changed in openstack-ansible: | |
status: | In Progress → Confirmed |
assignee: | Kevin Carter (kevin-carter) → nobody |
Changed in openstack-ansible: | |
status: | New → Incomplete |
Fix proposed to branch: stable/mitaka /review. openstack. org/312274
Review: https:/