-
Epic
-
Resolution: Unresolved
-
Normal
-
None
-
None
-
Support metadata service with
-
False
-
False
-
Committed
-
Proposed
-
Committed
-
Proposed
-
Networking; Neutron
This functionality has been added in OpenStack Neutron for ML2/OVS recently [0] (Launchpad RFE [1]).
The goal of this BZ is to track the implementation for ML2/OVN.
[0] https://review.opendev.org/q/topic:%22metadata-ipv6%22+(status:open%20OR%20status:merged)
[1] https://bugs.launchpad.net/neutron/+bug/1460177
+++ This bug was initially created as a clone of Bug #1954673 +++
+++ This bug was initially created as a clone of Bug #1741851 +++
Description of problem:
With IPv6-only tenant network cloud-init won't be able to configure instances.
We confirmed this in a reproducer (available right now if you want it).
Below are some of the output from an instance:
2019-08-15 09:46:35,970 - util.py[DEBUG]: Getting data from <class 'cloudinit.soo
urces.DataSourceOpenStack.DataSourceOpenStackLocal'> failed
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/cloudinit/sources/_init_.py", line 733
3, in find_source
if s.update_metadata([EventType.BOOT_NEW_INSTANCE]):
File "/usr/lib/python2.7/site-packages/cloudinit/sources/_init_.py", line 622
2, in update_metadata
result = self.get_data()
File "/usr/lib/python2.7/site-packages/cloudinit/sources/_init_.py", line 255
6, in get_data
return_value = self._get_data()
File "/usr/lib/python2.7/site-packages/cloudinit/sources/DataSourceOpenStack.pp
y", line 131, in _get_data
with EphemeralDHCPv4(self.fallback_interface):
File "/usr/lib/python2.7/site-packages/cloudinit/net/dhcp.py", line 57, in __ee
nter__
return self.obtain_lease()
File "/usr/lib/python2.7/site-packages/cloudinit/net/dhcp.py", line 83, in obtt
ain_lease
leases = maybe_perform_dhcp_discovery(self.iface)
File "/usr/lib/python2.7/site-packages/cloudinit/net/dhcp.py", line 135, in maa
ybe_perform_dhcp_discovery
return dhcp_discovery(dhclient_path, nic, tdir)
File "/usr/lib/python2.7/site-packages/cloudinit/net/dhcp.py", line 199, in dhh
cp_discovery
util.subp(cmd, capture=True)
File "/usr/lib/python2.7/site-packages/cloudinit/util.py", line 2068, in subp
cmd=args)
ProcessExecutionError: Unexpected error while running command.
Command: ['/var/tmp/cloud-init/cloud-init-dhcp-wgbF9P/dhclient', '-1', '-v', '-ll
f', '/var/tmp/cloud-init/cloud-init-dhcp-wgbF9P/dhcp.leases', '-pf', '/var/tmp/cc
loud-init/cloud-init-dhcp-wgbF9P/dhclient.pid', 'eth0', '-sf', '/bin/true']
Exit code: 2
Reason: -
Stdout:
Stderr: Internet Systems Consortium DHCP Client 4.2.5
Copyright 2004-2013 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/eth0/fa:16:3e:81:72:ae
Sending on LPF/eth0/fa:16:3e:81:72:ae
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8 (xid=0x60824dd
c2)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 19 (xid=0x608244
dc2)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15 (xid=0x608244
dc2)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8 (xid=0x60824dd
c2)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8 (xid=0x60824dd
c2)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x60824dd
c2)
No DHCPOFFERS received.
Unable to obtain a lease on first try. Exiting.
But somehow the instance is aware of it's new IP:
[ 119.918362] cloud-init[899]: Cloud-init v. 18.5 running 'init' at Thu, 15 Aug 2019 09:47:0 8 +0000. Up 119.86 seconds.
[ 120.034627] cloud-init[899]: ci-info: +++++++++++++++++++++++++++++++++++Net device info ++++++++++++++++++++++++++++++++++++
[ 120.092343] cloud-init[899]: ci-info: ------------------------------------------ -----------------------------+
[ 120.154315] cloud-init[899]: ci-info: | Device | Up | Address | Mask | Scope | Hw-Address |
[ 120.196936] cloud-init[899]: ci-info: ------------------------------------------ -----------------------------+
[ 120.248330] cloud-init[899]: ci-info: | eth0 | True | fe80::f816:3eff:fe81:72ae/64 | . | link | fa:16:3e:81:72:ae |
[ 120.311185] cloud-init[899]: ci-info: | lo | True | 127.0.0.1 | 255 .0.0.0 | host | . |
[ 120.379342] cloud-init[899]: ci-info: | lo | True | ::1/128 | . | host | . |
[ 120.447838] cloud-init[899]: ci-info: ------------------------------------------ -----------------------------+
fe80::f816:3eff:fe81:72ae/64 is the port created by neutron:
(overcloud) [stack@undercloud-0 ~]$ openstack port show 656fd19e-d951-407f-b45f-9e58961d7878
----------------------------------------------------------------------------------------------------------------------------+
Field | Value |
----------------------------------------------------------------------------------------------------------------------------+
admin_state_up | UP |
allowed_address_pairs | |
binding_host_id | compute-0.localdomain |
binding_profile | |
binding_vif_details | datapath_type='system', ovs_hybrid_plug='True', port_filter='True' |
binding_vif_type | ovs |
binding_vnic_type | normal |
created_at | 2019-08-15T09:44:33Z |
data_plane_status | None |
description | |
device_id | 5be04cb6-f655-4ce8-9389-efc531632811 |
device_owner | compute:nova |
dns_assignment | None |
dns_name | None |
extra_dhcp_opts | |
fixed_ips | ip_address='2a01:e34:ec29:d136:f816:3eff:fe81:72ae', subnet_id='99301d98-7eb8-4681-921f-b27d612dd7e3' |
id | 656fd19e-d951-407f-b45f-9e58961d7878 |
ip_address | None |
mac_address | fa:16:3e:81:72:ae |
name | |
network_id | e2689333-4e13-4b31-9c7e-09ef46af41cf |
option_name | None |
option_value | None |
port_security_enabled | True |
project_id | 8f66f7df99b04d8a9e55a33ae6df9813 |
qos_policy_id | None |
revision_number | 10 |
security_group_ids | b2de312b-6c4a-477d-ac29-fc8d3d2cb64f |
status | ACTIVE |
subnet_id | None |
tags | |
trunk_details | None |
updated_at | 2019-08-15T09:44:52Z |
----------------------------------------------------------------------------------------------------------------------------+
Dnsmasq is running on the controller.
Let me know if you need anything else.
Thank you.
Version-Release number of selected component (if applicable):
openstack-neutron-12.0.6-9.el7ost.noarch
How reproducible:
100%
Steps to Reproduce:
1. Configure IPv6-only tenant network setup
2. Try to spawn instances
3.
Actual results:
Instances stay localhost and can't get dhcp address
Expected results:
Instances get configured properly
Additional info:
https://bugs.launchpad.net/neutron/+bug/1460177
— Additional comment from on 2019-08-16 09:14:38 UTC —
Reproducer:
ssh root@intel-lizardhead-02.lab.bos.redhat.com
Password: Redhat01
— Additional comment from Nate Johnston on 2019-08-29 15:09:27 UTC —
There was upstream work on this as an RFE that was abandoned due to lack of interest. We can look at resuming this as an RFE.
— Additional comment from Alex Stupnikov on 2019-08-30 07:46:39 UTC —
I am wondering if we have some workaround for cloud-init (config-drive is not widely supported) for this case (without adding IPv4 network)? I guess that we need to address the issue if we don't: this could escalate quickly when more customers will learn about this limitation.
— Additional comment from Slawek Kaplonski on 2019-08-30 09:08:37 UTC —
@Alex: I don't know about any other workaround for this, except using config drive.
This is limitation which is well known since forever so I think that customers should be aware of this already.
But I also agree that we should take care of it as it's 2019 and IPv6 should be fully supported finally
— Additional comment from Slawek Kaplonski on 2021-01-18 09:28:55 UTC —
This RFE is implemented U/S now https://bugs.launchpad.net/neutron/+bug/1460177 and should be available in OSP-17
We will not backport it to the OSP-13 so I'm closing this BZ.
— Additional comment from Eran Kuris on 2021-04-28 10:04:55 UTC —
(In reply to Slawek Kaplonski from comment #5)
> This RFE is implemented U/S now
> https://bugs.launchpad.net/neutron/+bug/1460177 and should be available in
> OSP-17
> We will not backport it to the OSP-13 so I'm closing this BZ.
do we want to clone this one for OSP17?
— Additional comment from Slawek Kaplonski on 2021-04-28 14:53:20 UTC —
@Eran, I think it is good idea. So we can plan eg. testing for it and be sure that all is in place.
— Additional comment from Red Hat Bugzilla on 2021-05-30 14:51:34 UTC —
remove performed by PnT Account Manager <pnt-expunge@redhat.com>
— Additional comment from Red Hat Bugzilla on 2021-05-30 14:55:05 UTC —
remove performed by PnT Account Manager <pnt-expunge@redhat.com>
- external trackers