Check for use of IPv6 missing
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
High
|
Eldar Nugaev |
Bug Description
Please see question https:/
In revision 1034, nova/virt/
2015 if FLAGS.use_ipv6:
2016 self.iptables.
2017 ips_v6 = [ip['ip'] for (_, mapping) in network_info
2018 for ip in mapping['ip6s']]
2019
2020 for ipv6_address in ips_v6:
2021 self.iptables.
2022 '-d %s -j $%s' %
2023 (ipv6_address,
2024 chain_name))
But now it assumes the use of ipv6:
2012 ips_v6 = [ip['ip'] for (_n, mapping) in network_info
2013 for ip in mapping['ip6s']]
The default behavior for ipv6 is off (i.e. --use_ipv6 flag defaults to false). Every other use of the ip6s flag in libvirt_conn.py checks the use correctly, such as:
201 if FLAGS.use_ipv6:
202 mapping['ip6s'] = [ip6_dict()]
203 mapping['gateway6'] = network[
912 if FLAGS.use_ipv6:
913 address_v6 = mapping[
Related branches
- Matt Dietz (community): Approve
- Vish Ishaya (community): Approve
- Ilya Alekseyev: Pending requested
-
Diff: 79 lines (+25/-7)2 files modifiednova/tests/test_virt.py (+11/-1)
nova/virt/libvirt_conn.py (+14/-6)
Changed in nova: | |
assignee: | nobody → Eldar Nugaev (reldan) |
Changed in nova: | |
status: | New → In Progress |
Changed in nova: | |
importance: | Undecided → Critical |
Changed in nova: | |
status: | In Progress → Fix Committed |
Changed in nova: | |
status: | Fix Committed → In Progress |
Changed in nova: | |
importance: | Critical → High |
tags: | added: regression |
Changed in nova: | |
status: | In Progress → Fix Committed |
Changed in nova: | |
milestone: | none → diablo-1 |
Changed in nova: | |
milestone: | diablo-1 → 2011.3 |
status: | Fix Committed → Fix Released |
I added this to 773308, but because it claims to be a duplicate of this one, I figured I should add it here as well:
A very similar error appears to be happening when attempting to apply euca-authorize rules to running nodes.
If I start a new node in a group with existing rules, everything works as expected. However if I have a VM running in a group (let's say default), and I attempt to update or create a new rule in that group I receive the following exception in the nova-compute.log:
2011-05-11 19:56:48,889 ERROR nova.exception [-] Uncaught exception pymodules/ python2. 6/nova/ exception. py", line 87, in _wrap pymodules/ python2. 6/nova/ compute/ manager. py", line 205, in refresh_ security_ group_rules refresh_ security_ group_rules( security_ group_id) pymodules/ python2. 6/nova/ virt/libvirt_ conn.py" , line 1382, in refresh_ security_ group_rules driver. refresh_ security_ group_rules( security_ group_id) pymodules/ python2. 6/nova/ virt/libvirt_ conn.py" , line 2173, in refresh_ security_ group_rules refresh_ security_ group_rules( security_ group) pymodules/ python2. 6/nova/ utils.py" , line 604, in inner pymodules/ python2. 6/nova/ virt/libvirt_ conn.py" , line 2180, in do_refresh_ security_ group_rules filters_ for_instance( instance) pymodules/ python2. 6/nova/ virt/libvirt_ conn.py" , line 2044, in add_filters_ for_instance( nova.exception) : TRACE: network_ info)(nova. exception) : TRACE: File "/usr/lib/ pymodules/ python2. 6/nova/ virt/libvirt_ conn.py" , line 2018, in _filters_ for_instance info(nova. exception) : TRACE: TypeError: 'NoneType' object is not iterable pymodules/ python2. 6/nova/ rpc.py" , line 198, in _receive context= ctxt, **node_args) pymodules/ python2. 6/nova/ exception. py", line 93, in _wrap
(nova.exception): TRACE: Traceback (most recent call last):
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: return f(*args, **kw)
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: return self.driver.
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: self.firewall_
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: self.do_
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: retval = f(*args, **kwargs)
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: self.add_
(nova.exception): TRACE: File "/usr/lib/
(nova.exception): TRACE: ips_v4 = [ip['ip'] for (_n, mapping) in network_
(nova.exception): TRACE:
2011-05-11 19:56:48,890 ERROR nova [-] Exception during message handling
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/lib/
(nova): TRACE: rval = node_func(
(nova): TRACE: File "/usr/lib/
(nova): TRACE: raise Error(str(e))
(nova): TRACE: Error: 'NoneType' object is not iterable
(nova): TRACE: