nova_metadata_ip option name is a bit confusing as it accepts an ip but
also a dns name (which is required when https protocol is used).
This change deprecates nova_metadata_ip option in favor of
nova_metadata_host option and updates option help to highlight that we
can use an ip or a dns name.
DocImpact
Closes-Bug: #1585699
Change-Id: Ia6c2471c7b4f3e924941222133edbb90151757a5
Per Ocata Design Summit discussion, ovs-ofctl of_interface driver
will be deprecated and removed.
Change-Id: I0d94036e25919db1197819f5fe429205b01eee33
Related-blueprint: ovs-ofctl-to-python
This option is used only when external_network_bridge is set to
non-empty value, and that other option is already marked for removal.
DocImpact The gateway_external_network_id option is deprecated and will
be removed in next releases.
Change-Id: Ie6ea9b8977a0e06d69d735532082e9e094c26534
Related-Bug: #1511578
Basically, the commit removes the file encoding - since jenkins is fine
with it, means it was really unnecessary and the change makes sense.
Change-Id: Id0821c9b11b9efad1836596c407566c9eb4dc11a
This patch enhances the tag mechanism for subnet, port, subnetpool,
router resources. The tag-ext as new extension is added so that
tag supports their resources.
APIImpact: Adds tag support to subnet, port, subnetpool, router
DocImpact: allow users to set tags on some resources
Change-Id: I3ab8c2f47f283bee7219f39f20b07361b8e0c5f1
Closes-Bug: #1661608
Starting the macvtap agent without specifying at least one
physical_interface_mappings does not make sense. As it only
supports layer2 networks (flat, vlan) an interface mapping is
mandatory. An existing agent deployment without an interface
mapping can not serve any networks to instances!
This patch terminates the agent when no mapping is
provided. As without this mapping the agent cannot serve any networks
for instances, this patch can't really break existing deployments.
UpgradeImpact Agent terminates when no physical_interface_mapping
configuration is provided.
Change-Id: I647cf4da55fda54e32b7047b84e0d7f671629fa7
Closes-Bug: #1587444
This patchset adds a ReST client for the placement API. This
client is used to update the IPv4 inventories associated with
routed networks segments. This information is used by the
Nova scheduler to decide the placement of instances in hosts,
based on the availability of IPv4 addresses in routed
networks segments
DocImpact: Adds [placement] section to neutron.conf with two
options: region_name and endpoint_type
Change-Id: I2aa614d4e6229161047b08c8bdcbca0e2e5d1f0b
Partially-Implements: blueprint routed-networks
The option was deprecated [1] for removal in Newton
and is being removed in Ocata.
[1] Deprecated in patch with Gerrit Change-Id of:
I8a5fc74a96c784d474aefe2d9b27eeb66521ca82
DocImpact remove all references to the option.
Change-Id: I3a9195ff6fd18fad9f85cec03a632e7e52d954e7
Closes-Bug: #1555042
Those hopefully are of benefit. The major bit of the change is stopping
to use prelude section for all current release notes. This is because
the section is supposed to contain global release notes, not
feature-specific.
Other tweaks are open for debate.
Change-Id: I1d5e46591195a9756ee9fd5276f163794c366528
Adds functionality to generate bash script which verifies health of current
keepalived instance by pinging all available and configured GW addresses.
This functionality supports IPv4 and IPv6 by detecting needed ping version
using netaddr.
DocImpact:
Added a new parameter to 'l3_agent.ini' named
'ha_vrrp_health_check_interval' which is by default set to 0 (disabled).
Values > 0 designate health check functionality should be enabled.
Requires allowed ICMP ECHO_REQUEST because that is disabled by default.
Co-Authored-By: Artur Korzeniewski <artur.korzeniewski@intel.com>
Change-Id: Ib4d0691f432830357ea3f113036719645bc59a62
Closes-Bug: #1365461
This will deprecate the notification_driver config setting,
and no config setting will be needed.
Also it lays down the foundation for a more decoupled interaction
with mechanism drivers.
Closes-Bug: #1657379
Related-Bug: #1627749
DocImpact
Change-Id: I2f166a43f0b980ad22617f8a3f7b4cc7f4786c48
This patch provides the Linux Bridge agent driver the ability to control
Linux Traffic Control (TC) to set the minimum required transmission rate
for an interface.
The TC library is refactored to use HTB qdiscs. This allows TC to
define, for several flows in the same interface, the maximum and the
minimum network bandwidth and the burst size.
To be able to do traffic shaping (instead of policing) for ingress
traffic, a new element, the Intermediate Functional Block device (IFB)
is introduced.
DocImpact
Partial-Bug: #1560963
Change-Id: I4d4db54519f1435068d1af38819404d1e5d9cd52
- vhost-user reconnect is a new feature added
in dpdk 16.07 and qemu 2.7.
- vhost-user reconnect allows VMs using vhost-user
interfaces to reconnect to the vhost-user backend if
the backend terminates either as a result of a graceful
shutdown or a crash with out requiring the vm to reboot.
- vhost-user reconnect requires qemu to be the vhost-user server
and ovs to be the client.
- dpdk prior to 16.07 only supports qemu client/ dpdk server mode.
- This change extends the ovs mech driver to select the correct qemu
vhost user socket mode based on the available interface types
reported by the agent.
Change-Id: Iec89eaa597311e086c5f6e8d67308d446b07ac33
Closes-Bug: #1604924
Depends-on: Ia5da5b3ef28d1b23b217adc5196199df47b54ed9
It was deprecated in Newton timeframe. Now we just clean it up from the
tree.
DocImpact: Any advertise_mtu option notions in documentation should be
removed.
UpgradeImpact: After upgrade, all DHCPv4 subnets will see the MTU option
served via corresponding DHCPv4 option. Also, all IPv6 subnets connected
to routers will see MTU set in Router Advertisement messages.
NeutronLibImpact: This patch will break any 3party plugins that directly
access the configuration option.
Change-Id: I31e15018fe764de0fe4d6de7da3c1d9f2cc1d532
Make use of oslo.privsep to support namespaces. This includes all
relevant code necessary for oslo.privsep to work.
Change ip_lib's get_routing_table method to use pyroute2, rather than
parsing the output of 'ip route'.
Change-Id: I89bfa3dbf1776da973cfca389b2841019a520f75
Partial-Bug: 1492714
Co-Authored-By: Angus Lees <gus@inodes.org>
This patch will kill processes that are listening on any port/UNIX
socket within the namespace to be cleaned up. To kill them it will
issue a SIGTERM to them (or to their parents if they were forked) and,
if they don't die after a few seconds, a SIGKILL to them and all their
children.
This is intended for those cases when there's no specific cleanup and
serves as a fallback method.
Change-Id: I4195f633ef4a1788496d1293846f19eef89416aa
Partial-Bug: #1403455
Linuxbridge agent uses iptable rules in POSTROUTING chain
in the mangle table to mark outgoing packets with the
DSCP mark value configured by the user in QoS policy.
DocImpact: DSCP Marking rule support is extended to the
Linuxbridge L2 agent
Closes-Bug: #1644369
Change-Id: I47e44cb2e67ab73bd5ee0aa4cca47cb3d07e43f3
This changes the IPAM logic for service subnets to allow DHCP ports
to be created on subnets of any service type, provided that the subnet
has DHCP enabled.. This ensures that DHCP ports can still be created
automatically on 'nova:compute' service subnets, for example.
DocImpact
Change-Id: I736262f2a7d3f3d7dfdc5276e2364aca7187d18b
Closes-Bug: #1636963
The dhcp_domain value in dhcp_agent.ini value had been
marked for deprecation in favor of using dns_domain in
neutron.conf back in Liberty [1]. Remove it.
[1] https://review.openstack.org/#/c/200952/
Change-Id: Iebde452559f88ca95713664136da1613cac9b32c
Closes-bug: #1583769
When starting the dhcp-agent after an upgrade, there could
be stale IPv6 addresses in the namespace that had been
configured via SLAAC. These need to be removed, and the
same address added back statically, in order for the
agent to start up correctly.
To avoid the race condition where an IPv6 RA could arrive
while we are making this change, we must move the call
to disable RAs in the namespace from plug(), since devices
may already exist that are receiving packets.
Uncovered by the grenade tests.
Change-Id: I7e1e5d6c1fa938918aac3fb63888d20ff4088ba7
Closes-bug: #1627902
This adds a janitor worker to the L3 DB module that
will run every 5 minutes looking for floating IP ports
with the device_id of 'PENDING'. If it finds any, it
will keep track of the port ID to see if any stay in
'PENDING' with the next iteration.
If the device ID is still PENDING after 5 minutes, it
means one of two things has happened. Either the server
died after creating the floating IP port, but before
creating the floating IP itself; or, it died after creating
the floating IP port and the floating IP record, but before
updating the device_id of the floating IP port to the
floating IP ID.
The janitor handles both cases by deleting the floating IP
port if it has no associated floating IP and by updating
the floating IP port device ID if it does have an associated
floating IP.
Related-Bug: #1540844
Closes-Bug: #1648098
Change-Id: I684a822553a5a0c54513ca7d20ccaf3c74180593
Using the loader from keystoneauth1, it is possible to easily use
keystone v3 options in [designate].
For the end user, it means she/he must specify designate.auth_type,
then she/he can specify an Keystone v3 endpoint in designate.auth_url.
Change-Id: I8bb02f11e60767dacdf6ac852979cfa82de1e08b
Closes-bug: #1585976
DocImpact
They were deprecated in Newton. This patch cleans them up.
Note: it does not mean that the features will not work anymore. On the
contrary, now API will consistently sort and paginate for plugins that
honour the relevant sorting/pagination parameters.
Note2: base resource controller still allows to pass
allow_pagination=False and allow_sorting=False parameters to disable the
features if a registered plugin does not support the features yet.
Change-Id: I5fd30b20f645846d9366740372c4815c4b33e2eb
Related-Bug: #1566514
There are still valid use cases to keep using physical_device_mappings
config option. We still want to allow neutron user to restrict physnets,
for example, if API user does not enforce compatible segments chosen for
a SR-IOV port.
This reverts commit 03b84bc920b5499e1fef23c646268fffa1d859d7.
Change-Id: Ic373a0ab62c610fae1cbdaf489ba27e9cf02ba5b
These were deprecated in https://review.openstack.org/247906
Now that Liberty is EOL we can remove these legacy entrypoints.
Closes-Bug: #1639103
Change-Id: I94e61cb219b23ce2f5d0f34dc9ae1c87650568bd
This patch updates code to use Pike as the code name:
Pike is the code name for the P release
Ocata is the code name for the O release
Change-Id: Iec8494b40fed2d427c1edf4609f8b3dd8c770dce
We rely on keepalived to send gratuitous ARPs when floating IP is added.
Older versions of keepalived up to 1.2.20 (exclusive) contain bug [1] where
keepalived does not send GARP on receiving SIGHUP. Unfortunately, newer
versions containing the fix are not packaged yet for some distributions
like RHEL or CentOS or Ubuntu Xenial, so this patch adds a workaround for
such distributions until new packages are available.
The patch also sets net.ipv4.ip_nonlocal_bind kernel parameter to 0 for
Snat and HA router namespaces in order to avoid sending gratuitous ARPs
for IP addresses that are not bound to the interface anymore - possibly
because of failover or removal. Note that kernel < 3.19 contain a bug
where this knob is missing. In case it attempts to set the parameter and
it's missing on the system, it doesn't set the knob in root
namespace like it's done for fip namespaces, but only issues a warning
message.
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1391553
Change-Id: Ieab53624dc34dc687a0e8eebd84778f7fc95dd77
Closes-bug: 1639315
The device to physnet validation is made in Nova by pci_whitelist config option.
Therefore it is redundant to validate it in Neutron with physical_device_mappings
config option.
Closes-Bug: #1640220
DocImpact
Change-Id: I5f363347b327212a49a9b78a7164c11d9e457b10