From e01ec7fe848802ee4a24d567dcaa0b1333a522af Mon Sep 17 00:00:00 2001 From: Naohiro Tamura Date: Mon, 3 Aug 2015 13:30:37 +0900 Subject: [PATCH] Add documentation for iRMC virtual media driver This commit documents the information on enabling and configuring iRMC virtual media driver(s). Change-Id: I6792d5ee7af81cc9af2151e701d5cf59879c9af5 Implements: blueprint irmc-virtualmedia-deploy-driver --- doc/source/deploy/drivers.rst | 41 +------ doc/source/drivers/irmc.rst | 219 ++++++++++++++++++++++++++++++++++ driver-requirements.txt | 2 +- 3 files changed, 223 insertions(+), 39 deletions(-) create mode 100644 doc/source/drivers/irmc.rst diff --git a/doc/source/deploy/drivers.rst b/doc/source/deploy/drivers.rst index 35da710f9f..67ea119703 100644 --- a/doc/source/deploy/drivers.rst +++ b/doc/source/deploy/drivers.rst @@ -66,45 +66,10 @@ SeaMicro driver iRMC ---- -The iRMC driver enables PXE deploy to control power via ServerView Common -Command Interface (SCCI). - -Software requirements -^^^^^^^^^^^^^^^^^^^^^ - -- Install `python-scciclient package `_:: - - $ pip install "python-scciclient>=0.1.0" - -Enabling the iRMC driver -^^^^^^^^^^^^^^^^^^^^^^^^ - -- Add ``pxe_irmc`` to the list of ``enabled_drivers in`` - ``/etc/ironic/ironic.conf`` -- Ironic Conductor must be restarted for the new driver to be loaded. - -Ironic node configuration -^^^^^^^^^^^^^^^^^^^^^^^^^ - -Nodes are configured for iRMC with PXE deploy by setting the ironic node -object's ``driver`` property to be ``pxe_irmc``. Further configuration values -are added to ``driver_info``: - -- ``irmc_address``: hostname or IP of iRMC -- ``irmc_username``: username for iRMC with administrator privileges -- ``irmc_password``: password for irmc_username -- ``irmc_port``: port number of iRMC (optional, either 80 or 443. defalut 443) -- ``irmc_auth_method``: authentication method for iRMC (optional, either - 'basic' or 'digest'. default is 'basic') - -Supported platforms -^^^^^^^^^^^^^^^^^^^ -This driver supports FUJITSU PRIMERGY BX S4 or RX S8 servers and above. - -- PRIMERGY BX920 S4 -- PRIMERGY BX924 S4 -- PRIMERGY RX300 S8 +.. toctree:: + :maxdepth: 1 + ../drivers/irmc VirtualBox drivers ------------------ diff --git a/doc/source/drivers/irmc.rst b/doc/source/drivers/irmc.rst new file mode 100644 index 0000000000..e19863e94c --- /dev/null +++ b/doc/source/drivers/irmc.rst @@ -0,0 +1,219 @@ +.. _irmc: + +============ +iRMC drivers +============ + +Overview +======== + +The iRMC driver enables control FUJITSU PRIMERGY via ServerView +Common Command Interface (SCCI). + +There are 3 iRMC drivers: + +* ``pxe_irmc``. +* ``iscsi_irmc`` +* ``agent_irmc`` + +Prerequisites +============= + +* Install `python-scciclient package `_:: + + $ pip install "python-scciclient>=0.2.0" + +Drivers +======= + +pxe_irmc driver +^^^^^^^^^^^^^^^ + +This driver enables PXE deploy and power control via ServerView Common +Command Interface (SCCI). + +Enabling the driver +~~~~~~~~~~~~~~~~~~~ + +- Add ``pxe_irmc`` to the list of ``enabled_drivers`` in ``[DEFAULT]`` + section of ``/etc/ironic/ironic.conf``. +- Ironic Conductor must be restarted for the new driver to be loaded. + +Node configuration +~~~~~~~~~~~~~~~~~~ + +* Each node is configured for iRMC with PXE deploy by setting the + following ironic node object’s properties: + + - ``driver`` property to be ``pxe_irmc`` + - ``driver_info/irmc_address`` property to be ``IP address`` or + ``hostname`` of the iRMC. + - ``driver_info/irmc_username`` property to be ``username`` for + the iRMC with administrator privileges. + - ``driver_info/irmc_password`` property to be ``password`` for + irmc_username. + - ``properties/capabilities`` property to be ``boot_mode:uefi`` if + UEFI boot is required. + +* All of nodes are configured by setting the following configuration + options in ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``port``: Port to be used for iRMC operations; either 80 + or 443. The default value is 443. Optional. + - ``auth_method``: Authentication method for iRMC operations; + either ``basic`` or ``digest``. The default value is ``basic``. Optional. + - ``client_timeout``: Timeout (in seconds) for iRMC + operations. The default value is 60. Optional. + - ``sensor_method``: Sensor data retrieval method; either + ``ipmitool`` or ``scci``. The default value is ``ipmitool``. Optional. + +* Each node can be further configured by setting the following ironic + node object’s properties which override the parameter values in + ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``driver_info/irmc_port`` property overrides ``port``. + - ``driver_info/irmc_auth_method`` property overrides ``auth_method``. + - ``driver_info/irmc_client_timeout`` property overrides ``client_timeout``. + - ``driver_info/irmc_sensor_method`` property overrides ``sensor_method``. + + +iscsi_irmc driver +^^^^^^^^^^^^^^^^^ + +This driver enables Virtual Media deploy with image build from +Diskimage Builder and power control via ServerView Common Command +Interface (SCCI). + +Enabling the driver +~~~~~~~~~~~~~~~~~~~ + +- Add ``iscsi_irmc`` to the list of ``enabled_drivers`` in + ``[DEFAULT]`` section of ``/etc/ironic/ironic.conf``. +- Ironic Conductor must be restarted for the new driver to be loaded. + +Node configuration +~~~~~~~~~~~~~~~~~~ + +* Each node is configured for iRMC with PXE deploy by setting the + followings ironic node object’s properties: + + - ``driver`` property to be ``iscsi_irmc`` + - ``driver_info/irmc_address`` property to be ``IP address`` or + ``hostname`` of the iRMC. + - ``driver_info/irmc_username`` property to be ``username`` for + the iRMC with administrator privileges. + - ``driver_info/irmc_password`` property to be ``password`` for + irmc_username. + - ``properties/capabilities`` property to be ``boot_mode:uefi`` if + UEFI boot is required. + - ``driver_info/irmc_deploy_iso`` property to be either ``deploy iso + file name``, ``Glance UUID``, ``Glance URL`` or ``Image Service + URL``. + - ``instance info/irmc_boot_iso`` property to be either ``boot iso + file name``, ``Glance UUID``, ``Glance URL`` or ``Image Service + URL``. This is optional property for ``netboot``. + +* All of nodes are configured by setting the following configuration + options in ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``port``: Port to be used for iRMC operations; either ``80`` + or ``443``. The default value is ``443``. Optional. + - ``auth_method``: Authentication method for iRMC operations; + either ``basic`` or ``digest``. The default value is ``basic``. Optional. + - ``client_timeout``: Timeout (in seconds) for iRMC + operations. The default value is 60. Optional. + - ``sensor_method``: Sensor data retrieval method; either + ``ipmitool`` or ``scci``. The default value is ``ipmitool``. Optional. + - ``remote_image_share_root``: Ironic conductor node's ``NFS`` or + ``CIFS`` root path. The default value is ``/remote_image_share_root``. + - ``remote_image_server``: IP of remote image server. + - ``remote_image_share_type``: Share type of virtual media, either + ``NFS`` or ``CIFS``. The default is ``CIFS``. + - ``remote_image_share_name``: share name of ``remote_image_server``. + The default value is ``share``. + - ``remote_image_user_name``: User name of ``remote_image_server``. + - ``remote_image_user_password``: Password of ``remote_image_user_name``. + - ``remote_image_user_domain``: Domain name of ``remote_image_user_name``. + +* Each node can be further configured by setting the following ironic + node object’s properties which override the parameter values in + ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``driver_info/irmc_port`` property overrides ``port``. + - ``driver_info/irmc_auth_method`` property overrides ``auth_method``. + - ``driver_info/irmc_client_timeout`` property overrides ``client_timeout``. + - ``driver_info/irmc_sensor_method`` property overrides ``sensor_method``. + + +agent_irmc driver +^^^^^^^^^^^^^^^^^ + +This driver enables Virtual Media deploy with IPA (Ironic Python +Agent) and power control via ServerView Common Command Interface +(SCCI). + +Enabling the driver +~~~~~~~~~~~~~~~~~~~ + +- Add ``agent_irmc`` to the list of ``enabled_drivers`` in + ``[DEFAULT]`` section of ``/etc/ironic/ironic.conf``. +- Ironic Conductor must be restarted for the new driver to be loaded. + +Node configuration +~~~~~~~~~~~~~~~~~~ + +* Each node is configured for iRMC with PXE deploy by setting the + followings ironic node object’s properties: + + - ``driver`` property to be ``agent_irmc`` + - ``driver_info/irmc_address`` property to be ``IP address`` or + ``hostname`` of the iRMC. + - ``driver_info/irmc_username`` property to be ``username`` for + the iRMC with administrator privileges. + - ``driver_info/irmc_password`` property to be ``password`` for + irmc_username. + - ``properties/capabilities`` property to be ``boot_mode:uefi`` if + UEFI boot is required. + - ``driver_info/irmc_deploy_iso`` property to be either ``deploy iso + file name``, ``Glance UUID``, ``Glance URL`` or ``Image Service + URL``. + +* All of nodes are configured by setting the following configuration + options in ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``port``: Port to be used for iRMC operations; either 80 + or 443. The default value is 443. Optional. + - ``auth_method``: Authentication method for iRMC operations; + either ``basic`` or ``digest``. The default value is ``basic``. Optional. + - ``client_timeout``: Timeout (in seconds) for iRMC + operations. The default value is 60. Optional. + - ``sensor_method``: Sensor data retrieval method; either + ``ipmitool`` or ``scci``. The default value is ``ipmitool``. Optional. + - ``remote_image_share_root``: Ironic conductor node's ``NFS`` or + ``CIFS`` root path. The default value is ``/remote_image_share_root``. + - ``remote_image_server``: IP of remote image server. + - ``remote_image_share_type``: Share type of virtual media, either + ``NFS`` or ``CIFS``. The default is ``CIFS``. + - ``remote_image_share_name``: share name of ``remote_image_server``. + The default value is ``share``. + - ``remote_image_user_name``: User name of ``remote_image_server``. + - ``remote_image_user_password``: Password of ``remote_image_user_name``. + - ``remote_image_user_domain``: Domain name of ``remote_image_user_name``. + +* Each node can be further configured by setting the following ironic + node object’s properties which override the parameter values in + ``[irmc]`` section of ``/etc/ironic/ironic.conf``: + + - ``driver_info/irmc_port`` property overrides ``port``. + - ``driver_info/irmc_auth_method`` property overrides ``auth_method``. + - ``driver_info/irmc_client_timeout`` property overrides ``client_timeout``. + - ``driver_info/irmc_sensor_method`` property overrides ``sensor_method``. + + +Supported platforms +=================== +This driver supports FUJITSU PRIMERGY BX S4 or RX S8 servers and above. + +- PRIMERGY BX920 S4 +- PRIMERGY BX924 S4 +- PRIMERGY RX300 S8 diff --git a/driver-requirements.txt b/driver-requirements.txt index a9c308639f..569b220739 100644 --- a/driver-requirements.txt +++ b/driver-requirements.txt @@ -8,7 +8,7 @@ proliantutils>=2.1.1 pyghmi pysnmp python-ironic-inspector-client -python-scciclient>=0.1.0 +python-scciclient>=0.2.0 python-seamicroclient>=0.4.0 UcsSdk==0.8.2.2