summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2019-01-23 05:44:54 +0000
committerGerrit Code Review <review@openstack.org>2019-01-23 05:44:55 +0000
commit1c9e934a45f7776bec0863b0e64409f8a2402555 (patch)
treef15a0b2caa9f5828c6451beeda9a594a14ffd5d4
parenteee7ea5ea286140ac3461d77e1c33ba54649b0ca (diff)
parentd9a8625186463776978997ebdc6b30924aaaa58a (diff)
Merge "Add spec for Huawei iBMC driver"
-rw-r--r--specs/approved/ibmc-driver.rst177
l---------specs/not-implemented/ibmc-driver.rst1
2 files changed, 178 insertions, 0 deletions
diff --git a/specs/approved/ibmc-driver.rst b/specs/approved/ibmc-driver.rst
new file mode 100644
index 0000000..c6db072
--- /dev/null
+++ b/specs/approved/ibmc-driver.rst
@@ -0,0 +1,177 @@
1..
2 This work is licensed under a Creative Commons Attribution 3.0 Unported
3 License.
4
5 http://creativecommons.org/licenses/by/3.0/legalcode
6
7**********************
8Huawei iBMC Driver
9**********************
10
11https://storyboard.openstack.org/#!/story/2004635
12
13This specification proposes to add new interfaces that provide Ironic support
14to Huawei iBMC 2288H V5, CH121 V5 series servers.
15
16Problem description
17===================
18
19Huawei’s Intelligent Baseboard Management System (iBMC) is an embedded server
20management system that is used to manage servers throughout their lifecycle.
21It provides a series of management tools for hardware status monitoring,
22deployment, energy savings, and security protection.
23
24In addition to managing the nodes using IPMI protocol, this specification
25proposes to add hardware types and interfaces to manage Huawei servers using
26iBMC REST API.
27
28Proposed change
29===============
30New hardware type named *ibmc* will be added as part of this change.
31New power, management and vendor interfaces will be implemented for
32the *ibmc* hardware.
33
34The interfaces use iBMC REST API to communicate with iBMC.
35The interfaces used are:
36
37 * iBMC.IBMCPower for Power operations
38 * iBMC.IBMCManagement for Management operations
39 * iBMC.IBMCVendor for Vendorspecific operations
40
41* Power:
42
43 This feature allows the user to turn the node on/off or reboot by using the
44 power interface which will in turn call iBMC REST API.
45
46* Management:
47
48 This feature allows the user to get and set the primary boot device of the
49 Huawei servers, and to get the supported boot devices.
50
51* Vendor:
52
53 This feature allows the user to perform vendor specific operations.
54 For example, query the boot up sequence of the Huawei servers.
55
56.. code-block:: bash
57
58 $ openstack baremetal node passthru call --http-method GET \
59 <node id or node name> boot_up_seq
60 $ ["Pxe", "Hdd", "Cd", "Others"]
61
62
63Alternatives
64------------
65None
66
67Data model impact
68-----------------
69None
70
71RPC API impact
72--------------
73None
74
75State Machine Impact
76--------------------
77None
78
79REST API impact
80---------------
81None
82
83Client (CLI) impact
84-------------------
85None
86
87Driver API impact
88-----------------
89None
90
91Nova driver impact
92------------------
93None
94
95Security impact
96---------------
97None
98
99Other end user impact
100---------------------
101None
102
103Scalability impact
104------------------
105None
106
107Performance Impact
108------------------
109None
110
111Ramdisk impact
112--------------
113None
114
115Other deployer impact
116---------------------
117The following driver_info fields are required while enrolling node into Ironic:
118
119 * ibmc_address: The URL address to the ibmc controller, example: https://example.com
120 * ibmc_username: User account with admin/server-profile access privilege
121 * ibmc_password: User account password
122 * ibmc_verify_ca(optional): Whether to verify the host certificate or the
123 path of a certificate file or directory with trusted certificates
124
125Developer impact
126----------------
127None
128
129Implementation
130==============
131
132Assignee(s)
133-----------
134
135Primary assignee:
136
137* QianBiao Ng (iampurse@vip.qq.com)
138* Bill Chan (biaocy91@gmail.com)
139
140Other contributors:
141 None
142
143
144Work Items
145----------
146* Add new iBMC hardware type, and adding new interfaces for Power,
147 Management and Vendor.
148
149* Writing appropriate unit tests to provide test coverage for iBMC driver.
150
151* Writing configuration documents.
152
153* Building a third party CI.
154
155Dependencies
156============
157* Use python-ibmcclient library (not released) to communicate
158 with HUAWEI iBMC REST API.
159
160Testing
161=======
162* Unit tests will be implemented for new iBMC driver.
163
164* Third party CI will be provided.
165
166Upgrades and Backwards Compatibility
167====================================
168None
169
170Documentation Impact
171====================
172* Updating Ironic documentation section `Enabling Drivers`
173 with iBMC related instructions.
174
175References
176==========
177None
diff --git a/specs/not-implemented/ibmc-driver.rst b/specs/not-implemented/ibmc-driver.rst
new file mode 120000
index 0000000..f3b49cc
--- /dev/null
+++ b/specs/not-implemented/ibmc-driver.rst
@@ -0,0 +1 @@
../approved/ibmc-driver.rst \ No newline at end of file