Merge "Switch emphasis to hardware types in the installation guide"
This commit is contained in:
commit
4ef82a34e0
@ -92,9 +92,9 @@ instead. ::
|
|||||||
password = PASSWORD
|
password = PASSWORD
|
||||||
auth_url = http://RADOSGW_IP:8000/auth/v1
|
auth_url = http://RADOSGW_IP:8000/auth/v1
|
||||||
|
|
||||||
Make sure that if an agent_* driver is being used, edit
|
If the :ref:`direct-deploy` is being used, edit ``/etc/glance/glance-api.conf``
|
||||||
``/etc/glance/glance-api.conf`` to store the instance images in respective
|
to store the instance images in respective object store (radosgw or swift)
|
||||||
object store (radosgw or swift) as well::
|
as well::
|
||||||
|
|
||||||
[glance_store]
|
[glance_store]
|
||||||
...
|
...
|
||||||
|
@ -3,10 +3,9 @@
|
|||||||
Configure the Image service for temporary URLs
|
Configure the Image service for temporary URLs
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Some drivers of the Baremetal service (in particular, any ``agent_*`` drivers,
|
Some drivers of the Baremetal service (in particular, any drivers using
|
||||||
any new-style drivers using ``direct`` deploy interface,
|
:ref:`direct-deploy` and some virtual media drivers) require target user images
|
||||||
and some virtual media drivers) require target user images to be available
|
to be available over clean HTTP(S) URL with no authentication involved
|
||||||
over clean HTTP(S) URL with no authentication involved
|
|
||||||
(neither username/password-based, nor token-based).
|
(neither username/password-based, nor token-based).
|
||||||
|
|
||||||
When using the Baremetal service integrated in OpenStack,
|
When using the Baremetal service integrated in OpenStack,
|
||||||
|
@ -5,10 +5,9 @@ Installing ipmitool command
|
|||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
To enable one of the drivers that use IPMI_ protocol for power and management
|
To enable one of the drivers that use IPMI_ protocol for power and management
|
||||||
actions (for example, ``ipmi``, ``pxe_ipmitool`` and ``agent_ipmitool``), the
|
actions (for example, ``ipmi``), the ``ipmitool`` command must be present on
|
||||||
``ipmitool`` command must be present on the service node(s) where
|
the service node(s) where ``ironic-conductor`` is running. On most distros, it
|
||||||
``ironic-conductor`` is running. On most distros, it is provided as part
|
is provided as part of the ``ipmitool`` package. Source code is available at
|
||||||
of the ``ipmitool`` package. Source code is available at
|
|
||||||
http://ipmitool.sourceforge.net/.
|
http://ipmitool.sourceforge.net/.
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
@ -58,10 +57,9 @@ Collecting sensor data
|
|||||||
~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Bare Metal service supports sending IPMI sensor data to Telemetry with
|
Bare Metal service supports sending IPMI sensor data to Telemetry with
|
||||||
certain drivers, such as drivers ending with ``ipmitool``, ``ilo`` and
|
certain hardware types, such as ``ipmi``, ``ilo`` and ``irmc``. By default,
|
||||||
``irmc``. By default, support for sending IPMI sensor data to Telemetry is
|
support for sending IPMI sensor data to Telemetry is disabled. If you want
|
||||||
disabled. If you want to enable it, you should make the following two changes
|
to enable it, you should make the following two changes in ``ironic.conf``:
|
||||||
in ``ironic.conf``:
|
|
||||||
|
|
||||||
.. code-block:: ini
|
.. code-block:: ini
|
||||||
|
|
||||||
|
@ -202,9 +202,11 @@ steps on the ironic conductor node to configure the PXE UEFI environment.
|
|||||||
#. Make sure that bare metal node is configured to boot in UEFI boot mode and
|
#. Make sure that bare metal node is configured to boot in UEFI boot mode and
|
||||||
boot device is set to network/pxe.
|
boot device is set to network/pxe.
|
||||||
|
|
||||||
NOTE: ``pxe_ilo`` driver supports automatic setting of UEFI boot mode and
|
.. note::
|
||||||
boot device on the bare metal node. So this step is not required for
|
Some drivers, e.g. ``ilo`` and ``irmc``, support automatic setting of the
|
||||||
``pxe_ilo`` driver.
|
boot mode during deployment. This step is not required for them. Please
|
||||||
|
check :doc:`../admin/drivers` for information on whether your driver
|
||||||
|
requires manual UEFI configuration.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
For more information on configuring boot modes, see :ref:`boot_mode_support`.
|
For more information on configuring boot modes, see :ref:`boot_mode_support`.
|
||||||
|
@ -81,10 +81,10 @@ provisioning will happen in a multi-tenant environment (which means using the
|
|||||||
* TFTP
|
* TFTP
|
||||||
* egress port used for the Bare Metal service (6385 by default)
|
* egress port used for the Bare Metal service (6385 by default)
|
||||||
* ingress port used for ironic-python-agent (9999 by default)
|
* ingress port used for ironic-python-agent (9999 by default)
|
||||||
* if using the iSCSI deploy method (``pxe_*`` and ``iscsi_*`` drivers),
|
* if using :ref:`iscsi-deploy`, the ingress port used for iSCSI
|
||||||
the ingress port used for iSCSI (3260 by default)
|
(3260 by default)
|
||||||
* if using the direct deploy method (``agent_*`` drivers), the egress
|
* if using :ref:`direct-deploy`, the egress port used for the Object
|
||||||
port used for the Object Storage service (typically 80 or 443)
|
Storage service (typically 80 or 443)
|
||||||
* if using iPXE, the egress port used for the HTTP server running
|
* if using iPXE, the egress port used for the HTTP server running
|
||||||
on the ironic-conductor nodes (typically 80).
|
on the ironic-conductor nodes (typically 80).
|
||||||
|
|
||||||
|
@ -29,9 +29,11 @@ Choosing a driver
|
|||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
When enrolling a node, the most important information to supply is *driver*.
|
When enrolling a node, the most important information to supply is *driver*.
|
||||||
This can be either a *classic driver* or a *hardware type* - see
|
See :doc:`enabling-drivers` for a detailed explanation of bare metal drivers,
|
||||||
:doc:`enabling-drivers` for the difference. The ``driver list`` command can
|
hardware types and interfaces. Starting with the Pike release, we recommend
|
||||||
be used to list all drivers (of both types) enabled on all hosts:
|
the use of *hardware types* instead of *classic drivers*, since classic drivers
|
||||||
|
may be deprecated in the near future. The ``driver list`` command can be used
|
||||||
|
to list all drivers enabled on all hosts:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
@ -44,7 +46,8 @@ be used to list all drivers (of both types) enabled on all hosts:
|
|||||||
+---------------------+-----------------------+
|
+---------------------+-----------------------+
|
||||||
|
|
||||||
Starting with API version 1.31 (and ``python-ironicclient`` 1.13), you can
|
Starting with API version 1.31 (and ``python-ironicclient`` 1.13), you can
|
||||||
also list only classic or only dynamic drivers:
|
also list only classic drivers or only hardware types via the ``--type``
|
||||||
|
argument:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
@ -67,7 +70,7 @@ command:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ openstack baremetal driver property list pxe_ipmitool
|
$ openstack baremetal driver property list ipmi
|
||||||
+----------------------+-------------------------------------------------------------------------------------------------------------+
|
+----------------------+-------------------------------------------------------------------------------------------------------------+
|
||||||
| Property | Description |
|
| Property | Description |
|
||||||
+----------------------+-------------------------------------------------------------------------------------------------------------+
|
+----------------------+-------------------------------------------------------------------------------------------------------------+
|
||||||
@ -124,8 +127,7 @@ for provisioning. Some steps are shown separately for illustration purposes,
|
|||||||
and may be combined if desired.
|
and may be combined if desired.
|
||||||
|
|
||||||
#. Create a node in the Bare Metal service with the ``node create`` command.
|
#. Create a node in the Bare Metal service with the ``node create`` command.
|
||||||
At a minimum, you must specify the driver name (for example,
|
At a minimum, you must specify the driver name (for example, ``ipmi``).
|
||||||
``pxe_ipmitool``, ``agent_ipmitool`` or ``ipmi``).
|
|
||||||
|
|
||||||
This command returns the node UUID along with other information
|
This command returns the node UUID along with other information
|
||||||
about the node. The node's provision state will be ``enroll``:
|
about the node. The node's provision state will be ``enroll``:
|
||||||
@ -133,14 +135,14 @@ and may be combined if desired.
|
|||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ export OS_BAREMETAL_API_VERSION=1.11
|
$ export OS_BAREMETAL_API_VERSION=1.11
|
||||||
$ openstack baremetal node create --driver pxe_ipmitool
|
$ openstack baremetal node create --driver ipmi
|
||||||
+--------------+--------------------------------------+
|
+--------------+--------------------------------------+
|
||||||
| Property | Value |
|
| Property | Value |
|
||||||
+--------------+--------------------------------------+
|
+--------------+--------------------------------------+
|
||||||
| uuid | dfc6189f-ad83-4261-9bda-b27258eb1987 |
|
| uuid | dfc6189f-ad83-4261-9bda-b27258eb1987 |
|
||||||
| driver_info | {} |
|
| driver_info | {} |
|
||||||
| extra | {} |
|
| extra | {} |
|
||||||
| driver | pxe_ipmitool |
|
| driver | ipmi |
|
||||||
| chassis_uuid | |
|
| chassis_uuid | |
|
||||||
| properties | {} |
|
| properties | {} |
|
||||||
| name | None |
|
| name | None |
|
||||||
@ -161,7 +163,7 @@ and may be combined if desired.
|
|||||||
| provision_updated_at | None |
|
| provision_updated_at | None |
|
||||||
| maintenance | False |
|
| maintenance | False |
|
||||||
| power_state | None |
|
| power_state | None |
|
||||||
| driver | pxe_ipmitool |
|
| driver | ipmi |
|
||||||
| properties | {} |
|
| properties | {} |
|
||||||
| instance_uuid | None |
|
| instance_uuid | None |
|
||||||
| name | None |
|
| name | None |
|
||||||
@ -229,7 +231,7 @@ and may be combined if desired.
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ openstack baremetal node create --driver pxe_ipmitool \
|
$ openstack baremetal node create --driver ipmi \
|
||||||
--driver-info ipmi_username=$USER \
|
--driver-info ipmi_username=$USER \
|
||||||
--driver-info ipmi_password=$PASS \
|
--driver-info ipmi_password=$PASS \
|
||||||
--driver-info ipmi_address=$ADDRESS
|
--driver-info ipmi_address=$ADDRESS
|
||||||
@ -314,7 +316,7 @@ Adding scheduling information
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ openstack baremetal node create --driver pxe_ipmitool \
|
$ openstack baremetal node create --driver ipmi \
|
||||||
--driver-info ipmi_username=$USER \
|
--driver-info ipmi_username=$USER \
|
||||||
--driver-info ipmi_password=$PASS \
|
--driver-info ipmi_password=$PASS \
|
||||||
--driver-info ipmi_address=$ADDRESS \
|
--driver-info ipmi_address=$ADDRESS \
|
||||||
@ -510,7 +512,7 @@ The node is named 'example' in the following examples:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ openstack baremetal node create --driver agent_ipmitool --name example
|
$ openstack baremetal node create --driver ipmi --name example
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
@ -524,14 +526,14 @@ UUID interchangeably:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ openstack baremetal node create --driver agent_ipmitool --name example
|
$ openstack baremetal node create --driver ipmi --name example
|
||||||
+--------------+--------------------------------------+
|
+--------------+--------------------------------------+
|
||||||
| Property | Value |
|
| Property | Value |
|
||||||
+--------------+--------------------------------------+
|
+--------------+--------------------------------------+
|
||||||
| uuid | 71e01002-8662-434d-aafd-f068f69bb85e |
|
| uuid | 71e01002-8662-434d-aafd-f068f69bb85e |
|
||||||
| driver_info | {} |
|
| driver_info | {} |
|
||||||
| extra | {} |
|
| extra | {} |
|
||||||
| driver | agent_ipmitool |
|
| driver | ipmi |
|
||||||
| chassis_uuid | |
|
| chassis_uuid | |
|
||||||
| properties | {} |
|
| properties | {} |
|
||||||
| name | example |
|
| name | example |
|
||||||
|
@ -3,11 +3,9 @@
|
|||||||
Boot mode support
|
Boot mode support
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
The following drivers support setting of boot mode (Legacy BIOS or UEFI).
|
Most of the bare metal drivers (including the generic ``ipmi`` hardware type)
|
||||||
|
support setting of boot mode (Legacy BIOS or UEFI). The boot modes can be
|
||||||
* ``pxe_ipmitool``
|
configured in the Bare Metal service in the following way:
|
||||||
|
|
||||||
The boot modes can be configured in Bare Metal service in the following way:
|
|
||||||
|
|
||||||
* When no boot mode setting is provided, these drivers default the boot_mode
|
* When no boot mode setting is provided, these drivers default the boot_mode
|
||||||
to Legacy BIOS.
|
to Legacy BIOS.
|
||||||
|
@ -27,7 +27,7 @@ with PXE and Nova:
|
|||||||
|
|
||||||
#. Enroll the node and update the node capability value::
|
#. Enroll the node and update the node capability value::
|
||||||
|
|
||||||
openstack baremetal node create --driver pxe_ipmitool
|
openstack baremetal node create --driver ipmi
|
||||||
|
|
||||||
openstack baremetal node set $NODE_UUID --property capabilities={'trusted_boot':true}
|
openstack baremetal node set $NODE_UUID --property capabilities={'trusted_boot':true}
|
||||||
|
|
||||||
|
@ -31,34 +31,30 @@ You should make the following changes to ``/etc/ironic/ironic.conf``:
|
|||||||
for you.
|
for you.
|
||||||
|
|
||||||
If you don't use Image service, it's possible to provide images to Bare Metal
|
If you don't use Image service, it's possible to provide images to Bare Metal
|
||||||
service via hrefs.
|
service via a URL.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
At the moment, only two types of hrefs are acceptable instead of Image
|
At the moment, only two types of URLs are acceptable instead of Image
|
||||||
service UUIDs: HTTP(S) hrefs (for example, "http://my.server.net/images/img")
|
service UUIDs: HTTP(S) URLs (for example, "http://my.server.net/images/img")
|
||||||
and file hrefs (file:///images/img).
|
and file URLs (file:///images/img).
|
||||||
|
|
||||||
There are however some limitations for different drivers:
|
There are however some limitations for different hardware interfaces:
|
||||||
|
|
||||||
* If you're using one of the drivers that use agent deploy method (namely,
|
* If you're using :ref:`direct-deploy`, you have to provide the Bare Metal
|
||||||
``agent_ilo`` or ``agent_ipmitool``)
|
service with the MD5 checksum of your instance image. To compute it, you can
|
||||||
you have to know MD5 checksum for your instance image. To
|
use the following command::
|
||||||
compute it, you can use the following command::
|
|
||||||
|
|
||||||
md5sum image.qcow2
|
md5sum image.qcow2
|
||||||
ed82def8730f394fb85aef8a208635f6 image.qcow2
|
ed82def8730f394fb85aef8a208635f6 image.qcow2
|
||||||
|
|
||||||
Apart from that, because of the way the agent deploy method works, image
|
* :ref:`direct-deploy` requires the instance image be accessible through a
|
||||||
hrefs can use only HTTP(S) protocol.
|
HTTP(s) URL.
|
||||||
|
|
||||||
* If you're using ``iscsi_ilo`` or ``agent_ilo`` driver, Object Storage service
|
* Some :doc:`boot interfaces </admin/interfaces/boot>` (for example,
|
||||||
is required, as these drivers need to store floppy image that is used to pass
|
``ilo-virtual-media``) require the Object Storage service, as these
|
||||||
parameters to deployment iso. For this method also only HTTP(S) hrefs are
|
drivers need to store floppy image that is used to pass parameters
|
||||||
acceptable, as HP iLO servers cannot attach other types of hrefs as virtual
|
to deployment iso. For this method also only HTTP(S) URLs are acceptable,
|
||||||
media.
|
as HP iLO servers cannot attach other types of URLs as virtual media.
|
||||||
|
|
||||||
* Other drivers use PXE deploy method and there are no special requirements
|
|
||||||
in this case.
|
|
||||||
|
|
||||||
Steps to start a deployment are pretty similar to those when using Compute:
|
Steps to start a deployment are pretty similar to those when using Compute:
|
||||||
|
|
||||||
@ -73,10 +69,10 @@ Steps to start a deployment are pretty similar to those when using Compute:
|
|||||||
export OS_URL=http://localhost:6385/
|
export OS_URL=http://localhost:6385/
|
||||||
|
|
||||||
#. Create a node in Bare Metal service. At minimum, you must specify the driver
|
#. Create a node in Bare Metal service. At minimum, you must specify the driver
|
||||||
name (for example, "pxe_ipmitool"). You can also specify all the required
|
name (for example, ``ipmi``). You can also specify all the required
|
||||||
driver parameters in one command. This will return the node UUID::
|
driver parameters in one command. This will return the node UUID::
|
||||||
|
|
||||||
openstack node create --driver pxe_ipmitool \
|
openstack node create --driver ipmi \
|
||||||
--driver-info ipmi_address=ipmi.server.net \
|
--driver-info ipmi_address=ipmi.server.net \
|
||||||
--driver-info ipmi_username=user \
|
--driver-info ipmi_username=user \
|
||||||
--driver-info ipmi_password=pass \
|
--driver-info ipmi_password=pass \
|
||||||
@ -92,7 +88,7 @@ Steps to start a deployment are pretty similar to those when using Compute:
|
|||||||
| | u'ipmi.server.net', u'ipmi_username': u'user', u'ipmi_password': |
|
| | u'ipmi.server.net', u'ipmi_username': u'user', u'ipmi_password': |
|
||||||
| | u'******'} |
|
| | u'******'} |
|
||||||
| extra | {} |
|
| extra | {} |
|
||||||
| driver | pxe_ipmitool |
|
| driver | ipmi |
|
||||||
| chassis_uuid | |
|
| chassis_uuid | |
|
||||||
| properties | {} |
|
| properties | {} |
|
||||||
+--------------+--------------------------------------------------------------------------+
|
+--------------+--------------------------------------------------------------------------+
|
||||||
@ -112,23 +108,33 @@ Steps to start a deployment are pretty similar to those when using Compute:
|
|||||||
|
|
||||||
openstack baremetal port create $MAC_ADDRESS --node $NODE_UUID
|
openstack baremetal port create $MAC_ADDRESS --node $NODE_UUID
|
||||||
|
|
||||||
#. As there is no Compute service flavor and instance image is not provided with
|
#. You also need to specify some fields in the node's ``instance_info``:
|
||||||
nova boot command, you also need to specify some fields in ``instance_info``.
|
|
||||||
For PXE deployment, they are ``image_source``, ``kernel``, ``ramdisk``,
|
* ``image_source`` - URL of the whole disk or root partition image,
|
||||||
``root_gb``::
|
mandatory. For :ref:`direct-deploy` only HTTP(s) links are accepted,
|
||||||
|
while :ref:`iscsi-deploy` also accepts links to local files (prefixed
|
||||||
|
with ``file://``).
|
||||||
|
|
||||||
|
* ``root_gb`` - size of the root partition, mandatory.
|
||||||
|
|
||||||
|
.. TODO(dtantsur): root_gb should not be mandatory for whole disk images,
|
||||||
|
but it seems to be.
|
||||||
|
|
||||||
|
* ``image_checksum`` - MD5 checksum of the image specified by
|
||||||
|
``image_source``, only required for :ref:`direct-deploy`.
|
||||||
|
|
||||||
|
* ``kernel``, ``ramdisk`` - HTTP(s) or file URLs of the kernel and
|
||||||
|
initramfs of the target OS, only required for partition images.
|
||||||
|
|
||||||
|
For example::
|
||||||
|
|
||||||
openstack baremetal node set $NODE_UUID \
|
openstack baremetal node set $NODE_UUID \
|
||||||
--instance-info image_source=$IMG \
|
--instance-info image_source=$IMG \
|
||||||
|
--instance-info image_checksum=$MD5HASH \
|
||||||
--instance-info kernel=$KERNEL \
|
--instance-info kernel=$KERNEL \
|
||||||
--instance-info ramdisk=$RAMDISK \
|
--instance-info ramdisk=$RAMDISK \
|
||||||
--instance-info root_gb=10
|
--instance-info root_gb=10
|
||||||
|
|
||||||
Here $IMG, $KERNEL, $RAMDISK can also be HTTP(S) or file hrefs. For agent
|
|
||||||
drivers, you don't need to specify kernel and ramdisk, but MD5 checksum of
|
|
||||||
instance image is required::
|
|
||||||
|
|
||||||
openstack baremetal node set $NODE_UUID --instance-info image_checksum=$MD5HASH
|
|
||||||
|
|
||||||
#. Validate that all parameters are correct::
|
#. Validate that all parameters are correct::
|
||||||
|
|
||||||
openstack baremetal node validate $NODE_UUID
|
openstack baremetal node validate $NODE_UUID
|
||||||
|
@ -41,7 +41,7 @@ service and Bare Metal service::
|
|||||||
| last_error | None |
|
| last_error | None |
|
||||||
| created_at | 2014-11-20T23:57:03+00:00 |
|
| created_at | 2014-11-20T23:57:03+00:00 |
|
||||||
| target_provision_state | None |
|
| target_provision_state | None |
|
||||||
| driver | pxe_ipmitool |
|
| driver | ipmi |
|
||||||
| updated_at | 2014-11-21T00:47:34+00:00 |
|
| updated_at | 2014-11-21T00:47:34+00:00 |
|
||||||
| instance_info | {} |
|
| instance_info | {} |
|
||||||
| chassis_uuid | 7b49bbc5-2eb7-4269-b6ea-3f1a51448a59 |
|
| chassis_uuid | 7b49bbc5-2eb7-4269-b6ea-3f1a51448a59 |
|
||||||
|
Loading…
x
Reference in New Issue
Block a user