SNMP timeout and retries are now configurable through ironic.conf. This
allows to have custom configurations when certain PDUs are slower than
others.
The config defaults are the same defaults that cmdgen.UdpTransportTarget
uses (1.0 second timeout and 5 retries). The config is now reflecting
these defaults.
Closes-Bug: #1640932
Change-Id: I2490902ad2e39e8e4dc34484799a0dae96bc57f8
This change fixes an issue that caused a node using a Dell EMC
integrated Dell Remote Access Controller (iDRAC) classic driver,
'pxe_drac' or 'pxe_drac_inspector', to be placed in the 'clean failed'
state after a double manage/provide cycle, instead of the 'available'
state.
The deploy interface implementation used by iDRAC classic drivers has
been class ironic.drivers.modules.drac.deploy.DracDeploy, which is
derived from class ironic.drivers.modules.iscsi_deploy.ISCSIDeploy. The
only difference between them is that DracDeploy overrides the
prepare_cleaning() method to prevent the booting of the Ironic Python
Agent (IPA) ramdisk when only out-of-band RAID clean steps are
requested. However, it caused the issue and did not have its intended
effect, because Ironic Conductor boots the ramdisk regardless. The
Ironic Conductor should be modified to preclude the booting of the IPA
ramdisk fix, rather than leaving it to individual drivers.
The iDRAC classic drivers' deploy interface implementation has been
changed to ISCSIDeploy. Since class DracDeploy is no longer needed, its
source code and automated tests have been removed.
Change-Id: Ib2c9b7f9f780aaf5f6345825b1f6c9ddb4f9c41f
Closes-Bug: #1676387
Related-Bug: #1572529
Related-Bug: #1705741
This removes a lot of information from the release notes, since it was
too verbose. Instead, it links to the iRMC driver documentation that
includes the details of this feature.
This is a follow up to 70530f9a668af6d59a3e72c230592a4b0dc2a1b8
Change-Id: I6d25baf1e89a95734316c663cd0961399436ab9e
Partial-Bug: #1677436
This commit updates the proliantutils version required in
Ironic to 2.4.0 for Pike release. This version of
proliantutils includes the following:
1. Support for Gen10 servers using Redfish protocol.
2. ``local_gb`` defaults to 0 (zero) when no disk could be
discovered during inspection.
3. Provides one-pass disk erase support using HPE SSA CLI when
sanitize disk erase not supported for Proliant hardware
manager in IPA.
Change-Id: Id8eb962854d994f8a23921d4195c7af1ffb00760
The feature works now, so we can remove uncertaincy from the docs. Also adds
an upgrade release note to populate the resource_class field before the upgrade.
Change-Id: I22234aafdd195dd76c621b93042a67cdb36f3e65
Doing so would confuse nova-scheduler, and may result in attempts
to schedule a new instance on such node. The API version is not
updated, as this behavior is broken already, we're just moving
the breakage to the API level.
Change-Id: I758587d36c927c8eed852170728f6267ae18f001
This patch enables iRMC virtual media boot interface to configure
remote boot. When a node is set up for boot-from-volume, this
interface registers volume boot information via out-of-band network.
This interface supports iSCSI and FibreChannel.
For the configuration, some extra parameters of volume connectors are
required by python-scciclient. These parameters should be set to
node's driver_info by an operator.
Partial-Bug: #1677436
Change-Id: I387ae9382ebc561bc721dcfed6416b25f4809183
This extends the upgrade guide with information on how to perform
a rolling upgrade with minimal downtime. It also adds a new section
for offline (cold) upgrades.
Partial-bug: #1526283
Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
Change-Id: If7f41ccbfd8d3128a142cd6e4f090c5c9825cf60
This patch adds secure boot support for irmc-pxe boot interface as
follows:
- Implement secure boot support for irmc-pxe boot interface
- Update version of python-scciclient supporting secure boot
- Update irmc-pxe driver documentation
Change-Id: Ie82ff07421d23b5c0d26e2d2fbde33fc9f8e3c42
Partial-Bug: #1694649
With the proposal to solve the bug that PXE interface should
be using non-persistent boot for cleaning/deploying phases as
default(commit: c7091fb8e2898e526f8ce242f50096a2cabeb1fa), it's
necessary to create a flag to enable persistent behavior when
you set the boot device.
This flag will override a non-persistent behavior in the
cleaning and deploy process.
Change-Id: I1f47393c17a3f5319fffd963ec0a016b41865c5d
Closes-Bug: 1703945
Co-Authored-By: Stenio Araujo <steniaraujo@lsd.ufcg.edu.br>
This adds the new command 'ironic-dbsync online_data_migrations'.
To limit downtime during upgrades, data migrations will be done online
with migration scripts that could be run during normal operation of an
ironic cluster, after the upgrade but before the next one.
Each migration script should ensure that all related DB records are
migrated to the new format. Scripts can detect the format based on
the object version which is stored in the version column.
The online data migration has one script; a function that backfills
the new version column, using versions of objects from the release
prior to this.
This includes code to check the object versions for compatibility with
an ironic release. However, the check is turned off (and will be turned on
in Queens), since we need to boot-strap the new version column before
we can turn the check on. To do this check, we need to keep a list of all
supported versions for every object; release_mapping.RELEASE_MAPPING was
modified so that the object versions is now a list instead of one value.
Change-Id: I1a9fa829951ecf98cae6896d82ba20cf89062394
Closes-Bug: #1585141
Partial-bug: #1526283
Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
Adds hardware type 'oneview' for HPE OneView supported
servers. 'oneview' hardware type supports deploy interfaces:
'oneview-iscsi' and 'oneview-direct' based on 'iscsi' and
'direct' deploy interfaces respectively, using 'pxe' boot.
Change-Id: I0e32f235d985016bac0272d4ad3c8edd9edda3c7
Closes-Bug: #1705544
SSH drivers are being unsupported for about a year now. All current
stable branches of ironic are officially supporting IPMI-capable HW
simulation via virtualbmc.
All ironic-related gate jobs have already been switched
to not use or enable those drivers.
This patch finally removes SSH-based power and managemtnt driver interfaces
and all classic drivers using those from ironic code and documentation.
Related exceptions and `ssh_connect` function, together with dependency
on `paramiko` package are removed as well.
Change-Id: Ieda7249b9cd78e3be1eff37804996295fc8d3969
Closes-Bug: #1570301
Depends-On: I9b60c9fa24652e9e64e787cd4e5b0152f51e7a28
ironic collects ramdisk logs from agent, and save it to
/var/log/ironic/deploy.
The time stamp part of log filename is formatted as '%Y-%m-%d-%H:%M:%S',
as an example:
7b52d13a-9372-448d-9252-fffbaf2db942_1fb52a75-04b6-4c73-80c4-\
8d49dc30f650_2017-07-06-09:03:18.tar.gz
The colon is not handled properly by tar, it fails to untar a file
with colon in file name.
This patch provides a workaround by changing colon with dash in time
stamp.
Closes-Bug: #1702672
Change-Id: I1d60939768ffa75de050aa309a3203de553ae877
The new field 'physical_network' was added to Port in version
1.7, and port creation was moved from the API to the conductor
service in commit 9e3f4121865807294dd3768b095b67eb01ef539e.
This change adds a method can_send_create_port() to the conductor
RPCAPI that allows the caller to determine whether the conductor is able
to create ports. During a rolling upgrade this may return False, and the
API will need to determine whether it is able to create the port locally
as was done previously.
The create_port RPC method was added to support validation of the
physical_network field of ports in portgroups. A port may therefore be
safely created in the API service if it is not a member of a portgroup.
If the port being created is a member of a portgroup, then it cannot be
safely validated by the API service and the request must be rejected.
Change-Id: I8c417cba085f61c3d2ffe1f7e97c64fa85a014cb
Related-Bug: #1666009
Related-Bug: #1526283
This fix changes the log level of a message to 'info'. The message
is related to deletion of swift temporary object when object is not
found on the swift. The swift temporary object being attempted for
delete has a expiration time hence this message need not be of
'warning' level.
Change-Id: I7ac52bd0e1ef61d35722dce352e6bc1844d3d2d2
Closes-Bug: #1629286
This patch removes the agent mixin interface from oneview
drivers and adds a flag based solution instead. Once a set
boot device operation needs to be performed, the operation
is stored to driver_internal_info until the server power
on. Before power the server on again, the operation stored
is performed and then the server is powered on.
Change-Id: I8dabf7ef1ff6e44c062310c5cb3509e545585c0a
Closes-Bug: #1503855