The current is-iDRAC-ready timeout is set to 24 iterations times a
delay of 10 seconds, or 4 minutes. This timeout is too short for 12G
and 13G hardware as operations against the iDRAC will frequently
timeout if the iDRAC is not in a ready state.
This patch increases the number of iterations to 48, which bumps the
timeout up to 8 minutes. This increased timeout is sufficient for the
iDRAC on 14G, 13G, and 12G hardware to become ready and therefore avoid
a timeout exception.
Change-Id: I9dc476d3c28475919404077875f04fd006d4464a
Closes-Bug: 1718277
Web Services Management (WS-Management and WS-Man) requests/commands can
fail or return invalid results when issued to an integrated Dell Remote
Access Controller (iDRAC) whose Lifecycle Controller remote service is
not "ready". Specifically, that applies to the WS-Man Enumerate and
Invoke operations.
A Dell technical white paper [0], "Lifecycle Controller Integration --
Best Practices Guide", states that for Lifecycle Controller firmware
1.5.0 and later "The Lifecycle Controller remote service must be in a
'ready' state before running any other WSMAN commands." That applies to
almost all of the workflows and use cases documented by that paper and
supported by this project, openstack/python-dracclient. That document
describes how to determine the readiness of the Lifecycle Controller
remote service.
This patch parameterizes the iDRAC is ready retry behavior at the class
level. That makes it possible for consumers of this project, such as
project openstack/ironic, to configure it library API-wide.
Additionally, this patch improves the names of the parameters to class
__init__() methods that control the retry behavior on SSL errors, so
that they are not confused with those added by this patch. Finally, it
defines constants for the default values of the retry behavior on SSL
errors and iDRAC is ready retry parameters, and utilizes those new
constants.
[0]
http://en.community.dell.com/techcenter/extras/m/white_papers/20442332
Change-Id: Ie866466a8ddf587a24c6d25ab903ec7b24022ffd
Partial-Bug: #1697558
Related-Bug: #1691272
Related-Bug: #1691808
- dict for PrimaryStatus is moved to constants
- inventory.Memory has its size renamed to size_mb
- job.Job has its state renamed to status
- raid.PhysicalDisk and raid.VirtualDisk have their state and raid_state
renamed to status and raid_status
Change-Id: I0fc8450d13a8f0de271f4e14b770bf5497e19b8e