* Create two tenants with own networks.
* Boot 2 baremetal instances in the same IP subnet in
different tenants.
* Verify L3 connectivity between instances IP's
* Verify L3 connectivity between instances floating IP's
Co-Authored-By: Vasyl Saienko (vsaienko@mirantis.com)
Change-Id: I4fe31ecae3393abc2779a5e80e348899f9113f1b
Related-Bug: 1520230
The guide shows how to setup Devstack with Ironic multitenancy
and ``networking-generic-switch`` Neutron ML2 driver.
Depends-On: If2fb996783b9ac26a5bae2aadd6387207750def9
Change-Id: I24ef394536e5109cf1499ec87f6a495063a87f5d
Closes-bug: #1526403
This change allows to configure ironic provision network by setting
IRONIC_PROVISION_NETWORK_NAME variable. In this case additional
interface $OVS_PHYSICAL_BRIDGE.$IRONIC_PROVISION_SEGMENTATION_ID
will be configured with IRONIC_PROVISION_SUBNET_GATEWAY ip address.
Additional configuration parameters are:
IRONIC_PROVISION_PROVIDER_NETWORK_TYPE
IRONIC_PROVISION_SEGMENTATION_ID
IRONIC_PROVISION_ALLOCATION_POOL
IRONIC_PROVISION_SUBNET_GATEWAY
IRONIC_PROVISION_SUBNET_PREFIX
Change-Id: I619f2fb92aafe7348b0a47eaaaad1790df5ae5c7
Partial-bug: #1526403
When VM is dirrectly connected to OVS (current setup) there is no port
in OVS when VM is in powered off state. Since Ironic plug port to
network when VM is in powered-off state. Port should be present in OVS
even when VM is powered-off.
This patch adds additional network bridge called br-$VM_NAME for each
VM. Adds additional interface ovs-$VM_NAME which is added to both OVS
and br-$VM_NAME. And configures VM NIC in br-$VM_NAME instead of direct
connection to OVS switch.
Now connection looks like:
Linux Bridge OVS
-------- ----------- ---------
| vm-1 | <--> | br-vm-1 | <---> | br-bm |
-------- ----------- ---------
Change-Id: I317dd9429684a14d16ecf2887d45c2b014e36a84
Partial-bug: #1526403
This commit adds new fields to port object:
- port.pxe_enabled: indicates whether pxe is enabled or disabled
for this port
- port.local_link_connection: contains the port binding profile.
Partial-bug: #1526403
Co-Authored-By: Jenny Moorehead <jenny.moorehead@sap.com>
Co-Authored-By: Will Stevenson <will.stevenson@sap.com>
Co-Authored-By: Vasyl Saienko <vsaienko@mirantis.com>
Co-Authored-By: Vladyslav Drok <vdrok@mirantis.com>
Co-Authored-By: Zhenguo Niu <Niu.ZGlinux@gmail.com>
Change-Id: Ie655fd59b06de7b84fba3b438d5e4c2ecd8075c3
This patch consumes the plumbing work for network interfaces and thus
provides support for tenant network isolation for baremetal.
Partial-bug: #1526403
Co-Authored-By: Vasyl Saienko <vsaienko@mirantis.com>
Co-Authored-By: Vladyslav Drok <vdrok@mirantis.com>
Co-Authored-By: Sivaramakrishna Garimella <sivaramakrishna.garimella@hp.com>
Change-Id: I2f0a508973ff2f674c16f91d5dc440f9e8e667bf
This patch adds a 'neutron' network interface. This interface
supports separate networks for provisioning and for cleaning of nodes.
Partial-bug: #1526403
Co-Authored-By: Vladyslav Drok <vdrok@mirantis.com>
Change-Id: Ia3442ab3536a1a8d8839b24dbfc640b818450350
This change also introduces two network interfaces:
* flat: Copies current neutron DHCP provider logic to work with
cleaning ports;
* noop: noop interface.
The default value of the network_interface is None, meaning that the
node will be using the default network interface. The default network
interface is determined the following way:
* if [DEFAULT]default_network_interface configuration option is set
(the default for it is None), the specified interface becomes the
default for all nodes;
* if it is not set, 'flat' interface will be used if the deployment
currently uses 'neutron' DHCP provider, otherwise 'noop' interface
will be used.
create_cleaning_ports and delete_cleaning_ports methods of the DHCP
providers are still being called in case of out-of-tree DHCP
providers, but this possibility will be removed completely in the
next release. If the DHCP provider logic is rewritten into a custom
network interface, please remove those methods from the provider, so
that network interface is called instead.
Partial-bug: #1526403
Co-Authored-By: Om Kumar <om.kumar@hp.com>
Co-Authored-By: Vasyl Saienko <vsaienko@mirantis.com>
Co-Authored-By: Sivaramakrishna Garimella <sivaramakrishna.garimella@hp.com>
Co-Authored-By: Vladyslav Drok <vdrok@mirantis.com>
Co-Authored-By: Zhenguo Niu <Niu.ZGlinux@gmail.com>
Change-Id: I0c26582b6b6e9d32650ff3e2b9a3269c3c2d5454
This change set increases baremetal VM RAM from 1024 to 1280 in
devstack script to support Coreos ramdisk version.
Change-Id: Ic93807e20d6fe3ba3a7a9f78c0a8887d1c54aa19
Closes-bug: #1602277
Some drivers require glance with swift backend to
be able to store some deployment artifacts, e.g.
in case of iscsi_ilo driver it may be boot_iso that
is constructed from user image kernel and ramdisk.
This requires some configuration and this change is
intended for such drivers.
This commit adds a new config variable
IRONIC_CONFIGURE_GLANCE_WITH_SWIFT, which can be
set to True to configure the Swift related config
parameters of [glance] section in ironic.conf.
This patch is required for iLO ThirdParty CI.
Change-Id: I1bad2b06b268825e181b7b3125d08c977f54f7b8
This commit adds support for building and uploading
an ISO image for deploy ramdisk. This is used by
some drivers in Ironic today. A new variable
IRONIC_DEPLOY_ISO_REQUIRED=true can be set in localrc
to create and upload ISO image for the deploy ramdisk.
This patch is required for iLO ThirdParty CI.
Closes-Bug: 1510914
Change-Id: I03a31490323b4bff9700146844a7009212840c60
It's left over from the dracclient refactor patches. Should have been
removed in 51a73e11c2f6bad0302cefcd8380f6ccbc757907.
Change-Id: I52a520971dfc3dfd2ba20c9620c303697adc02dd
When an exception was caught and rethrown, it should call 'raise'
without any arguments because it shows the place where an exception
occured initially instead of place where the exception re-raised.
Change-Id: I98c11a0dd394c122cc3f3ade0ba651f99aec1530
In case of ports, it is also added to the API, as a readonly field.
It will be used for any port-specific internal information ironic
needs to store inside the port object. In this change we start using
it to store UUIDs of the cleaning ports that ironic creates, instead
of fiddling with port.extra['vif_port_id'], as extra is intended for
operator use only.
Partial-bug: #1526403
Change-Id: Ib62c3e32305619d0c55f8ec7e45b067f0f0b32d4
Currently, mock side_effect is iterated form because of bug #1473381,
but this bug has been fixed already.
This patch set reverts it to previous form.
Change-Id: Iff81effb75179be20c3f87b718a1509af51435bf
Closes-Bug: #1473383
This corrects the presentation of section
``Enabling the configuration drive (configdrive)``
to improve the readability.
Change-Id: Iff480d8a45da76f4ec96835b02ebd5cb61774b80
Co-Authored-By: Devananda van der Veen <devananda.vdv@gmail.com>