diff --git a/.gitignore b/.gitignore index 893951706..4767b51c3 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,6 @@ docs/build # Ignore the temporary file for creating the Release version Release.save* +# ignore the old generated man pages and html pages +xCAT-client/share/man +xCAT-client/share/doc diff --git a/README.rst b/README.rst index d7f1ae9f6..2cb961dfd 100644 --- a/README.rst +++ b/README.rst @@ -8,7 +8,7 @@ Documentation xCAT documentation is available at: http://xcat-docs.readthedocs.io/en/latest/ -|docs_latest| |docs_2132| |docs_2131| |docs_2130| |docs_212| |docs_211| +|docs_latest| |docs_2133| |docs_2132| |docs_2131| |docs_2130| |docs_212| |docs_211| Open Source License ------------------- @@ -22,6 +22,11 @@ Developers Developers and prospective contributors are encouraged to read the `Developers Guide `_ In particular the `GitHub `_ related subsection. +.. |docs_2133| image:: https://readthedocs.org/projects/xcat-docs/badge/?version=2.13.3 + :alt: 2.13.3 documentation status + :scale: 100% + :target: http://xcat-docs.readthedocs.io/en/2.13.3/ + .. |docs_2132| image:: https://readthedocs.org/projects/xcat-docs/badge/?version=2.13.2 :alt: 2.13.2 documentation status :scale: 100% diff --git a/Version b/Version index a1a4224dd..965a689ec 100644 --- a/Version +++ b/Version @@ -1 +1 @@ -2.13.3 +2.13.4 diff --git a/build-ubunturepo b/build-ubunturepo index 49e46cf63..6e01caab8 100755 --- a/build-ubunturepo +++ b/build-ubunturepo @@ -178,6 +178,7 @@ then build_time=`date` build_machine=`hostname` commit_id=`git rev-parse --short HEAD` + commit_id_long=`git rev-parse HEAD` package_dir_name=debs$REL #TODO: define the core path and tarball name @@ -362,14 +363,15 @@ __EOF__ chmod 775 mklocalrepo.sh # - # Add a buildinfo file under xcat-core to track information about the build + # Add a buildinfo file into the tar.bz2 file to track information about the build # - buildinfo=$local_core_repo_path/buildinfo - echo "VERSION=$ver" > $buildinfo - echo "RELEASE=$xcat_release" >> $buildinfo - echo "BUILD_TIME=$build_time" >> $buildinfo - echo "BUILD_MACHINE=$build_machine" >> $buildinfo - echo "COMMIT_ID=$commit_id" >> $buildinfo + BUILDINFO=$local_core_repo_path/buildinfo + echo "VERSION=$ver" > $BUILDINFO + echo "RELEASE=$xcat_release" >> $BUILDINFO + echo "BUILD_TIME=$build_time" >> $BUILDINFO + echo "BUILD_MACHINE=$build_machine" >> $BUILDINFO + echo "COMMIT_ID=$commit_id" >> $BUILDINFO + echo "COMMIT_ID_LONG=$commit_id_long" >> $BUILDINFO #create the xcat-core.list file diff --git a/buildcore.sh b/buildcore.sh index 86ccc115b..e9ce9d053 100755 --- a/buildcore.sh +++ b/buildcore.sh @@ -193,6 +193,7 @@ function setversionvars { BUILD_TIME=`date` BUILD_MACHINE=`hostname` COMMIT_ID=`git rev-parse --short HEAD` + COMMIT_ID_LONG=`git rev-parse HEAD` XCAT_RELEASE="snap$(date '+%Y%m%d%H%M')" echo "$XCAT_RELEASE" >Release } @@ -545,7 +546,7 @@ else fi # -# Add a VERSION file into the tar.bz2 file to track information about the build +# Add a buildinfo file into the tar.bz2 file to track information about the build # BUILDINFO=$XCATCORE/buildinfo echo "VERSION=$VER" > $BUILDINFO @@ -553,6 +554,7 @@ echo "RELEASE=$XCAT_RELEASE" >> $BUILDINFO echo "BUILD_TIME=$BUILD_TIME" >> $BUILDINFO echo "BUILD_MACHINE=$BUILD_MACHINE" >> $BUILDINFO echo "COMMIT_ID=$COMMIT_ID" >> $BUILDINFO +echo "COMMIT_ID_LONG=$COMMIT_ID_LONG" >> $BUILDINFO echo "Creating $(dirname $DESTDIR)/$TARNAME ..." if [[ -e $TARNAME ]]; then diff --git a/docs/README.md b/docs/README.md index 175295970..67a8b8ac0 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,11 +2,6 @@ The latest docs are here: http://xcat-docs.readthedocs.io/en/latest/ -Status: -[![Documentation Status](http://readthedocs.org/projects/xcat-docs/badge/?version=latest)](http://xcat-docs.readthedocs.io/en/latest/?badge=latest) -[![Documentation Status](http://readthedocs.org/projects/xcat-docs/badge/?version=2.11)](http://xcat-docs.readthedocs.io/en/2.11/?badge=2.11) - - The documentation project is written in restructured text (.rst) using Sphinx and hosted on ReadTheDocs. ## Building Documentation diff --git a/docs/source/advanced/cluster_maintenance/compute_node/index.rst b/docs/source/advanced/cluster_maintenance/compute_node/index.rst index 6199699e6..87bc1c733 100644 --- a/docs/source/advanced/cluster_maintenance/compute_node/index.rst +++ b/docs/source/advanced/cluster_maintenance/compute_node/index.rst @@ -5,3 +5,4 @@ Compute Node :maxdepth: 2 changing_hostname_ip.rst + replace/index.rst diff --git a/docs/source/advanced/cluster_maintenance/compute_node/replace/index.rst b/docs/source/advanced/cluster_maintenance/compute_node/replace/index.rst new file mode 100644 index 000000000..7346fb246 --- /dev/null +++ b/docs/source/advanced/cluster_maintenance/compute_node/replace/index.rst @@ -0,0 +1,7 @@ +Replacing Nodes +=============== + +.. toctree:: + :maxdepth: 2 + + openpower.rst diff --git a/docs/source/advanced/cluster_maintenance/compute_node/replace/openpower.rst b/docs/source/advanced/cluster_maintenance/compute_node/replace/openpower.rst new file mode 100644 index 000000000..6e17f9947 --- /dev/null +++ b/docs/source/advanced/cluster_maintenance/compute_node/replace/openpower.rst @@ -0,0 +1,38 @@ +OpenPower Nodes +=============== + + +When compute nodes are physically replaced in the frame, leverage xCAT to re-discover the compute nodes. The following guide can be used for: + + * IBM OpenPower S822LC for HPC + + +#. Identify the machine(s) to be replaced: ``frame10cn02``. + +#. [**Optional**] It's recommended to set the BMC IP address back to DHCP, if it was set to STATIC. :: + + rspconfig frame10cn02 ip=dhcp + +#. Set the outgoing machine to ``offline`` and remove attributes of the machine: :: + + nodeset frame10cn02 offline + chdef frame10cn02 mac="" + +#. If using **MTMS**-based discovery, fill in the Model-Type and Serial Number for the machine: :: + + chdef frame10cn02 mtm=8335-GTB serial= + +#. If using **SWITCH**-based discovery, go on to the next step. The ``switch`` and ``switch-port`` should already be set in the compute node definition. + + Node attributes will be replaced during the discovery process (mtm, serial, mac, etc.) + +#. Search for the new BMC in the open range: :: + + bmcdiscover --range -w -z + +#. When the BMC is found, start the discovery with the following commands: :: + + rsetboot /node-8335.* net + rpower /node-8335.* boot + + diff --git a/docs/source/advanced/hierarchy/define_service_nodes.rst b/docs/source/advanced/hierarchy/define_service_nodes.rst index aa9b64171..d35427e73 100644 --- a/docs/source/advanced/hierarchy/define_service_nodes.rst +++ b/docs/source/advanced/hierarchy/define_service_nodes.rst @@ -28,6 +28,11 @@ The following table illustrates the cluster being used in this example: | | r2n10 | +----------------------+----------------------+ + +#. Modify ``site`` table attribute to include **service** group's postscripts in compute node definition: :: + + chdef -t site hierarchicalattrs="postscripts" + #. Select the compute nodes that will become service nodes The first node in each rack, ``r1n01`` and ``r2n01``, is selected to become the xCAT service nodes and manage the compute nodes in that rack diff --git a/docs/source/advanced/networks/onie_switches/os_cumulus/install.rst b/docs/source/advanced/networks/onie_switches/os_cumulus/install.rst index 8623a973e..8fa31ee71 100644 --- a/docs/source/advanced/networks/onie_switches/os_cumulus/install.rst +++ b/docs/source/advanced/networks/onie_switches/os_cumulus/install.rst @@ -109,4 +109,39 @@ In order to utilize ``xcatprobe switch_macmap``, snmp needs to be enabled. To e updatenode frame01sw1 -P enablesnmp +To configuring SNMPv3 after enable snmp, set user, authentication and/or encryption for the switches: :: + + chdef frame01sw1 snmpauth=sha snmppassword=xcatpassw0rd snmpprivacy=DES snmpusername=xcatadmin + +then execute the ``configonie`` command to add the snmp user for the switch: :: + + /opt/xcat/share/xcat/scripts/configonie --switches frame01sw1 --snmp + +To verify the SNMPv3 configuration, run ``xcatprobe switch_macmap`` command, will show following results: :: + + #xcatprobe switch_macmap frame01sw1 -V + frame1sw1: Attempting to refresh switch information... + frame1sw1: Generate SNMP session with parameter: + 'UseNumeric' => '1' + 'SecName' => 'xcatadmin' + 'AuthPass' => 'xcatpassw0rd' + 'Version' => '3' + 'PrivProto' => 'DES' + 'DestHost' => '172.21.253.102' + 'SecLevel' => 'authPriv' + 'AuthProto' => 'SHA' + 'PrivPass' => 'xcatpassw0rd' + frame1sw1: SNMP Session query OID:".1.3.6.1.2.1.31.1.1.1.1" + frame1sw1: SNMP Session get data for OID:".1.3.6.1.2.1.31.1.1.1.1": + '1' => 'lo' + '2' => 'eth0' + '3' => 'swp1' + '4' => 'swp2' + '5' => 'swp3' + + ...........................more output..................... + + + + diff --git a/docs/source/advanced/pdu/pdu.rst b/docs/source/advanced/pdu/pdu.rst index 781a7dbc9..a8566b5f8 100644 --- a/docs/source/advanced/pdu/pdu.rst +++ b/docs/source/advanced/pdu/pdu.rst @@ -63,6 +63,12 @@ The following commands are supported against a compute node: cn01: f5pdu3 outlet 6 is on cn01: f5pdu3 outlet 7 is on + * Power cycling the PDU outlets on a compute node: :: + + # rpower cn01 pdureset + cn01: f5pdu3 outlet 6 is reset + cn01: f5pdu3 outlet 7 is reset + The following commands are supported against a PDU: * Check the status of the full PDU: :: @@ -98,7 +104,7 @@ The following commands are supported against a PDU: f5pdu3: outlet 12 is off * Power on the full PDU: :: - + # rpower f5pdu3 on f5pdu3: outlet 1 is on f5pdu3: outlet 2 is on @@ -112,6 +118,22 @@ The following commands are supported against a PDU: f5pdu3: outlet 10 is on f5pdu3: outlet 11 is on f5pdu3: outlet 12 is on + + * Power reset the full PDU: :: + + # rpower f5pdu3 reset + f5pdu3: outlet 1 is reset + f5pdu3: outlet 2 is reset + f5pdu3: outlet 3 is reset + f5pdu3: outlet 4 is reset + f5pdu3: outlet 5 is reset + f5pdu3: outlet 6 is reset + f5pdu3: outlet 7 is reset + f5pdu3: outlet 8 is reset + f5pdu3: outlet 9 is reset + f5pdu3: outlet 10 is reset + f5pdu3: outlet 11 is reset + f5pdu3: outlet 12 is reset **Note:** For BMC based compute nodes, turning the PDU outlet power on does not automatically power on the compute side. Users will need to issue ``rpower on`` to power on the compute node after the BMC boots. diff --git a/docs/source/advanced/security/certs.rst b/docs/source/advanced/security/certs.rst new file mode 100644 index 000000000..f23fe1a83 --- /dev/null +++ b/docs/source/advanced/security/certs.rst @@ -0,0 +1,63 @@ +The SSL Certificates in xCAT +---------------------------- + + +The xCAT daemon on the management node and service node listens on a SSL socket on port 3001, the communications on the SSL socket include: + + 1. the xCAT requests from xCAT Clients + 2. the xCAT requests forwarded from other xCAT daemons, for example, the requests forwarded between xCAT daemons on management node and service nodes + 3. some special xCAT requests from compute nodes, such as ``getcredentials``, ``getpostscript``, ``litefile``, etc. + +xCAT creates 1 CA certificate and 2 credentials (private key and certificate pairs): + + 1. xCAT CA certificate(ca.pem): + + * a self-signed certificate used as Certificate Authority in xcatd SSL communication; + * generated by ``/opt/xcat/share/xcat/scripts/setup-xcat-ca.sh`` script on xCAT installation; + * will be generated (or updated) on xCAT management node when: + * install or update xCAT when "/etc/xcat/ca" directory does not exist + * or run ``xcatconfig -f|--force`` + * or run ``xcatconfig -c|--credentials`` + * files on management node: + * ``/etc/xcat/ca/ca-cert.pem`` + * ``/etc/xcat/cert/ca.pem`` ,copied by ``/opt/xcat/share/xcat/scripts/setup-server-cert.sh`` + * ``/root/.xcat/ca.pem`` ,copied by ``/opt/xcat/share/xcat/scripts/setup-local-client.sh`` + * file on service node: ``/root/.xcat/ca.pem`` + * distribution path: + **/etc/xcat/cert/ca.pem (MN)** ===(run ``xcatconfig`` command)===> **/install/postscripts/_xcat/ca.pem (MN)** ===(node provision/updatenode)==> **/xcatpost/_xcat/ca.pem (SN and CN)** ==(run "servicenode" postscript)==> **/root/.xcat/ca.pem (SN)** + + 2. xCAT server credential(server-cred.pem): + + * a concatenation of server private key and certificate(signed with xCAT CA certificate) + * generated by ``/opt/xcat/share/xcat/scripts/setup-server-cert.sh`` on xCAT installation; + * will be generated (or updated) on xCAT management node when: + * install or update xCAT when ``/etc/xcat/cert`` directory does not exist + * or run ``xcatconfig -f|--force`` + * or run ``xcatconfig -c|--credentials`` + * file on management node: ``/etc/xcat/cert/server-cred.pem`` + * file on service node: ``/etc/xcat/cert/server-cred.pem`` + * distribution path: + **/etc/xcat/cert/server-cred.pem (MN)** ==(run ``xcatserver`` script called by ``servicenode`` postscript)===> **/etc/xcat/cert/server-cred.pem(SN)** + + 3. xCAT client credential(client-cred.pem): + + * a concatenation of client private key and certificate (signed with xCAT CA certificate) + * generated by ``/opt/xcat/share/xcat/scripts/setup-local-client.sh`` on xCAT installation + * will be generated (or updated) on xCAT management node when: + * install or update xCAT when ``/root/.xcat/client-key.pem`` does not exist; + * or run ``xcatconfig -f|--force`` + * or run ``xcatconfig -c|--credentials`` + * file on management node: ``/root/.xcat/client-cred.pem`` + * file on service node: ``/root/.xcat/client-cred.pem`` + * distribution path: + **/root/.xcat/client-cred.pem (MN)** ===(run ``xcatclient`` script called by ``servicenode`` postscript")===> **/root/.xcat/client-cred.pem(SN)** + +The usage of the credentials in the xCAT SSL communication is: + + .. image:: ./imgs/certs.png + :height: 500 px + :width: 600 px + :scale: 100 % + :alt: alternate text + :align: center + diff --git a/docs/source/advanced/security/imgs/certs.png b/docs/source/advanced/security/imgs/certs.png new file mode 100644 index 000000000..4f727c5d7 Binary files /dev/null and b/docs/source/advanced/security/imgs/certs.png differ diff --git a/docs/source/advanced/security/security.rst b/docs/source/advanced/security/security.rst index a0be534ed..32d9b9c4e 100644 --- a/docs/source/advanced/security/security.rst +++ b/docs/source/advanced/security/security.rst @@ -4,52 +4,40 @@ Transmission Channel The xCAT daemon uses SSL to only allow authorized users to run xCAT commands. All xCAT commands are initiated as an xCAT **client**, even when run commands from the xCAT management node. This **client** opens an SSL socket to the xCAT daemon, sends the command and receives responses through this one socket. xCAT has configured the certificate for root, if you nee to authorize other users, refer to the section below. -Create SSL Certificate So That User Can Be Authenticated By xCAT -```````````````````````````````````````````````````````````````` - -Running the following command on the Management node as root: :: - - /opt/xcat/share/xcat/scripts/setup-local-client.sh - -By running this command you'll see SSL certificates are creating, enter ``yes`` where prompted and take the defaults. - -This will create the following files in the 's ``$HOME/.xcat`` directory: :: - - ca.pem - client-cert.pem - client-cred.pem - client-key.pem - client-req.pem +.. toctree:: + :maxdepth: 2 + certs.rst Commands Access Control ----------------------- Except SSL channel, xCAT only authorize root on the management node to run **xCAT** commands by default. But xCAT can be configured to allow both **non-root users** and **remote users** to run limited xCAT commands. For remote users, we mean the users who triggers the xCAT commands from other nodes and not have to login to the management node. xCAT uses the **policy** table to control who has authority to run specific xCAT commands. For a full explanation of the **policy** table, refer to :doc:`policy ` man page. +.. _granting_xcat_privileges: Granting Users xCAT Privileges `````````````````````````````` -To give a non-root user all xCAT commands privileges, run ``tabedit policy`` and add a line: :: +To give a non-root user all xCAT command privileges, run ``tabedit policy`` and add a line: :: "6","",,,,,,"allow",, -Where is the name of the user that you are granting privileges to. In the above case, this user can now perform all xCAT commands, including changing the ``policy`` table to grant right to other users, so this should be used with caution. +Where is the name of the user that you are granting privileges to. This user can now perform all xCAT commands, including changing the ``policy`` table to grant rights to other users, so this should be used with caution. -You may only want to grant users limited access. One example is that one user may only be allowed to run ``nodels``. This can be done as follows: :: +To grant a user ability to run ``nodels`` command: :: "6","",,"nodels",,,,"allow",, -If you want to grant all users the ability to run nodels, add this line: :: +To grant all users the ability to run ``nodels``: :: "6.1","*",,"nodels",,,,"allow",, -You also can do this by running: :: +CLI can also be used: :: chdef -t policy -o 6.1 name=* commands=nodels rule=allow -**Note** Make sure the directories that contain the xCAT commands are in the user's ``$PATH``. If not, add them to ``$PATH`` as appropriate way in your system. :: +**Note** Make sure the directories that contain the xCAT commands are in the user's ``$PATH``. If not, add them to ``$PATH`` as appropriate in your system. :: echo $PATH | grep xcat /opt/xcat/bin:/opt/xcat/sbin: ....... @@ -57,18 +45,18 @@ You also can do this by running: :: Extra Setup for Remote Commands ``````````````````````````````` -To give a user the ability to run remote commands (xdsh, xdcp, psh, pcp) in some node, except above steps, also need to run below steps: :: +To give a user the ability to run remote commands (``xdsh``, ``xdcp``, ``psh``, ``pcp``) in some node, in addition to above steps, also need to run below steps: :: su - xdsh -K -This will setup the user and root ssh keys for the user under the ``$HOME/.ssh`` directory of the user on the nodes. The root ssh keys are needed for the user to run the xCAT commands under the xcatd daemon, where the user will be running as root. **Note**: the uid for the user should match the uid on the management node and a password for the user must have been set on the nodes. +This will setup the user and root ssh keys for the user under the ``$HOME/.ssh`` directory of the user on the nodes. The root ssh keys are needed for the user to run the xCAT commands under the xcatd daemon, where the user will be running as root. **Note**: the uid and the password for the user on the management node, should match the uid and password on the managed nodes. Set Up Login Node (Remote Client) ````````````````````````````````` -In some cases, you don't want your **non-root** user login to management node but still can run some xCAT commands. This time, you need setup a login node(i.e. remote client) for these users. +In some cases, you don't want your **non-root** user login to management node but still can run some xCAT commands. This time, you need setup a login node (i.e. remote client) for these users. Below are the steps of how to set up a login node. @@ -78,9 +66,9 @@ Below are the steps of how to set up a login node. * :doc:`Configure xCAT Software Repository in RHEL` - * `Configure the Base OS Repository in SUSE `_ + * :ref:`Configure the Base OS Repository in SUSE ` - * `Configure the Base OS Repository in Ubuntu `_ + * :ref:`Configure the Base OS Repository in Ubuntu ` Then install ``xCAT-client``. diff --git a/docs/source/advanced/sysclone/sysclone.rst b/docs/source/advanced/sysclone/sysclone.rst index df3ed17c1..d3c13150c 100644 --- a/docs/source/advanced/sysclone/sysclone.rst +++ b/docs/source/advanced/sysclone/sysclone.rst @@ -35,16 +35,16 @@ List of Supported Arch and OS Using Sysclone to Install Nodes ------------------------------- -This document describes how to install and configure a template node (called golden client), capture an image from this template node. Then using this image to deploy other same nodes (called target nodes) quickly. +This document describes how to install and configure a template node (called golden client), capture an image from this template node, then using this image to deploy other nodes (called target nodes) quickly. Prepare the xCAT Management Node for Support Sysclone ````````````````````````````````````````````````````` To configure xCAT management node refer to section :ref:`install_guides` -For support Sysclone, we need to install some extra rpms on management node and the golden client. +To support Sysclone, we need to install some extra rpms on management node and the golden client. -1. Download the xcat-dep tarball (xcat-dep-XXX.tar.bz2) which includes extra rpms needed by Sysclone. (You might already have the xcat-dep tarball on management node. If not, go to `xcat-dep `_ and get the latest xCAT dependency tarball.) +1. Download the xcat-dep tarball (xcat-dep-XXX.tar.bz2) which includes extra rpms needed by Sysclone. (You might already have the xcat-dep tarball on management node. If not, go to `xcat-dep `_ and get the latest xCAT dependency tarball.) 2. Install systemimager server on management node @@ -56,7 +56,7 @@ For support Sysclone, we need to install some extra rpms on management node and zypper -n install systemimager-server -*[Note] Maybe you will encounter below failed message when you install systemimager-server, just ignore it.*:: +*[Note] You may ignore the following messages when installing systemimager-server.*:: Can't locate AppConfig.pm in @INC (@INC contains: /usr/lib/systemimager/perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/lib/systemimager/perl/SystemImager/Config.pm line 13. BEGIN failed--compilation aborted at /usr/lib/systemimager/perl/SystemImager/Config.pm line 13. @@ -65,7 +65,7 @@ For support Sysclone, we need to install some extra rpms on management node and Compilation failed in require at /usr/sbin/si_mkrsyncd_conf line 28. BEGIN failed--compilation aborted at /usr/sbin/si_mkrsyncd_conf line 28. -3. Do some preparation for install and configure golden client in management node. Copy the xcat-dep-XXX.tar.bz2 file to directory ``/install/post/otherpkgs///xcat/`` of the management node according your golden client's OS version and system architecture, then decompression it. For example: +3. Copy the xcat-dep-XXX.tar.bz2 file to directory ``/install/post/otherpkgs///xcat/`` of the management node according your golden client's OS version and system architecture, then decompress it: * **[CentOS6.3 and x86_64]**:: @@ -91,15 +91,15 @@ For support Sysclone, we need to install some extra rpms on management node and Install and Configure the Golden Client ``````````````````````````````````````` -The Golden Client acts as a regular node for xCAT, just have some extra rpms to support clone. When you deploy golden client with xCAT, you just need to add a few additional definitions to the image which will be used to deploy golden client. +The Golden Client acts as a regular node for xCAT, it just has some extra rpms to support clone. When you deploy golden client with xCAT, you just need to add a few additional definitions to the image which will be used to deploy golden client. For information of how to install a regular node, refer to section :ref:`Diskful Installation ` -For support clone, add 'otherpkglist' and 'otherpkgdir' attributes to the image definition which will be used to deploy golden client, then deploy golden client as normal. then the golden client will have extra rpms to support clone. If you have deployed your golden client already, using 'updatenode' command to push these extra rpms to golden client. CentOS share the same pkglist file with RHEL. For example: +To support clone, add 'otherpkglist' and 'otherpkgdir' attributes to the image definition which will be used to deploy golden client, then deploy golden client as normal. Once deployed, the golden client will have extra rpms to support cloning. If you have deployed your golden client already, use **updatenode** command to push these extra rpms to golden client. CentOS shares the same pkglist file with RHEL. For example: * **[RH6.4 and x86_64]**:: - chdef -t osimage -o otherpkglist=/opt/xcat/share/xcat/instal/rh/sysclone.rhels6.x86_64.otherpkgs.pkglist + chdef -t osimage -o otherpkglist=/opt/xcat/share/xcat/install/rh/sysclone.rhels6.x86_64.otherpkgs.pkglist chdef -t osimage -o -p otherpkgdir=/install/post/otherpkgs/rhels6.4/x86_64 updatenode -S @@ -121,23 +121,23 @@ For support clone, add 'otherpkglist' and 'otherpkgdir' attributes to the image chdef -t osimage -o -p otherpkgdir=/install/post/otherpkgs/rhels6.3/ppc64 updatenode -S -*[Note]: If you install systemimager RPMs on CentOS 6.5 node by above steps, you maybe hit failure. this is a known issue because some defect of CentOS6.5 itself. Refer to known issue section for help.* +*[Note]: If you install systemimager RPMs on CentOS 6.5 node by above steps, you maybe hit a failure. This is a known issue with CentOS6.5. Refer to known issue section for help.* Capture Image from Golden Client ```````````````````````````````` -On Management node, use xCAT command 'imgcapture' to capture an image from the golden-client.:: +On Management node, use xCAT command **imgcapture** to capture an image from the golden-client.:: imgcapture -t sysclone -o -When imgcapture is running, it pulls the image from the golden-client, and creates a image files system and a corresponding osimage definition on the xcat management node. You can use below command to check the osimage attributes.:: +When **imgcapture** is running, it pulls the image from the golden-client, and creates an image files system and a corresponding osimage definition on the xcat management node. You can use command below to check the osimage attributes.:: lsdef -t osimage Install the target nodes with the image from the golden-client `````````````````````````````````````````````````````````````` -following below commands to install the target nodes with the image captured from golden client. +To install the target nodes with the image captured from golden client. * **[x86_64]**:: @@ -155,11 +155,11 @@ following below commands to install the target nodes with the image captured fro Update Nodes Later On --------------------- -If, at a later time, you need to make changes to the golden client (install new rpms, change config files, etc.), you can capture the changes and push them to the already cloned nodes without need to restart cloned nodes. This process will only transfer the deltas, so it will be much faster than the original cloning. +If, at a later time, you need to make changes to the golden client (install new rpms, change config files, etc.), you can capture the changes and push them to the already cloned nodes without a need to restart cloned nodes. This process will only transfer the deltas, so it will be much faster than the original cloning. -**[Limitation]**: In xcat2.8.5, this feature has limitation in RHEL and CentOS. when your delta changes related bootloader, it would encounter error. This issue will be fixed in xcat higher version. So up to now, in RHEL and CentOS, this feature just update files not related bootloader. +**[Limitation]**: In xcat2.8.5, this feature has limitation on RHEL and CentOS. When your delta changes related bootloader, it would encounter error. This issue will be fixed in xcat higher version. So up to now, in RHEL and CentOS, this feature just update files not related bootloader. -Update delta changes follow below steps: +Update delta changes: 1. Make changes to your golden node (install new rpms, change config files, etc.). @@ -199,7 +199,7 @@ Known Issue Can not install systemimager RPMs in CentOS6.5 by yum `````````````````````````````````````````````````````` -If you install systemimager RPMs on CentOS 6.5 node using yum, you may experience some problems due to CentOS6.5 itself. If that happens, copy related RPMs to CentOS 6.5 node and install them by hand. +If you install systemimager RPMs on CentOS 6.5 node using **yum**, you may experience some problems due to CentOS6.5 itself. If that happens, copy related RPMs to CentOS 6.5 node and install them by hand. * **On management node**:: @@ -220,4 +220,4 @@ If you install systemimager RPMs on CentOS 6.5 node using yum, you may experienc Kernel panic at times when install target node with rhels7.0 in Power 7 server `````````````````````````````````````````````````````````````````````````````` -When you clone rhels7.0 image to target node which is Power 7 server lpar, maybe you will hit Kernel panic problem at times after boot loader grub2 download kernel and initrd. This is an known issue but without resolve yet. up to now, we recommend you try again. +When you clone rhels7.0 image to target node which is Power 7 server lpar, you may hit Kernel panic problem at times after boot loader grub2 download kernel and initrd. This is an known issue but without a resulution. For now, we recommend you try again. diff --git a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network.rst b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network.rst index aa0e78f03..e11d21d67 100644 --- a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network.rst +++ b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network.rst @@ -1,121 +1,10 @@ -Advanced Networking Configuration -================================= - -The ``confignetwork`` postscript can be used to configure the network interfaces on the compute nodes to support VLAN, BONDs, and BRIDGES. In order to use the ``confignetwork`` postscript, the following attributes must be configured for the node in the ``nics`` table: - - * ``nicips`` - * ``nictypes`` - * ``nicnetworks`` - * ``nicdevices`` - resolves the relationship among the physical network intereface devices - -The following example set the xCAT properties for compute node ``cn1`` to achieve the following network configuration using the ``confignetwork`` postscript: - - * Compute node ``cn1`` has two physical NICs: eth2 and eth3 - * Bond eth2 and eth3 as ``bond0`` - * From ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2`` - * Make bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1) - * Make bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1) - -Define attributes in the ``nics`` table ---------------------------------------- - -#. Using the ``mkdef`` or ``chdef`` commands - - a. Compute node ``cn1`` has two physical NICs: ``eth2`` and ``eth3`` :: - - chdef cn1 nictypes.eth2=ethernet nictypes.eth3=ethernet - - b. Define ``bond0`` and bond ``eth2`` and ``eth3`` as ``bond0`` :: - - chdef cn1 nictypes.bond0=bond \ - nicdevices.bond0="eth2|eth3" - - c. Fom ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2`` :: - - chdef cn1 nictypes.bond0.1=vlan \ - nictypes.bond0.2=vlan \ - nicdevices.bond0.1=bond0 \ - nicdevices.bond0.2=bond0 - - d. Create bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1) :: - - chdef cn1 nictypes.br1=bridge \ - nicdevices.br1=bond0.1 \ - nicips.br1=10.0.0.1 \ - nicnetworks.br1="net10" - - e. Create bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1) :: - - chdef cn1 nictypes.br2=bridge \ - nicdevices.br2=bond0.2 \ - nicips.br2=20.0.0.1 \ - nicnetworks.br2="net20" - -#. Using an xCAT stanza file - - - Prepare a stanza file ``.stanza`` with content similiar to the following: :: - - # - cn1: - objtype=node - arch=x86_64 - groups=kvm,vm,all - nicdevices.br1=bond0.1 - nicdevices.br2=bond0.2 - nicdevices.bond0.1=bond0 - nicdevices.bond0.2=bond0 - nicdevices.bond0=eth2|eth3 - nictypes.eth2=ethernet - nictypes.eth3=ethernet - nictypes.bond0=bond - nictypes.bond0.1=vlan - nictypes.bond0.2=vlan - nictypes.br1=bridge - nictypes.br2=bridge - nicips.br1=10.0.0.1 - nicips.br2=20.0.0.1 - nicnetworks.br1=net10 - nicnetworks.br2=net20 - - - Using the ``mkdef -z`` option, define the stanza file to xCAT: :: - - cat .stanza | mkdef -z - -#. Using ``tabedit`` to edit the ``nics`` database table directly - - The ``tabedit`` command opens the specified xCAT database table in a ``vi`` like editor and allows the user to edit any text and write the changes back to the database table. - - After changing the content of the ``nics`` table, here is the result from ``tabdump nics`` :: - - # tabdump nics - #node,nicips,nichostnamesuffixes,nichostnameprefixes,nictypes,niccustomscripts,nicnetworks,nicaliases,nicextraparams,nicdevices,comments,disable - "cn1","br1!10.0.0.1,br2!20.0.0.1",,,"br1!bridge,eth2!ethernet,eth3!ethernet,bond0.2!vlan,bond0!bond,br2!bridge,bond0.1!vlan",,"br1!net10,br2!net20",,,"br1!bond0.1,bond0!eth2|eth3,bond0.2!bond0,bond0.1!bond0,br2!bond0.2",, - -Add network object into the networks table ------------------------------------------- - -The ``nicnetworks`` attribute only defines the nic that uses the IP address. -Other information about the network should be defined in the ``networks`` table. - -Use the ``chdef`` command to add/modify the networks in the ``networks`` table :: - - chdef -t network net10 net=10.0.0.0 mask=255.0.0.0 mgtifname=eth0 - chdef -t network net20 net=20.0.0.0 mask=255.0.0.0 mgtifname=eth1 - -Add ``confignetwork`` into the node's postscripts list ------------------------------------------------------- - -Using below command to add ``confignetwork`` into the node's postscripts list :: - - chdef cn1 -p postscripts=confignetwork - - -During OS deployment on compute node, ``confignetwork`` will be run in postscript. -If the compute node has OS, use ``updatenode`` command to run ``confignetwork`` :: - - updatenode cn1 -P confignetwork - - +Advanced Networking Configuration - confignetwork +================================================= +**Note:** ``confignetwork`` postscript is only supported on RHEL releases. +.. toctree:: + :maxdepth: 2 +.. include:: ../../../common/deployment/cfg_network_vlan.rst +.. include:: ../../../common/deployment/cfg_network_bond.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_bond.rst b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_bond.rst new file mode 100644 index 000000000..b4c31a981 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_bond.rst @@ -0,0 +1,58 @@ +Configure Two Bonded Adapters +----------------------------- + +The following example set the xCAT properties for compute node ``cn1`` to create: + + * Compute node ``cn1`` has two physical NICs: eth2 and eth3 + * Bond eth2 and eth3 as ``bond0`` + * Assign ip ``40.0.0.1`` to the bonded interface ``bond0`` + +Define attributes in the ``nics`` table +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + +#. Using the ``mkdef`` or ``chdef`` commands + + a. Compute node ``cn1`` has two physical NICs: ``eth2`` and ``eth3`` :: + + chdef cn1 nictypes.eth2=ethernet nictypes.eth3=ethernet + + b. Define ``bond0`` and bond ``eth2`` and ``eth3`` as ``bond0`` :: + + chdef cn1 nictypes.bond0=bond nicdevices.bond0="eth2|eth3" + chdef cn1 nicips.bond0=40.0.0.1 + +Add network object into the networks table +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Use the ``chdef`` command to add/modify the networks in the ``networks`` table :: + + chdef -t network net40 net=40.0.0.0 mask=255.0.0.0 + chdef cn1 nicnetworks.bond0=net40 + +Add ``confignetwork`` into the node's postscripts list +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Use command below to add ``confignetwork`` into the node's postscripts list :: + + chdef cn1 -p postscripts=confignetwork + + +During OS deployment on compute node, ``confignetwork`` postscript will be executed. +If the compute node is already running, use ``updatenode`` command to run ``confignetwork`` postscript without rebooting the node:: + + updatenode cn1 -P confignetwork + + +Verify bonding mode +~~~~~~~~~~~~~~~~~~~ + +Login to compute node cn1 and check bonding options in ``/etc/sysconfig/network-scripts/ifcfg-bond0`` file :: + + BONDING_OPTS="mode=802.3ad xmit_hash_policy=layer2+3" + + +* ``mode=802.3ad`` requires additional configuration on the switch. +* ``mode=2`` can be used for bonding without additional switch configuration. + +If changes are made to ``/etc/sysconfig/network-scripts/ifcfg-bond0`` file, restart network service. diff --git a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_vlan.rst b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_vlan.rst new file mode 100644 index 000000000..3ddd9606f --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_network_vlan.rst @@ -0,0 +1,109 @@ +Configure BOND, VLAN and BRIDGES +-------------------------------- + +The ``confignetwork`` postscript can be used to configure the network interfaces on the compute nodes to support VLAN, BONDs, and BRIDGES. In order for the ``confignetwork`` postscript to run successfully, the following attributes must be configured for the node in the ``nics`` table: + + * ``nicips`` + * ``nictypes`` + * ``nicnetworks`` + * ``nicdevices`` - resolves the relationship among the physical network interface devices + +The following example set the xCAT properties for compute node ``cn1`` to achieve the following network configuration using the ``confignetwork`` postscript: + + * Compute node ``cn1`` has two physical NICs: ``eth2`` and ``eth3`` + * Bond ``eth2`` and ``eth3`` as ``bond0`` + * From ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2`` + * Make bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1) + * Make bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1) + +Define attributes in the ``nics`` table +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Chose one of two methods described below: + +#. Using the ``mkdef`` or ``chdef`` commands + + a. Compute node ``cn1`` has two physical NICs: ``eth2`` and ``eth3`` :: + + chdef cn1 nictypes.eth2=ethernet nictypes.eth3=ethernet + + b. Define ``bond0`` and bond ``eth2`` and ``eth3`` as ``bond0`` :: + + chdef cn1 nictypes.bond0=bond \ + nicdevices.bond0="eth2|eth3" + + c. From ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2`` :: + + chdef cn1 nictypes.bond0.1=vlan \ + nictypes.bond0.2=vlan \ + nicdevices.bond0.1=bond0 \ + nicdevices.bond0.2=bond0 + + d. Create bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1) :: + + chdef cn1 nictypes.br1=bridge \ + nicdevices.br1=bond0.1 \ + nicips.br1=10.0.0.1 \ + nicnetworks.br1="net10" + + e. Create bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1) :: + + chdef cn1 nictypes.br2=bridge \ + nicdevices.br2=bond0.2 \ + nicips.br2=20.0.0.1 \ + nicnetworks.br2="net20" + +#. Using an xCAT stanza file + + - Prepare a stanza file ``.stanza`` with content similiar to the following: :: + + # + cn1: + objtype=node + arch=x86_64 + groups=kvm,vm,all + nicdevices.br1=bond0.1 + nicdevices.br2=bond0.2 + nicdevices.bond0.1=bond0 + nicdevices.bond0.2=bond0 + nicdevices.bond0=eth2|eth3 + nictypes.eth2=ethernet + nictypes.eth3=ethernet + nictypes.bond0=bond + nictypes.bond0.1=vlan + nictypes.bond0.2=vlan + nictypes.br1=bridge + nictypes.br2=bridge + nicips.br1=10.0.0.1 + nicips.br2=20.0.0.1 + nicnetworks.br1=net10 + nicnetworks.br2=net20 + + - Using the ``mkdef -z`` option, define the stanza file to xCAT: :: + + cat .stanza | mkdef -z + +Define the additional networks to xCAT +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If this is a new network being created on the compute nodes, an entry needs to be created into the xCAT database. + +The ``nicnetworks`` attribute only defines the nic that uses the IP address. +Other information about the network should be defined in the ``networks`` table. + +Use the ``chdef`` command to add/modify the networks in the ``networks`` table :: + + chdef -t network net10 net=10.0.0.0 mask=255.0.0.0 + chdef -t network net20 net=20.0.0.0 mask=255.0.0.0 + +Add ``confignetwork`` into the node's postscripts list +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Use the following command to add ``confignetwork`` into postscript list to execute on reboot: :: + + chdef cn1 -p postscripts=confignetwork + +If the compute node is already running, use ``updatenode`` command to run ``confignetwork`` postscript without rebooting the node:: + + updatenode cn1 -P confignetwork + diff --git a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_second_adapter.rst b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_second_adapter.rst index a6abdd3e9..492361fc5 100644 --- a/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_second_adapter.rst +++ b/docs/source/guides/admin-guides/manage_clusters/common/deployment/cfg_second_adapter.rst @@ -1,5 +1,5 @@ -Configure Additional Network Interfaces -======================================= +Configure Additional Network Interfaces - confignics +==================================================== The **nics** table and the **confignics** postscript can be used to automatically configure additional network interfaces (mutltiple ethernets adapters, InfiniBand, etc) on the nodes as they are being deployed. @@ -47,7 +47,7 @@ There are 3 ways to complete this operation. The ``tabedit`` command opens the specified xCAT database table in a vi like editor and allows the user to edit any text and write the changes back to the database table. - *WARNING* Using the ``tabedit`` command is not the recommended method because it is tedious and error prone. + *WARNING:* Using the ``tabedit`` command is not the recommended method because it is tedious and error prone. After changing the content of the ``nics`` table, here is the result from ``tabdump nics`` :: @@ -70,7 +70,7 @@ After you have defined the configuration information in any of the ways above, r Add confignics into the node's postscripts list ----------------------------------------------- -Using below command to add confignics into the node's postscripts list :: +Use command below to add confignics into the node's postscripts list :: chdef cn1 -p postscripts=confignics @@ -78,7 +78,7 @@ By default, confignics does not configure the install nic. if need, using flag " chdef cn1 -p prostscripts="confignics -s" -Option "-s" write the install nic's information into configuration file for persistance. All install nic's data defined in nics table will be written also. +Option "-s" writes the install nic's information into configuration file for persistance. All install nic's data defined in nics table will be written also. Add network object into the networks table @@ -103,6 +103,7 @@ Option -r to remove the undefined NICS If the compute node's nics were configured by ``confignics`` and the nics configuration changed in the nics table, user the ``confignics -r`` to remove the undefined nic. For example, if on a compute node the ``eth0``, ``eth1``, and ``eth2`` nics were configured: :: + # ifconfig eth0 Link encap:Ethernet HWaddr 00:14:5e:d9:6c:e6 ... @@ -114,7 +115,7 @@ For example, if on a compute node the ``eth0``, ``eth1``, and ``eth2`` nics were Delete the eth2 definition in nics table using the ``chdef`` command. Then run the following to remove the undefined ``eth2`` nic on the compute node: :: - # updatenode -P "confignics -r" + updatenode -P "confignics -r" The result should have ``eth2`` disabled: :: diff --git a/docs/source/guides/admin-guides/manage_clusters/common/parallel_cmd.rst b/docs/source/guides/admin-guides/manage_clusters/common/parallel_cmd.rst index 3c9a59790..f1ad71ba3 100644 --- a/docs/source/guides/admin-guides/manage_clusters/common/parallel_cmd.rst +++ b/docs/source/guides/admin-guides/manage_clusters/common/parallel_cmd.rst @@ -25,11 +25,11 @@ Examples for xdsh xdsh node1 -K -- To run the ps -ef command on node targets node1 and node2, enter: :: +- To run the ``ps -ef`` command on node targets node1 and node2, enter: :: xdsh node1,node2 "ps -ef" -- To run the ps command on node targets node1 and run the remote command with the -v and -t flag, enter: :: +- To run the ``ps`` command on node targets node1 and run the remote command with the ``-v`` and ``-t`` flag, enter: :: xdsh node1,node2 -o"-v -t" ps =item * @@ -37,15 +37,15 @@ Examples for xdsh xdsh node1,node2 -f 1 -e myfile -- To run the ps command on node1 and ignore all the dsh environment variable except the DSH_NODE_OPTS, enter: :: +- To run the ``ps`` command on node1 and ignore all the dsh environment variable except the DSH_NODE_OPTS, enter: :: xdsh node1 -X `DSH_NODE_OPTS' ps -- To run on Linux, the xdsh command "dpkg | grep vim" on the node ubuntu diskless image, enter: :: +- To run on Linux, the ``xdsh`` command ``dpkg -l| grep vim`` on the node ubuntu diskless image, enter: :: xdsh -i /install/netboot/ubuntu14.04.2/ppc64el/compute/rootimg "dpkg -l|grep vim" -- To run xdsh with the non-root userid "user1" that has been setup as an xCAT userid and with sudo on node1 and node2 to run as root, do the following, see xCAT doc on Granting_Users_xCAT_privileges: :: +- To run ``xdsh`` with the non-root userid "user1" that has been setup as an xCAT userid and with sudo on node1 and node2 to run as root, do the following, see :ref:`Granting users xCAT privileges `: :: xdsh node1,node2 --sudo -l user1 "cat /etc/passwd" @@ -70,7 +70,7 @@ Examples for xdcp xdcp all /etc/hosts /etc/hosts -- To rsync the /etc/hosts file to your compute nodes: +- To ``rsync`` the /etc/hosts file to your compute nodes: Create a rsync file /tmp/myrsync, with this line: :: @@ -84,7 +84,7 @@ Examples for xdcp xdcp compute -F /tmp/myrsync -- To rsync the /etc/file1 and file2 to your compute nodes and rename to filex and filey: +- To ``rsync`` the /etc/file1 and file2 to your compute nodes and rename to filex and filey: Create a rsync file /tmp/myrsync, with these line: :: @@ -96,7 +96,7 @@ Examples for xdcp xdcp compute -F /tmp/myrsync to update the Compute Nodes -- To rsync files in the Linux image at /install/netboot/ubuntu14.04.2/ppc64el/compute/rootimg on the MN: +- To ``rsync`` files in the Linux image at /install/netboot/ubuntu14.04.2/ppc64el/compute/rootimg on the MN: Create a rsync file /tmp/myrsync, with this line: :: diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/configure/password.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/configure/password.rst index af22d16d8..362a1abcd 100644 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/configure/password.rst +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/configure/password.rst @@ -3,46 +3,45 @@ Configure passwords #. Configure the system password for the ``root`` user on the compute nodes. - * Set using the :doc:`chtab ` command: (**Recommended**) :: + * Set using the :doc:`chtab ` command: :: - chtab key=system passwd.username=root passwd.password=abc123 + chtab key=system passwd.username=root passwd.password=abc123 - To encrypt the password using ``openssl``, use the following command: :: + To encrypt the password using ``openssl``, use the following command: :: - chtab key=system passwd.username=root passwd.password=`openssl passwd -1 abc123` - - * Directly edit the passwd table using the :doc:`tabedit ` command. + chtab key=system passwd.username=root passwd.password=`openssl passwd -1 abc123` #. Configure the passwords for Management modules of the compute nodes. + * For OpenBMC managed systems: :: + + chtab key=openbmc passwd.username=root passwd.password=0penBmc + * For IPMI/BMC managed systems: :: - chtab key=ipmi passwd.username=USERID passwd.password=PASSW0RD + chtab key=ipmi passwd.username=ADMIN passwd.password=admin * For HMC managed systems: :: chtab key=hmc passwd.username=hscroot passwd.password=abc123 - The username and password for the HMC can be assigned directly to the HMC node object definition in xCAT. This is needed when the HMC username/password is different for each HMC. :: - - mkdef -t node -o hmc1 groups=hmc,all nodetype=ppc hwtype=hmc mgt=hmc \ - username=hscroot password=hmcPassw0rd + If the username/password is different for multiple HMCs, set the ``username`` and ``password`` attribute for each HMC node object in xCAT * For Blade managed systems: :: chtab key=blade passwd.username=USERID passwd.password=PASSW0RD - * For FSP/BPA (Flexible Service Processor/Bulk Power Assembly), if the passwords are set to the factory defaults, you must change them before running and commands to them. :: + * For FSP/BPA (Flexible Service Processor/Bulk Power Assembly) the factory default passwords must be changed before running commands against them. :: rspconfig frame general_passwd=general, rspconfig frame admin_passwd=admin, rspconfig frame HMC_passwd=, -#. If the REST API is being used configure a user and set a policy rule in xCAT. +#. If using the xCAT REST API - #. Create a non root user that will be used to make the REST API calls. :: + #. Create a non-root user that will be used to make the REST API calls. :: useradd xcatws passwd xcatws # set the password @@ -56,4 +55,4 @@ Configure passwords mkdef -t policy 6 name=xcatws rule=allow - When making calls to the xCAT REST API, pass in the credentials using the following attributes: ``userName`` and ``userPW`` + When making calls to the xCAT REST API, pass in the credentials using the following attributes: ``userName`` and ``userPW`` diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/index.rst index 8744168df..5923a32a5 100644 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/index.rst +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/index.rst @@ -1,8 +1,11 @@ IBM Power LE / OpenPOWER ========================= -The following sections documents the procedures in managing IBM Power LE (Little Endian) / OpenPOWER servers in an xCAT cluster. -These are machines use the IBM Power Architecture and is **IPMI** managed. +Most of the content is general information for xCAT, the focus and examples are for management of IBM OpenPower servers. + +IBM OpenPower Servers + * based on Power8 Processor Technology is IPMI managed + * based on Power9 Processor Technology is OpenBmc managed [**Alpha**] .. toctree:: @@ -10,7 +13,7 @@ These are machines use the IBM Power Architecture and is **IPMI** managed. configure/index.rst discovery/index.rst - management.rst + management/index.rst diskful/index.rst diskless/index.rst statelite/index.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management.rst deleted file mode 100644 index 17c6af73e..000000000 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management.rst +++ /dev/null @@ -1,124 +0,0 @@ -Hardware Management -=================== - -Basic Operation ---------------- - -The Beacon Light -```````````````` - -Most of modern enterprise level server machines have LEDs installed on their front panel and/or rear panel, which are called beacon lights. When this light has been turned on, the system administrator can use this light to indicate one physical machine out of a bunch of enclosures in a server frame. It makes life easier. - -With xCAT, the end user can turn the beacon light on or off with the commands show below. :: - - rbeacon cn1 on - rbeacon cn1 off - -The current state of the beacon light can not be queried remotely. As a workaround, one can always use the ``rbeacon`` command to turn all the beacon lights in one frame off, and then turn a particular beacon light on. :: - - rbeacon a_group_of_cn off - rbeacon cn5 on - -Remote Power Control -```````````````````` - -The next important thing is to control the power of a remote physical machine. For this purpose, ``rpower`` command is involved. :: - - rpower cn1 on - rpower cn1 off - -In order to reboot a remote physical machine, run :: - - rpower cn1 boot - -Or do a hardware reset, run :: - - rpower cn1 reset - -Get the current rpower state of a machine, refer to the example below. :: - - # rpower cn1 state - cn1: Running - -Remote Console -`````````````` - -Most enterprise level servers do not have video adapters installed with the machine. Meaning, the end user can not connect a monitor to the machine and get display output. In most cases, the console can be viewed using the serial port or LAN port, through Serial-over-LAN. Serial cable or network cable are used to get a command line interface of the machine. From there, the end user can get the basic machine booting information, firmware settings interface, local command line console, etc. - -In order to get the command line console remotely. xCAT provides the ``rcons`` command. - -#. Make sure the ``conserver`` is configured by running ``makeconservercf``. - -#. Check if the ``conserver`` is up and running :: - - ps ax | grep conserver - -#. If ``conserver`` is not running, start :: - - [sysvinit] service conserver start - [systemd] systemctl start conserver.service - -or restart, if changes to the configuration were made :: - - [sysvinit] service conserver restart - [systemd] systemctl restart conserver.service - - -#. After that, you can get the command line console for a specific machine with the ``rcons`` command :: - - rcons cn1 - -Advanced operation ------------------- - -Remote Hardware Inventory -````````````````````````` - -When you have a lot of physical machines in one place, the most important thing is identify which is which. Mapping the model type and/or serial number of a machine with its host name. Command ``rinv`` is involved in such a situation. With this command, most of the important information to distinct one machine from all the others can be obtained remotely. - -To get all the hardware information, which including the model type, serial number, firmware version, detail configuration, et al. :: - - rinv cn1 all - -As an example, in order to get only the information of firmware version, the following command can be used. :: - - rinv cn1 firm - -Remote Hardware Vitals -`````````````````````` - -Collect runtime information from running physical machine is also a big requirement for real life system administrators. This kind of information includes, temperature of CPU, internal voltage of particular socket, wattage with workload, speed of cooling fan, et al. - -In order to get such information, use ``rvitals`` command. This kind of information varies among different model types of the machine. Thus, check the actual output of the ``rvitals`` command against your machine, to verify which kinds of information can be extracted. The information may change after the firmware update of the machine. :: - - rvitals cn1 all - -As an example, get only the temperature information of a particular machine. :: - - rvitals cn1 temp - -Firmware Updating -````````````````` - -For OpenPOWER machines, use the ``rflash`` command to update firmware. - -Check firmware version of the node and the HPM file: :: - - rflash cn1 -c /firmware/8335_810.1543.20151021b_update.hpm - -Update node firmware to the version of the HPM file - -:: - - rflash cn1 /firmware/8335_810.1543.20151021b_update.hpm - -Configures Nodes' Service Processors -```````````````````````````````````` - -Here comes the command, ``rspconfig``. It is used to configure the service processor of a physical machine. On a OpenPower system, the service processor is the BMC, Baseboard Management Controller. Various variables can be set through the command. Also notice, the actual configuration may change among different machine-model types. - -Examples - -To turn on SNMP alerts for cn5: :: - - rspconfig cn5 alert=on diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/index.rst new file mode 100644 index 000000000..fd165f112 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/index.rst @@ -0,0 +1,10 @@ +Advanced Operations +=================== + +.. toctree:: + :maxdepth: 2 + + rinv.rst + rvitals.rst + rflash.rst + rspconfig.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rflash.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rflash.rst new file mode 100644 index 000000000..4bb1d2d07 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rflash.rst @@ -0,0 +1,15 @@ +``rflash`` - Remote Firmware Flashing +===================================== + +See :doc:`rflash manpage ` for more information. + +The ``rflash`` command is provided to assist the system administrator in updating firmware. + +To check the current firmware version on the node's BMC and the HPM file: :: + + rflash -c /firmware/8335_810.1543.20151021b_update.hpm + +To update the firmware on the node's BMC to version in the HPM file: :: + + rflash /firmware/8335_810.1543.20151021b_update.hpm + diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rinv.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rinv.rst new file mode 100644 index 000000000..c88daa952 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rinv.rst @@ -0,0 +1,15 @@ +``rinv`` - Remote Hardware Inventory +==================================== + +See :doc:`rinv manpage ` for more information. + +Use ``rinv`` command to remotely obtain inventory information of a physical machine. This will help to distinguish one machine from another and aid in mapping the model type and/or serial number of a machine with its host name. + +To get all the hardware information for node ``cn1``: :: + + rinv cn1 all + +To get just the firmware information for ``cn1``: :: + + rinv cn1 firm + diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rspconfig.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rspconfig.rst new file mode 100644 index 000000000..6eaca4a3f --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rspconfig.rst @@ -0,0 +1,10 @@ +``rspconfig`` - Remote Configuration of Service Processors +========================================================== + +See :doc:`rspconfig manpage ` for more information. + +The ``rspconfig`` command can be used to configure the service processor, or Baseboard Management Controller (BMC), of a physical machine. + +For example, to turn on SNMP alerts for node ``cn5``: :: + + rspconfig cn5 alert=on diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rvitals.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rvitals.rst new file mode 100644 index 000000000..7ec80f859 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/advanced/rvitals.rst @@ -0,0 +1,15 @@ +``rvitals`` - Remote Hardware Vitals +==================================== + +See :doc:`rvitals manpage ` for more information. + +Collecting runtime information from a running physical machine is an important part of system administration. Data can be obtained from the service processor including temperature, voltage, cooling fans, etc. + +Use the ``rvitals`` command to obtain this information. :: + + rvitals all + +To only get the temperature information of machines in a particular noderange: :: + + rvitals temp + diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/index.rst new file mode 100644 index 000000000..28d037b61 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/index.rst @@ -0,0 +1,9 @@ +Basic Operations +================ + +.. toctree:: + :maxdepth: 2 + + rbeacon.rst + rpower.rst + rcons.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rbeacon.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rbeacon.rst new file mode 100644 index 000000000..f58094dd7 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rbeacon.rst @@ -0,0 +1,9 @@ +``rbeacon`` - Beacon Light +========================== + +See :doc:`rbeacon manpage ` for more information. + + +Most enterprise level servers have LEDs on their front and/or rear panels, one of which is a beacon light. If turned on, this light can assist the system administrator in locating one physical machine in the cluster. + +Using xCAT, administrators can turn on and off the beacon light using: ``rbeacon on|off`` diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rcons.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rcons.rst new file mode 100644 index 000000000..531266228 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rcons.rst @@ -0,0 +1,53 @@ +``rcons`` - Remote Console +========================== + +See :doc:`rcons manpage ` for more information. + +Most enterprise servers do not have video adapters installed with the machine and often do not provide a method for attaching a physical monitor/keyboard/mouse to get the display output. For this purpose xCAT can assist the system administrator to view the console over a "Serial-over-LAN" (SOL) connection through the BMC. + +Configure the correct console management by modifying the node definition: + + * For OpenPower, **IPMI** managed server: :: + + chdef -t node -o cons=ipmi + + * For OpenPower, **OpenBMC** managed servers: :: + + chdef -t node -o cons=openbmc + +Open a console to ``compute1``: :: + + rcons compute1 + +**Note:** The keystroke ``ctrl+e c .`` will disconnect you from the console. + + +Troubleshooting +--------------- + +General +``````` + +The xCAT ``rcons`` command relies on conserver (http://www.conserver.com/). The ``conserver`` package should have been installed with xCAT as it's part of the xCAT dependency package. If you are having problems seeing the console, try the following. + + #. Make sure ``conserver`` is configured by running ``makeconservercf``. + + #. Check if ``conserver`` is up and running :: + + [sysvinit] service conserver status + [systemd] systemctl status conserver.service + + #. If ``conserver`` is not running, start the service using: :: + + [sysvinit] service conserver start + [systemd] systemctl start conserver.service + + #. After this, try invoking the console again: ``rcons `` + + +OpenBMC Specific +``````````````` + + #. For OpenBMC managed servers, the root user must be able to ssh passwordless to the BMC for the ``rcons`` function to work. + + Copy the ``/root/.ssh/id_rsa.pub`` public key to the BMC's ``~/.ssh/authorized_keys`` file. diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rpower.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rpower.rst new file mode 100644 index 000000000..3e9ad4a97 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/basic/rpower.rst @@ -0,0 +1,15 @@ +``rpower`` - Remote Power Control +================================= + +See :doc:`rpower manpage ` for more information. + +Use the ``rpower`` command to remotely power on and off a single server or a range of servers. :: + + rpower on + rpower off + +Other actions include: + + * To get the current power state of a server: ``rpower state`` + * To boot/reboot a server: ``rpower boot`` + * To hardware reset a server: ``rpower reset`` diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/index.rst new file mode 100644 index 000000000..006b0763a --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/management/index.rst @@ -0,0 +1,8 @@ +Hardware Management +=================== + +.. toctree:: + :maxdepth: 2 + + basic/index.rst + advanced/index.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/statelite/config_statelite.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/statelite/config_statelite.rst index 9e8a9c312..ce44725f0 100644 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/statelite/config_statelite.rst +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/statelite/config_statelite.rst @@ -76,6 +76,7 @@ This is the minimal list of files needed, you can add additional files to the li "ALL","/etc/ntp.conf","tmpfs",, "ALL","/etc/ntp.conf.org","tmpfs",, "ALL","/etc/resolv.conf","tmpfs",, + "ALL","/etc/hostname","tmpfs",, "ALL","/etc/ssh/","tmpfs",, "ALL","/etc/sysconfig/","tmpfs",, "ALL","/etc/syslog-ng/","tmpfs",, @@ -89,6 +90,8 @@ This is the minimal list of files needed, you can add additional files to the li "ALL","/opt/xcat/","tmpfs",, "ALL","/xcatpost/","tmpfs",, "ALL","/root/.ssh/","tmpfs",, + "ALL","/etc/systemd/system/","tmpfs",, + "ALL","/etc/adjtime","tmpfs",, litetree table -------------- diff --git a/docs/source/guides/admin-guides/references/man1/clonevm.1.rst b/docs/source/guides/admin-guides/references/man1/clonevm.1.rst index d2b485d8d..f97967bae 100644 --- a/docs/source/guides/admin-guides/references/man1/clonevm.1.rst +++ b/docs/source/guides/admin-guides/references/man1/clonevm.1.rst @@ -19,7 +19,7 @@ SYNOPSIS ******** -\ **clonevm**\ \ *noderange*\ [ \ **-t**\ \ *mastertobemade*\ | \ **-b**\ \ *master to base vms upon*\ ] \ **-d|-**\ **-detached -f|-**\ **-force**\ +\ **clonevm**\ \ *noderange*\ [ \ **-t**\ \ *master_to_be_made*\ | \ **-b**\ \ *master_to_base_vms_upon*\ ] [ \ **-d|-**\ **-detached**\ ] [\ **-f|-**\ **-force**\ ] *********** @@ -31,15 +31,15 @@ Command to promote a VM's current configuration and storage to a master as well performing the converse operation of creating VMs based on a master. By default, attempting to create a master from a running VM will produce an error. -The force argument will request that a master be made of the VM anyway. +The \ **-**\ **-force**\ argument will request that a master be made of the VM anyway. Also, by default a VM that is used to create a master will be rebased as a thin -clone of that master. If the force argument is used to create a master of a powered -on vm, this will not be done. Additionally, the detached option can be used to +clone of that master. If the \ **-**\ **-force**\ argument is used to create a master of a powered +on vm, this will not be done. Additionally, the \ **-**\ **-detached**\ option can be used to explicitly request that a clone not be tethered to a master image, allowing the clones to not be tied to the health of a master, at the cost of additional storage. -When promoting a VM's current state to master, all rleated virtual disks will be +When promoting a VM's current state to master, all related virtual disks will be copied and merged with any prerequisite images. A master will not be tethered to other masters. @@ -49,19 +49,48 @@ OPTIONS ******* -\ **-h|-**\ **-help**\ Display usage message. -\ **-b**\ The master to base the clones upon +\ **-h|-**\ **-help**\ + + Display usage message. + -\ **-t**\ The target master to copy a single VM's state to -\ **-d**\ Explicitly request that the noderange be untethered from any masters. +\ **-b**\ \ *master_to_base_vms_upon*\ + + The master to base the clones upon + -\ **-f**\ Force cloning of a powered on VM. Implies -d if the VM is on. -\ **-v|-**\ **-version**\ Command Version. +\ **-t**\ \ *master_to_be_made*\ + + The target master to copy a single VM's state to + + + +\ **-d|-**\ **-detached**\ + + Explicitly request that the noderange be untethered from any masters. + + + +\ **-f|-**\ **-force**\ + + Force cloning of a powered on VM. Implies \ **-d**\ if the VM is on. + + + +\ **-v|-**\ **-version**\ + + Command Version. + + + +\ **-V|-**\ **-verbose**\ + + Verbose output. + -\ **-V|-**\ **-verbose**\ Verbose output. ************ @@ -80,7 +109,7 @@ EXAMPLES -1. Creating a master named appserver from a node called vm1: +1. Creating a master named \ *appserver*\ from a node called \ *vm1*\ : .. code-block:: perl @@ -90,7 +119,7 @@ EXAMPLES -2. Cleating 30 VMs from a master named appserver: +2. Cleating 30 VMs from a master named \ *appserver*\ : .. code-block:: perl diff --git a/docs/source/guides/admin-guides/references/man1/getadapter.1.rst b/docs/source/guides/admin-guides/references/man1/getadapter.1.rst index d1046d6ca..7bd216c97 100644 --- a/docs/source/guides/admin-guides/references/man1/getadapter.1.rst +++ b/docs/source/guides/admin-guides/references/man1/getadapter.1.rst @@ -33,12 +33,11 @@ Traditionally, network interfaces in Linux are enumerated as eth[0123...], but t \ **getadapter**\ use genesis to collect network adapters information, so that mean it need to restart the target node. -\ **getadapter**\ follows below scheme: +\ **getadapter**\ For each node within the , follows below scheme: -If the target node is scaned for the first time, \ **getadapter**\ will trigger genesis to collect information then save the information at local. -If the target node has ever been scaned, i.e. this node has network device information in local, \ **getadapter**\ use the local information first. -If user doesn't want to use local information, can use \ **-f**\ option to force to trigger new round scan process. -if part nodes of \ *noderange*\ don't have network device information in local and the rest have, \ **getadapter**\ only trigger real scan process for these nodes which don't have local information, the nodes have network device information in local, \ **getadapter**\ still use the local information first. +If the target node is scaned for the first time, \ **getadapter**\ will trigger genesis to collect information then save the information at the \ **nicsadapter**\ column of nics table. +If the target node has ever been scaned, \ **getadapter**\ will use the information from nics table first. +If user hopes to scan the adapter information for the node but these information already exist, \ **-f**\ option can be used to start rescan process. \ **getadapter**\ tries to collect more information for the target network device, but doesn't guarantee collect same much information for every network device. diff --git a/docs/source/guides/admin-guides/references/man1/imgcapture.1.rst b/docs/source/guides/admin-guides/references/man1/imgcapture.1.rst index d68369fe9..663064609 100644 --- a/docs/source/guides/admin-guides/references/man1/imgcapture.1.rst +++ b/docs/source/guides/admin-guides/references/man1/imgcapture.1.rst @@ -19,7 +19,7 @@ SYNOPSIS ******** -\ **imgcapture**\ \ *node*\ \ **-t | -**\ **-type**\ {\ **diskless | sysclone**\ } \ **-o | -**\ **-osimage**\ \ *osimage*\ [\ **-V | -**\ **-verbose**\ ] +\ **imgcapture**\ \ *node*\ \ **-t | -**\ **-type**\ {\ **diskless | sysclone**\ } \ **-o | -**\ **-osimage**\ \ *osimage*\ [\ **-i**\ \ *nodebootif*\ ] [\ **-n**\ \ *nodenetdrivers*\ ] [\ **-V | -**\ **-verbose**\ ] \ **imgcapture**\ [\ **-h**\ | \ **-**\ **-help**\ ] | [\ **-v**\ | \ **-**\ **-version**\ ] @@ -31,9 +31,9 @@ DESCRIPTION The \ **imgcapture**\ command will capture an image from one running diskful Linux node and create a diskless or diskful image for later use. -The \ **node**\ should be one diskful Linux node, managed by the xCAT MN, and the remote shell between MN and the \ **node**\ should have been configured. AIX is not supported. +The \ **node**\ should be one diskful Linux node, managed by the xCAT MN, and the remote shell between MN and the \ **node**\ should have been configured. AIX is not supported. VMs are not supported. -The \ **imgcapture**\ command supports two image types: \ **diskless**\ and \ **sysclone**\ . For the \ **diskless**\ type, it will capture an image from one running diskful Linux node, prepares the rootimg directory, kernel and initial rmadisks for the \ **liteimg**\ /\ **packimage**\ command to generate the statelite/stateless rootimg. For the \ **sysclone**\ type, it will capture an image from one running diskful Linux node, create an osimage which can be used to clone other diskful Linux nodes. +The \ **imgcapture**\ command supports two image types: \ **diskless**\ and \ **sysclone**\ . For the \ **diskless**\ type, it will capture an image from one running diskful Linux node, prepares the rootimg directory, kernel and initial ramdisks for the \ **liteimg**\ /\ **packimage**\ command to generate the statelite/stateless rootimg. For the \ **sysclone**\ type, it will capture an image from one running diskful Linux node, create an osimage which can be used to clone other diskful Linux nodes. The \ **diskless**\ type: @@ -80,15 +80,13 @@ OPTIONS The network interface the diskless node will boot over (e.g. eth0), which is used by the \ **genimage**\ command to generate initial ramdisks. - This is optional. - \ **-n**\ \ *nodenetdrivers*\ The driver modules needed for the network interface, which is used by the \ **genimage**\ command to generate initial ramdisks. - This is optional. By default, the \ **genimage**\ command can provide drivers for the following network interfaces: + By default, the \ **genimage**\ command can provide drivers for the following network interfaces: For x86 or x86_64 platform: diff --git a/docs/source/guides/admin-guides/references/man1/imgexport.1.rst b/docs/source/guides/admin-guides/references/man1/imgexport.1.rst index 94fe7f237..2e08a1b61 100644 --- a/docs/source/guides/admin-guides/references/man1/imgexport.1.rst +++ b/docs/source/guides/admin-guides/references/man1/imgexport.1.rst @@ -29,7 +29,7 @@ DESCRIPTION *********** -The imgexport command will export an image that is being used by xCAT. To export images, you must have the images defined in the \ *osimage*\ table. All the columns in the \ *osimage*\ and \ *linuximage*\ tables will be exported. If kits are used in stateful or stateless images, \ *kit*\ , \ *kitcomponent*\ and \ *kitrepo*\ tables will be exported. In addition, the following files will also be exported. +The \ **imgexport**\ command will export an image that is being used by xCAT. To export images, you must have the images defined in the \ *osimage*\ table. All the columns in the \ *osimage*\ and \ *linuximage*\ tables will be exported. If kits are used in stateful or stateless images, \ *kit*\ , \ *kitcomponent*\ and \ *kitrepo*\ tables will be exported. In addition, the following files will also be exported. For stateful: x.pkglist @@ -61,7 +61,7 @@ For statelite: where x is the name of the profile. -Any files specified by the -e flag will also be exported. If -p flag is specified, the names of the postscripts and the postbootscripts for the given node will be exported. The postscripts themsleves need to be manualy exported using -e flag. +Any files specified by the \ **-e**\ flag will also be exported. If \ **-p**\ flag is specified, the names of the postscripts and the postbootscripts for the given node will be exported. The postscripts themsleves need to be manualy exported using \ **-e**\ flag. For statelite, the litefile table settings for the image will also be exported. The litetree and statelite tables are not exported. @@ -71,17 +71,42 @@ OPTIONS ******* -\ **-e|-**\ **-extra**\ \ *srcfile:destdir*\ Pack up extra files. If \ *destdir*\ is omitted, the destination directory will be the same as the source directory. -\ **-h|-**\ **-help**\ Display usage message. +\ **-e|-**\ **-extra**\ \ *srcfile:destdir*\ + + Pack up extra files. If \ *destdir*\ is omitted, the destination directory will be the same as the source directory. + -\ **-p|-**\ **-postscripts**\ \ *node_name*\ Get the names of the postscripts and postbootscripts for the given node and pack them into the image. -\ **-v|-**\ **-verbose**\ Verbose output. +\ **-h|-**\ **-help**\ + + Display usage message. + -\ *image_name*\ The name of the image. Use \ *lsdef -t*\ osimage to find out all the image names. -\ *destination*\ The output bundle file name. +\ **-p|-**\ **-postscripts**\ \ *node_name*\ + + Get the names of the postscripts and postbootscripts for the given node and pack them into the image. + + + +\ **-v|-**\ **-verbose**\ + + Verbose output. + + + +\ *image_name*\ + + The name of the image. Use \ **lsdef -t osimage**\ to find out all the image names. + + + +\ *destination*\ + + The output bundle file name. + + ************ diff --git a/docs/source/guides/admin-guides/references/man1/imgimport.1.rst b/docs/source/guides/admin-guides/references/man1/imgimport.1.rst index 49384e7eb..e5e542f7c 100644 --- a/docs/source/guides/admin-guides/references/man1/imgimport.1.rst +++ b/docs/source/guides/admin-guides/references/man1/imgimport.1.rst @@ -29,7 +29,7 @@ DESCRIPTION *********** -The imgimport command will import an image that has been exported by \ *imgexport*\ from xCAT. This is the easiest way to transfer/backup/, change or share images created by xCAT whether they be stateless or stateful. The bundle file will be unpacked in the current working directory. The xCAT configuration such as \ *osimage*\ and \ *linuximage*\ tables will then be updated. +The \ **imgimport**\ command will import an image that has been exported by \ **imgexport**\ from xCAT. This is the easiest way to transfer, backup, change or share images created by xCAT whether they be stateless or stateful. The bundle file will be unpacked in the current working directory. The xCAT configuration such as \ *osimage*\ and \ *linuximage*\ tables will then be updated. For stateful, the following files will be copied to the appropriate directories. x.pkglist @@ -61,15 +61,15 @@ For statelite, the following files will be copied to the appropriate directories where x is the profile name. -Any extra files, included by --extra flag in the imgexport command, will also be copied to the appropriate directories. +Any extra files, included by \ **-**\ **-extra**\ flag in the \ **imgexport**\ command, will also be copied to the appropriate directories. For statelite, the litefile table will be updated for the image. The litetree and statelite tables are not imported. -If -p flag is specified, the \ *postscripts*\ table will be updated with the postscripts and the postbootscripts names from the image for the nodes given by this flag. +If \ **-p**\ flag is specified, the \ *postscripts*\ table will be updated with the postscripts and the postbootscripts names from the image for the nodes given by this flag. -If -f flag is not specified, all the files will be copied to the same directories as the source. If it is specified, the old profile name x will be changed to the new and the files will be copied to the appropriate directores for the new profiles. For example, \ */opt/xcat/share/xcat/netboot/sles/x.pkglist*\ will be copied to \ */install/custom/netboot/sles/compute_new.pkglist*\ and \ */install/netboot/sles11/ppc64/x/kernel*\ will be copied to \ */install/netboot/sles11/ppc64/compute_new/kernel*\ . This flag is commonly used when you want to copy the image on the same xCAT mn so you can make modification on the new one. +If \ **-f**\ flag is not specified, all the files will be copied to the same directories as the source. If it is specified, the old profile name x will be changed to the new and the files will be copied to the appropriate directores for the new profiles. For example, \ */opt/xcat/share/xcat/netboot/sles/x.pkglist*\ will be copied to \ */install/custom/netboot/sles/compute_new.pkglist*\ and \ */install/netboot/sles11/ppc64/x/kernel*\ will be copied to \ */install/netboot/sles11/ppc64/compute_new/kernel*\ . This flag is commonly used when you want to copy the image on the same xCAT mn so you can make modification on the new one. -After this command, you can run the \ *nodeset*\ command and then start deploying the nodes. You can also choose to modify the files and run the following commands before the node depolyment. +After this command, you can run the \ **nodeset**\ command and then start deploying the nodes. You can also choose to modify the files and run the following commands before the node depolyment. For stateful: nodeset @@ -90,13 +90,30 @@ OPTIONS ******* -\ **-f|-**\ **-profile**\ \ *new_prof*\ Import the image with a new profile name. -\ **-h|-**\ **-help**\ Display usage message. +\ **-f|-**\ **-profile**\ \ *new_profile*\ + + Import the image with a new profile name. + -\ **-p|-**\ **-postscripts**\ \ *nodelist*\ Import the postscripts. The postscripts contained in the image will be set in the postscripts table for \ *nodelist*\ . -\ **-v|-**\ **-verbose**\ Verbose output. +\ **-h|-**\ **-help**\ + + Display usage message. + + + +\ **-p|-**\ **-postscripts**\ \ *nodelist*\ + + Import the postscripts. The postscripts contained in the image will be set in the postscripts table for \ *nodelist*\ . + + + +\ **-v|-**\ **-verbose**\ + + Verbose output. + + ************ diff --git a/docs/source/guides/admin-guides/references/man1/lsvm.1.rst b/docs/source/guides/admin-guides/references/man1/lsvm.1.rst index ee8b7bf31..dc53a2c47 100644 --- a/docs/source/guides/admin-guides/references/man1/lsvm.1.rst +++ b/docs/source/guides/admin-guides/references/man1/lsvm.1.rst @@ -56,15 +56,15 @@ DESCRIPTION *********** -The lsvm command lists all partition profiles defined for the partitions specified in noderange. If noderange is a CEC, all the partitions associated with that CEC are displayed. +The \ **lsvm**\ command lists all partition profiles defined for the partitions specified in \ *noderange*\ . If \ *noderange*\ is a CEC, all the partitions associated with that CEC are displayed. For PPC (using Direct FSP Management): ====================================== -For Power 775(use option \ *--p775*\ to specify), lsvm lists all partition I/O slots information for the partitions specified in noderange. If noderange is a CEC, it gets the CEC's pump mode value, octant's memory interleaving value, the all the octants configure value, and all the I/O slots information. +For Power 775 (use option \ **-**\ **-p775**\ to specify), \ **lsvm**\ lists all partition I/O slots information for the partitions specified in \ *noderange*\ . If \ *noderange*\ is a CEC, it gets the CEC's pump mode value, octant's memory interleaving value, the all the octants configure value, and all the I/O slots information. -For DFM-managed (short for Direct FSP Management mode) normal power machine, lsvm lists the processor, memory, physical I/O slots, hugepage and BSR info for the specified partitions or CEC. +For DFM-managed (short for Direct FSP Management mode) normal power machine, \ **lsvm**\ lists the processor, memory, physical I/O slots, hugepage and BSR info for the specified partitions or CEC. The pump mode value has the valid options: 1 - Node Pump Mode @@ -83,9 +83,9 @@ For KVM and VMware ================== -The virtual machines that defined in the hypervisor \ *noderange*\ will be displayed. \ *noderange*\ can only be hypervisor. +If \ *noderange*\ is a hypervisor, virtual machines defined on that hypervisor will be displayed. If \ *noderange*\ is a VM, details for that VM will be displayed. -Note: Only the virtual machine which is in power on state can be listed by lsvm command. +Note: Only the virtual machine which is in power on state can be listed by \ **lsvm**\ command. For zVM: @@ -107,7 +107,7 @@ Display usage message. \ **-v**\ -Command Version. +Command version. \ **-V**\ @@ -157,7 +157,7 @@ Output is similar to: lpar3: name=lpar3,lpar_name=lpar3,lpar_id=4,lpar_env=aixlinux,all_resources=0,min_mem=512, desired_mem=2048, max_mem=3072,min_num_huge_pages=0,desired_num_huge_pages=0,max_num_huge_pages=0,proc_mode=shared, min_proc_units=0.5,desired_proc_units=0.5,max_proc_units=0.5,min_procs=1,desired_procs=1,max_procs=1, sharing_mode=uncap,uncap_weight=128,shared_proc_pool_id=0,shared_proc_pool_name=DefaultPool,io_slots=none, lpar_io_pool_ids=none,max_virtual_slots=10, "virtual_serial_adapters=1/server/1/any//any/1,0/server/1/any//any/1", virtual_scsi_adapters=2/client/1/p6vios/4/1,virtual_eth_adapters=3/0/1//0/1,hca_adapters=none,boot_mode=norm,conn_monitoring=0,auto_start=0,power_ctrl_lpar_ids=none,work_group_id=none,redundant_err_path_reporting=0, bsr_arrays=0,lhea_logical_ports=none,lhea_capabilities=none,lpar_proc_compat_mode=default,electronic_err_reporting=null -2.To list all IVM-managed partitions associated with CEC cec01, enter: +2. To list all IVM-managed partitions associated with CEC cec01, enter: .. code-block:: perl @@ -252,7 +252,7 @@ Output is similar to: OctantID=7,PendingOctCfg=1,CurrentOctCfg=1,PendingMemoryInterleaveMode=2,CurrentMemoryInterleaveMode=2; -6.To list the lparname of lpars, enter: +6. To list the lparname of lpars, enter: .. code-block:: perl @@ -360,9 +360,9 @@ Output is similar to: Available BSR array: 256 -Note: The lines list in "All Physical I/O info" section represent all the physical I/O resource information. The format is like "owner_lparid,slot_id,physical resource name,drc_index,slot_class_code(class discription)". The 'drc index' is short for Dynamic Resource Configuration Index, it uniquely indicate a physical I/O resource in normal power machine. +Note: The lines listed in "All Physical I/O info" section represent all the physical I/O resource information. The format is like "owner_lparid,slot_id,physical resource name,drc_index,slot_class_code(class discription)". The 'drc index' is short for Dynamic Resource Configuration Index, it uniquely indicates a physical I/O resource in a normal power machine. -9.For DFM-managed partition on normal power machine, list out the detailed information: +9. For DFM-managed partition on normal power machine, list out the detailed information: .. code-block:: perl diff --git a/docs/source/guides/admin-guides/references/man1/makentp.1.rst b/docs/source/guides/admin-guides/references/man1/makentp.1.rst index 715ce800f..866d2e20f 100644 --- a/docs/source/guides/admin-guides/references/man1/makentp.1.rst +++ b/docs/source/guides/admin-guides/references/man1/makentp.1.rst @@ -43,7 +43,7 @@ OPTIONS \ **-a|-**\ **-all**\ - Setup NTP servers for both management node and the service node. + Setup NTP servers for both management node and the service node. If management node has SLES installed and used as \ *ntpservers*\ , it is recommanded to use the \ **setupntp**\ postscript to set up NTP server for service nodes. diff --git a/docs/source/guides/admin-guides/references/man1/rflash.1.rst b/docs/source/guides/admin-guides/references/man1/rflash.1.rst index a77444506..47b35ae06 100644 --- a/docs/source/guides/admin-guides/references/man1/rflash.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rflash.1.rst @@ -11,7 +11,7 @@ Name **** -\ **rflash**\ - Performs Licensed Internal Code (LIC) update support for HMC-attached POWER5 and POWER6 Systems, and POWER7 systems using Direct FSP management. rflash is also able to update firmware for NextScale Fan Power Controllers (FPC). +\ **rflash**\ - Performs Licensed Internal Code (LIC) update support for HMC-attached POWER5 and POWER6 Systems, and POWER7 systems using Direct FSP management. \ **rflash**\ is also able to update firmware for NextScale Fan Power Controllers (FPC). **************** @@ -25,7 +25,7 @@ PPC (with HMC) specific: ======================== -\ **rflash**\ \ *noderange*\ \ **-p**\ \ *directory*\ {\ **-**\ **-activate**\ \ **concurrent | disruptive**\ } [\ **-V | -**\ **-verbose**\ ] +\ **rflash**\ \ *noderange*\ \ **-p**\ \ *directory*\ [\ **-**\ **-activate**\ {\ **concurrent | disruptive**\ }] [\ **-V | -**\ **-verbose**\ ] \ **rflash**\ \ *noderange*\ {\ **-**\ **-commit | -**\ **-recover**\ } [\ **-V | -**\ **-verbose**\ ] @@ -34,7 +34,7 @@ PPC (without HMC, using Direct FSP Management) specific: ======================================================== -\ **rflash**\ \ *noderange*\ \ **-p**\ \ *directory*\ \ **-**\ **-activate**\ \ **disruptive | deferred**\ [\ **-d**\ \ *data_directory*\ ] +\ **rflash**\ \ *noderange*\ \ **-p**\ \ *directory*\ [\ **-**\ **-activate**\ {\ **disruptive | deferred**\ }] [\ **-d**\ \ *data_directory*\ ] \ **rflash**\ \ *noderange*\ {\ **-**\ **-commit | -**\ **-recover**\ } @@ -43,14 +43,14 @@ NeXtScale FPC specific: ======================= -\ **rflash**\ \ *noderange*\ \ *http directory*\ +\ **rflash**\ \ *noderange*\ \ *http_directory*\ OpenPOWER BMC specific: ======================= -\ **rflash**\ \ *noderange*\ \ *hpm file path*\ [\ **-c | -**\ **-check**\ ] [\ **-V**\ ] +\ **rflash**\ \ *noderange*\ \ *hpm_file_path*\ [\ **-c | -**\ **-check**\ ] [\ **-**\ **-retry=**\ \ *count*\ ] [\ **-V**\ ] @@ -59,13 +59,13 @@ OpenPOWER BMC specific: ******************* -\ **rflash**\ The \ **rflash**\ command initiates Firmware updates on supported xCAT nodes. Licensed Internal Code (also known as microcode) updates are performed on supported HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. +The \ **rflash**\ command initiates Firmware updates on supported xCAT nodes. Licensed Internal Code (also known as microcode) updates are performed on supported HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. The command scans the specified directory structure for Firmware update package files applicable to the given nodes and components. And then it will \ **automatically**\ select the \ **latest**\ version for the upgrade. The firmware update files include the Microcode update package and associated XML file. They can be downloaded from the IBM Web site: \ *http://www-933.ibm.com/support/fixcentral/*\ . The POWER5 and POWER6 systems contain several components that use Licensed Internal Code. The \ **rflash**\ command supports two of these components: the managed system (also known as the Central Electronics Complex, or CEC) and the power subsystem (also known as the Bulk Power Assembly (BPA) or Bulk Power Controller (BPC)). Some POWER5 managed systems can be attached to a power subsystem. These power subsystems can support multiple managed systems. When the \ **rflash**\ command is invoked, xCAT will determine the managed system or power subsystem associated with that CEC and perform the update. -The \ **noderange**\ can be an CEC or CEC list, a Lpar or Lpar list and a Frame or Frame list. But CEC (or Lpar) and Frame \ **can't**\ be used at the same time. When the \ *noderange*\ is an CEC or CEC list, \ **rflash**\ will upgrade the firmware of the CEC or CECs in the cec list. If \ *noderange*\ is a Lpar or Lpar list, \ **rflash**\ will update Licensed Internal Code (LIC) on HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. If \ *noderange*\ is a Frame or Frame list, \ **rflash**\ will update Licensed Internal Code (LIC) of the power subsystem on HMC-attached POWER5 and POWER6 pSeries nodes. The \ *noderange*\ can also be the specified node groups. You can specify a comma or space-separated list of node group ranges. See the \ *noderange*\ man page for detailed usage information. +The \ *noderange*\ can be an CEC or CEC list, a Lpar or Lpar list and a Frame or Frame list. But CEC (or Lpar) and Frame \ **can't**\ be used at the same time. When the \ *noderange*\ is an CEC or CEC list, \ **rflash**\ will upgrade the firmware of the CEC or CECs in the cec list. If \ *noderange*\ is a Lpar or Lpar list, \ **rflash**\ will update Licensed Internal Code (LIC) on HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. If \ *noderange*\ is a Frame or Frame list, \ **rflash**\ will update Licensed Internal Code (LIC) of the power subsystem on HMC-attached POWER5 and POWER6 pSeries nodes. The \ *noderange*\ can also be the specified node groups. You can specify a comma or space-separated list of node group ranges. See the \ *noderange*\ man page for detailed usage information. The command will update firmware for NeXtScale FPC when given an FPC node and the http information needed to access the firmware. @@ -102,11 +102,11 @@ In currently Direct FSP/BPA Management, our \ **rflash**\ doesn't support \ **c The \ **deferred**\ option will load the new firmware into the T (temp) side, but will not activate it like the disruptive firmware. The customer will continue to run the Frames and CECs working with the P (perm) side and can wait for a maintenance window where they can activate and boot the Frame/CECs with new firmware levels. Refer to the doc to get more details: XCAT_Power_775_Hardware_Management -In Direct FSP/BPA Management, there is -d option. The default value is /tmp. When do firmware update, rflash will put some related data from rpm packages in directory, so the execution of rflash will require available disk space in for the command to properly execute: +In Direct FSP/BPA Management, there is \ **-d**\ \ *data_directory*\ option. The default value is /tmp. When doing firmware update, \ **rflash**\ will put some related data from rpm packages in directory, so the execution of \ **rflash**\ will require available disk space in for the command to properly execute: For one GFW rpm package and one power code rpm package , if the GFW rpm package size is gfw_rpmsize, and the Power code rpm package size is power_rpmsize, it requires that the available disk space should be more than: 1.5\*gfw_rpmsize + 1.5\*power_rpmsize -For Power 775, the rflash command takes effect on the primary and secondary FSPs or BPAs almost in parallel. +For Power 775, the \ **rflash**\ command takes effect on the primary and secondary FSPs or BPAs almost in parallel. For more details about the Firmware Update using Direct FSP/BPA Management, refer to: XCAT_Power_775_Hardware_Management#Updating_the_BPA_and_FSP_firmware_using_xCAT_DFM @@ -156,7 +156,7 @@ The command will update firmware for OpenPOWER BMC when given an OpenPOWER node -\ **-**\ **-activate**\ \ **concurrent**\ | \ **disruptive**\ +\ **-**\ **-activate**\ {\ **concurrent**\ | \ **disruptive**\ } Must be specified to activate the new Licensed Internal Code. The "disruptive" option will cause the target systems to be recycled. Without this flag, LIC updates will be installed only, not activated. @@ -174,6 +174,12 @@ The command will update firmware for OpenPOWER BMC when given an OpenPOWER node +\ **-**\ **-retry=**\ \ *count*\ + + Specify number of times to retry the update if failure is detected. Default value is 2. Value of 0 can be used to indicate no retries. + + + \ **-v|-**\ **-version**\ Displays the command's version. @@ -251,7 +257,7 @@ The command will update firmware for OpenPOWER BMC when given an OpenPOWER node rflash fs3 /firmware/8335_810.1543.20151021b_update.hpm - Print verbose message to rflash log file per node when updading firmware: + Print verbose message to rflash log file (/var/log/xcat/rflash/fs3.log) when updading firmware: .. code-block:: perl diff --git a/docs/source/guides/admin-guides/references/man1/rinv.1.rst b/docs/source/guides/admin-guides/references/man1/rinv.1.rst index bc796df6a..9d44f4377 100644 --- a/docs/source/guides/admin-guides/references/man1/rinv.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rinv.1.rst @@ -28,13 +28,20 @@ BMC/MPA specific: \ **rinv**\ \ *noderange*\ {\ **pci | model | serial | asset | vpd | mprom | deviceid | guid | firm | diag | dimm | bios | mparom | mac | all**\ } -OpenPOWER server specific: -========================== +OpenPOWER (using ipmi) server specific: +======================================= \ **rinv**\ \ *noderange*\ {\ **model | serial | deviceid | uuid | guid | vpd | mprom | firm | all**\ } +OpenPOWER (using openbmc) server specific: +========================================== + + +\ **rinv**\ \ *noderange*\ {\ **model | serial | deviceid | uuid | guid | vpd | mprom | firm | cpu | dimm | all**\ } + + PPC (with HMC) specific: ======================== diff --git a/docs/source/guides/admin-guides/references/man1/rmdef.1.rst b/docs/source/guides/admin-guides/references/man1/rmdef.1.rst index 4b1d4cb5a..3655a78b5 100644 --- a/docs/source/guides/admin-guides/references/man1/rmdef.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rmdef.1.rst @@ -22,7 +22,7 @@ SYNOPSIS \ **rmdef**\ [\ **-h | -**\ **-help**\ ] [\ **-t**\ \ *object-types*\ ] \ **rmdef**\ [\ **-V | -**\ **-verbose**\ ] [\ **-a | -**\ **-all**\ ] [\ **-t**\ \ *object-types*\ ] [\ **-o**\ \ *object-names*\ ] -[\ **-f | -**\ **-force**\ ] [\ *noderange*\ ] +[\ **-f | -**\ **-force**\ ] [\ **-C | -**\ **-cleanup**\ ] [\ *noderange*\ ] *********** @@ -41,17 +41,26 @@ OPTIONS \ **-a|-**\ **-all**\ - Clear the whole xCAT database. A backup of the xCAT definitions should be saved before using this option. Once all the data is removed the xCAT daemon will no longer work. Most xCAT commands will fail. - In order to use xCAT commands again, you have two options. You can restore your database from your backup by switching to bypass mode, and running the restorexCATdb command. - You switch to bypass mode by setting the XCATBYPASS environmant variable. (ex. "export XCATBYPASS=yes") - A second option is to run xcatconfig -d. This will restore the initial setup of the database as when xCAT was initially installed. - You can then restart xcatd and run xCAT commands. + Clear the whole xCAT database. A backup of the xCAT definitions should be saved before using this option as the xCAT daemons will no longer work once cleared. + + To restore: + + + 1. \ **export XCATBYPASS=1**\ and run the \ **restorexCATdb**\ command. + + or + + + + 2. Run \ **xcatconfig -d**\ which initializes the database the same as when xCAT was installed. + + \ **-f|-**\ **-force**\ - Use this with the all option as an extra indicator that ALL definitions are to be removed. + Use this with the \ **-**\ **-all**\ option as an extra indicator that ALL definitions are to be removed. @@ -79,6 +88,12 @@ OPTIONS +\ **-C|-**\ **-cleanup**\ + + Perform additional cleanup by running \ **nodeset offline**\ on the objects specified in the \ *noderange*\ . + + + \ **-V|-**\ **-verbose**\ Verbose mode. diff --git a/docs/source/guides/admin-guides/references/man1/rpower.1.rst b/docs/source/guides/admin-guides/references/man1/rpower.1.rst index 9eda41449..74dcc3cac 100644 --- a/docs/source/guides/admin-guides/references/man1/rpower.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rpower.1.rst @@ -23,13 +23,29 @@ SYNOPSIS \ **rpower**\ [\ **-h | -**\ **-help | -v | -**\ **-version**\ ] -BMC (using IPMI) specific: -========================== +BMC (using IPMI): +================= \ **rpower**\ \ *noderange*\ [\ **on | off | softoff | reset | boot | stat | state | status | wake | suspend**\ [\ **-w**\ \ *timeout*\ ] [\ **-o**\ ] [\ **-r**\ ]] -\ **rpower**\ \ *noderange*\ [\ **pduon | pduoff | pdustat**\ ] +\ **rpower**\ \ *noderange*\ [\ **pduon | pduoff | pdustat | pdureset**\ ] + + +OpenPower BMC (using IPMI): +=========================== + + +\ **rpower**\ \ *noderange*\ [\ **on | off | reset | boot | stat | state | status**\ ] + +\ **rpower**\ \ *noderange*\ [\ **pduon | pduoff | pdustat | pdureset**\ ] + + +OpenPower OpenBMC: +================== + + +\ **rpower**\ \ *noderange*\ [\ **off | on | reset | boot | stat | state | status**\ ] PPC (with IVM or HMC) specific: @@ -90,6 +106,13 @@ Blade specific: \ **rpower**\ \ *noderange*\ [\ **cycle | softoff**\ ] +Lenovo High-Density Server specific: +==================================== + + +\ **rpower**\ \ *noderange*\ [\ **on | off | reset | boot | reseat**\ ] + + zVM specific: ============= @@ -108,7 +131,7 @@ pdu specific: ============= -\ **rpower**\ \ *noderange*\ [\ **stat | off | on**\ ] +\ **rpower**\ \ *noderange*\ [\ **stat | off | on | reset**\ ] @@ -263,6 +286,12 @@ OPTIONS +\ **reseat**\ + + For Lenovo high-density servers, simulates unplugging and replugging the node into the chassis. + + + \ **of**\ Boot the node to open firmware console mode. diff --git a/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst b/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst index 38df32d0a..9660a425d 100644 --- a/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst @@ -38,11 +38,18 @@ BMC specific: ============= -\ **rspconfig**\ \ *noderange*\ {\ **vlan | ip | netmask | gateway | backupgateway | garp**\ } +\ **rspconfig**\ \ *noderange*\ {\ **ip | netmask | gateway | backupgateway | garp | vlan**\ } \ **rspconfig**\ \ *noderange*\ \ **garp**\ =\ *time*\ +OpenBMC specific: +================= + + +\ **rspconfig**\ \ *noderange*\ {\ **ip | netmask | gateway | vlan**\ } + + MPA specific: ============= diff --git a/docs/source/guides/admin-guides/references/man1/rvitals.1.rst b/docs/source/guides/admin-guides/references/man1/rvitals.1.rst index 55d29d53b..e6929cdfc 100644 --- a/docs/source/guides/admin-guides/references/man1/rvitals.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rvitals.1.rst @@ -60,7 +60,7 @@ OpenPOWER server specific: ========================== -\ **rvitals**\ \ *noderange*\ {\ **temp | voltage | wattage | fanspeed | power | leds | all**\ } +\ **rvitals**\ \ *noderange*\ [\ **temp | voltage | wattage | fanspeed | power | leds | all**\ ] diff --git a/docs/source/guides/admin-guides/references/man1/xcatperftest.1.rst b/docs/source/guides/admin-guides/references/man1/xcatperftest.1.rst new file mode 100644 index 000000000..4911358cd --- /dev/null +++ b/docs/source/guides/admin-guides/references/man1/xcatperftest.1.rst @@ -0,0 +1,213 @@ + +############## +xcatperftest.1 +############## + +.. highlight:: perl + + +**** +NAME +**** + + +\ **xcatperftest**\ - Run xCAT command performance baseline testing on fake nodes. + + +******** +SYNOPSIS +******** + + +\ **xcatperftest**\ [\ **-?|-h**\ ] + +[\ **PERF_DRYRUN**\ =y] [\ **PERF_NOCREATE**\ =y] \ **xcatperftest**\ [\ *command-list-file*\ ] + + +*********** +DESCRIPTION +*********** + + +The xcatperftest command runs commandes defined in a command list file and get their execution response time baseline for performance purpose. +The xcatperftest command is part of the xCAT package xCAT-test, and you can run it standalone or leverage it to build up your automation test cases. + +Any commands could be defined in the command list file, however, it is recommended that the one-time initial configuration are well prepared prior to run xcatperftest command. +For example, the network object, osdistor and osimage image objects. + +Follow the below steps to run xcatperftest command: + +1, Install xCAT-test on a xCAT management nodes. + +2, Prepare a command list in which the commands are what you want to messure. + +3, Prepare the initial configuration based on the command list to make sure all commands could be executed in techinal. + +4, Run xcatperftest with the total fake nodes number and the above command list file. + +Node: It is suggested to run the command in background as it normally takes long time to finish all the performanc testing with large amount of fake nodes. + + +******* +OPTIONS +******* + + + +\ **-?|-h**\ + + Display usage message. + + + + + + Specifies the command list file with full-path. xCAT supports an example command file: /opt/xcat/share/xcat/tools/autotest/perfcmds.lst + + + + + + Total number of fake nodes will be defined during the testing. + + + + +************ +RETURN VALUE +************ + + +0 The command completed successfully. + +1 An error has occurred. + + +***************** +COMMAND LIST FILE +***************** + + +The command list file is in flat text format, the testing framework will parse the file line by line, here is an example of the commannd list file: + + +.. code-block:: perl + + #SERIES# 1,50,100,250,500,1000,2500,5000 + mkdef -z -f < #STANZ# + lsdef #NODES# + makehosts #NODES# + makedns -n #NODES# + makedhcp #NODES# + makeknownhosts #NODES# + nodech #NODES# groups,=group1 + nodels #NODES# noderes + nodeset #NODES# osimage=rhels7.3-GA-ppc64le-install-compute + chdef -t node -o #NODES# postscripts="fake" profile="install" netboot="grub2" + rmdef -t node #PERFGRP# + mkdef -z < #STANZ# + noderm #PERFGRP# + + +\ **Note**\ : Each line defines one command, and the commands dependency should be handled by the line order. +If you define a node range series line (started with #SERIES#) in this file, xcatperftest will run the command for each node range defined in series line. + +\ **#SERIES#**\ To define a node range series, and the series should be an comma split incremental number sequence. + +\ **#STANZ#**\ It will be replaced with real stanz file path when this command line runs. + +\ **#NODES#**\ It will be replaced with real node range defined in #SERIES# line when this command line runs. If no series line, the node group will be used. + +\ **#PERFGRP#**\ It will be replaced with node group when this command line runs. + + +******************** +ENVIRONMENT VARIABLE +******************** + + +The xcatperftest command supports be customized by some environment variables. + +\ **FAKE_NODE_PREFIX**\ + +Optional, the prefix of the fake compute node name. By default, the value is 'fake' + +\ **FAKE_NODE_GROUP**\ + +# Optional, the group name of all the fake compute nodes. By default, the value is 'perftest' + +\ **FAKE_NETWORK_PRO**\ + +Mandatory, the Provision network for all the fake compute nodes. By default, the value is '192.168'. +It must be a string like 'A.B', and be matched with \`tabdump networks\` + +\ **FAKE_NETWORK_BMC**\ + +Mandatory, the BMC network for all the fake compute nodes. By default, the value is '192.168'. Note: It could not be the same subnet as 'FAKE_NETWORK_PRO' +It must be a string like 'A.B' and no need to be defined in 'networks' table. + +\ **PERF_NODETEMPL**\ + +Optional, The node template name used for generating fake nodes. By default, it will be auto-detected according to the current arch. + +\ **PERF_DRYRUN**\ + +Optional, Indicate no real commands will be executed if the environment variable is set. + +\ **PERF_NOCREATE**\ + +Optional, Indicate no new fake nodes will be created if the environment variable is set. + + +******** +EXAMPLES +******** + + + +1. + + To run the performance testing for the commands defined in /tmp/cmd.lst on 5000 fake nodes: + + + .. code-block:: perl + + xcatperftest 5000 /tmp/cmd.lst + + + + +2. + + To generate an xCAT node object stanz file for 10000 nodes in subnet 10.100.0.0: + + + .. code-block:: perl + + FAKE_NETWORK_PRO=10.100 FAKE_NETWORK_BMC=10.200 xcatperftest 10000 + + + + +3. + + To run the performance testing for the commands defined in /opt/xcat/share/xcat/tools/autotest/perfcmds.lst on 5000 existing fake nodes: + + + .. code-block:: perl + + PERF_NOCREATE=y xcatperftest 5000 /opt/xcat/share/xcat/tools/autotest/perfcmds.lst + + + + + +***** +FILES +***** + + +/opt/xcat/bin/xcatperftest + +/opt/xcat/share/xcat/tools/autotest/perfcmds.lst + diff --git a/docs/source/guides/admin-guides/references/man1/xdsh.1.rst b/docs/source/guides/admin-guides/references/man1/xdsh.1.rst index 51f71f74d..6132f8048 100644 --- a/docs/source/guides/admin-guides/references/man1/xdsh.1.rst +++ b/docs/source/guides/admin-guides/references/man1/xdsh.1.rst @@ -264,7 +264,7 @@ running commands, are terminated (SIGTERM). xdsh will chroot (xcatchroot for AIX) to this path and run the xdsh command against the install image. No other xdsh flags, environment variables apply with this input. A noderange is not accepted. Only runs on the local host, - normally the Management Node. The command you run must not prompt for input, the prompt will not be returned to you, and it will appear that xdsh hangs. + normally the Management Node. The command you run must not prompt for input, the prompt will not be returned to you, and it will appear that \ **xdsh**\ hangs. @@ -381,8 +381,8 @@ running commands, are terminated (SIGTERM). displays an error and terminates execution for the remote targets that failed to respond. If \ *timeout*\ is not specified, \ **xdsh**\ waits indefinitely to continue processing output from - all remote targets. The exception is the -K flag which defaults - to 10 seconds. + all remote targets. The exception is the \ **-K**\ flag which defaults + to 10 seconds. @@ -512,22 +512,28 @@ running commands, are terminated (SIGTERM). If \ **DSH_REMOTE_PASSWORD**\ is set to the password of the userid (usually root) that will ssh to the node, then when - you use the -K flag, you will not be prompted for a password. + you use the \ **-K**\ flag, you will not be prompted for a password. \ **DSH_SYNTAX**\ Specifies the shell syntax to use on remote targets; \ **ksh**\ or - \ **csh**\ . If not specified, the \ **ksh**\ syntax is assumed. This + \ **csh**\ . If not specified, the \ **ksh**\ syntax is assumed. This variable is overridden by the \ **-S**\ flag. \ **DSH_TIMEOUT**\ - Specifies the time, in seconds, to wait for output from - each remote target. This variable is overridden by the \ **-t**\ flag. + Specifies the time, in seconds, to wait for output from + each remote target. This variable is overridden by the \ **-t**\ flag. + + + +\ **DSH_VERIFY**\ + + Verifies each target before executing any remote commands on the target. If a target is not responding, execution of remote commands for the target is canceled. This variable is overridden by the \ **-v**\ flag. @@ -537,10 +543,10 @@ running commands, are terminated (SIGTERM). ********************************** -To provide backward compatibility for scripts written using dsh in +To provide backward compatibility for scripts written using \ **dsh**\ in AIX and CSM, a tool has been provided \ **groupfiles4dsh**\ , which will build node group files from the -xCAT database that can be used by dsh. See \ **man groupfiles4dsh**\ . +xCAT database that can be used by \ **dsh**\ . See \ **man groupfiles4dsh**\ . **************** @@ -566,7 +572,7 @@ userdefined. ******************* -The dsh command exit code is 0 if the command executed without errors and all remote shell commands finished with exit codes of 0. If internal dsh errors occur or the remote shell commands do not complete successfully, the dsh command exit value is greater than 0. The exit value is increased by 1 for each successive instance of an unsuccessful remote command execution. If the remotely issued command is run in the background, the exit code of the remotely issued command is 0. +The \ **xdsh**\ command exit code is 0 if the command executed without errors and all remote shell commands finished with exit codes of 0. If internal dsh errors occur or the remote shell commands do not complete successfully, the dsh command exit value is greater than 0. The exit value is increased by 1 for each successive instance of an unsuccessful remote command execution. If the remotely issued command is run in the background, the exit code of the remotely issued command is 0. **************** @@ -662,7 +668,7 @@ on the service node fedora9 diskless image, enter: To define the QLogic IB switch as a node and to set up the SSH keys for IB switch \ **qswitch**\ with device configuration file - \ **/var/opt/xcat/IBSwitch/Qlogic/config**\ and user name \ **username**\ , Enter + \ **/var/opt/xcat/IBSwitch/Qlogic/config**\ and user name \ **username**\ , enter .. code-block:: perl @@ -674,7 +680,7 @@ on the service node fedora9 diskless image, enter: -10. To define the Management Node in the database so you can use xdsh, Enter +10. To define the Management Node in the database so you can use \ **xdsh**\ , enter .. code-block:: perl @@ -685,7 +691,7 @@ on the service node fedora9 diskless image, enter: 11. To define the Mellanox switch as a node and run a command to show the ssh keys. -\ **mswitch**\ with and user name \ **username**\ , Enter +\ **mswitch**\ with and user name \ **username**\ , enter .. code-block:: perl @@ -723,7 +729,7 @@ on the service node fedora9 diskless image, enter: 13. - To run xdsh with the non-root userid "user1" that has been setup as an xCAT userid and with sudo on node1 and node2 to run as root, do the following, see xCAT doc on Granting_Users_xCAT_privileges: + To run \ **xdsh**\ with the non-root userid "user1" that has been setup as an xCAT userid and with sudo on node1 and node2 to run as root, do the following, see xCAT doc on Granting_Users_xCAT_privileges: .. code-block:: perl diff --git a/docs/source/guides/admin-guides/references/man5/nodehm.5.rst b/docs/source/guides/admin-guides/references/man5/nodehm.5.rst index e3978e25e..ef568e90f 100644 --- a/docs/source/guides/admin-guides/references/man5/nodehm.5.rst +++ b/docs/source/guides/admin-guides/references/man5/nodehm.5.rst @@ -50,7 +50,7 @@ nodehm Attributes: \ **mgt**\ - The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. + The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: openbmc, ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. diff --git a/docs/source/guides/admin-guides/references/man5/openbmc.5.rst b/docs/source/guides/admin-guides/references/man5/openbmc.5.rst new file mode 100644 index 000000000..14cbd3c80 --- /dev/null +++ b/docs/source/guides/admin-guides/references/man5/openbmc.5.rst @@ -0,0 +1,94 @@ + +######### +openbmc.5 +######### + +.. highlight:: perl + + +**** +NAME +**** + + +\ **openbmc**\ - a table in the xCAT database. + + +******** +SYNOPSIS +******** + + +\ **openbmc Attributes:**\ \ *node*\ , \ *bmc*\ , \ *consport*\ , \ *taggedvlan*\ , \ *username*\ , \ *password*\ , \ *comments*\ , \ *disable*\ + + +*********** +DESCRIPTION +*********** + + +Setting for nodes that are controlled by an on-board OpenBmc. + + +******************* +openbmc Attributes: +******************* + + + +\ **node**\ + + The node name or group name. + + + +\ **bmc**\ + + The hostname of the BMC adapter. + + + +\ **consport**\ + + The console port for OpenBMC. + + + +\ **taggedvlan**\ + + bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified. + + + +\ **username**\ + + The BMC userid. + + + +\ **password**\ + + The BMC password. + + + +\ **comments**\ + + Any user-written notes. + + + +\ **disable**\ + + Set to 'yes' or '1' to comment out this row. + + + + +******** +SEE ALSO +******** + + +\ **nodels(1)**\ , \ **chtab(8)**\ , \ **tabdump(8)**\ , \ **tabedit(8)**\ + diff --git a/docs/source/guides/admin-guides/references/man5/passwd.5.rst b/docs/source/guides/admin-guides/references/man5/passwd.5.rst index 3438aa4b6..4123a9258 100644 --- a/docs/source/guides/admin-guides/references/man5/passwd.5.rst +++ b/docs/source/guides/admin-guides/references/man5/passwd.5.rst @@ -50,13 +50,13 @@ passwd Attributes: \ **password**\ - The default password for this type of component + The default password for this type of component. On Linux, a crypted form could be provided. Hashes starting with $1$, $5$ and $6$ (md5, sha256 and sha512 respectively) are supported. \ **cryptmethod**\ - Indicates the method that was used to encrypt the password attribute. On AIX systems, if a value is provided for this attribute it indicates that the password attribute is encrypted. If the cryptmethod value is not set it indicates the password is a simple string value. On Linux systems, the cryptmethod can be set to md5, sha256 or sha512. If not set, sha256 will be used as default. + Indicates the method to use to encrypt the password attribute. On AIX systems, if a value is provided for this attribute it indicates that the password attribute is encrypted. If the cryptmethod value is not set it indicates the password is a simple string value. On Linux systems, the cryptmethod can be set to md5, sha256 or sha512. If not set, sha256 will be used as default to encrypt plain-text passwords. diff --git a/docs/source/guides/admin-guides/references/man5/pdu.5.rst b/docs/source/guides/admin-guides/references/man5/pdu.5.rst index a77ea0b32..5d5076cfb 100644 --- a/docs/source/guides/admin-guides/references/man5/pdu.5.rst +++ b/docs/source/guides/admin-guides/references/man5/pdu.5.rst @@ -19,7 +19,7 @@ SYNOPSIS ******** -\ **pdu Attributes:**\ \ *pdu*\ , \ *machinetype*\ , \ *modelnum*\ , \ *serialnum*\ , \ *outletCount*\ , \ *comments*\ , \ *disable*\ +\ **pdu Attributes:**\ \ *node*\ , \ *nodetype*\ , \ *outlet*\ , \ *machinetype*\ , \ *modelnum*\ , \ *serialnum*\ , \ *comments*\ , \ *disable*\ *********** @@ -36,12 +36,24 @@ pdu Attributes: -\ **pdu**\ +\ **node**\ The hostname/address of the pdu to which the settings apply +\ **nodetype**\ + + The node type should be pdu + + + +\ **outlet**\ + + The pdu outlet count + + + \ **machinetype**\ The pdu machine type @@ -60,16 +72,16 @@ pdu Attributes: -\ **outletCount**\ - - - \ **comments**\ - + + Any user-written notes. + \ **disable**\ - + + Set to 'yes' or '1' to comment out this row. + diff --git a/docs/source/guides/admin-guides/references/man5/xcatdb.5.rst b/docs/source/guides/admin-guides/references/man5/xcatdb.5.rst index e95ece5c8..4100de4bb 100644 --- a/docs/source/guides/admin-guides/references/man5/xcatdb.5.rst +++ b/docs/source/guides/admin-guides/references/man5/xcatdb.5.rst @@ -288,6 +288,10 @@ osimage(7)|osimage.7 +pdu(7)|pdu.7 + + + policy(7)|policy.7 @@ -561,6 +565,12 @@ notification(5)|notification.5 +openbmc(5)|openbmc.5 + + Setting for nodes that are controlled by an on-board OpenBmc. + + + osdistro(5)|osdistro.5 Information about all the OS distros in the xCAT cluster diff --git a/docs/source/guides/admin-guides/references/man7/group.7.rst b/docs/source/guides/admin-guides/references/man7/group.7.rst index 4a9954df5..8aea1128b 100644 --- a/docs/source/guides/admin-guides/references/man7/group.7.rst +++ b/docs/source/guides/admin-guides/references/man7/group.7.rst @@ -19,7 +19,7 @@ SYNOPSIS ******** -\ **group Attributes:**\ \ *addkcmdline*\ , \ *arch*\ , \ *authdomain*\ , \ *bmc*\ , \ *bmcpassword*\ , \ *bmcport*\ , \ *bmcusername*\ , \ *bmcvlantag*\ , \ *cfgmgr*\ , \ *cfgmgtroles*\ , \ *cfgserver*\ , \ *chain*\ , \ *chassis*\ , \ *cmdmapping*\ , \ *cons*\ , \ *conserver*\ , \ *consoleondemand*\ , \ *cpucount*\ , \ *cputype*\ , \ *currchain*\ , \ *currstate*\ , \ *dhcpinterfaces*\ , \ *disksize*\ , \ *displayname*\ , \ *dockercpus*\ , \ *dockerflag*\ , \ *dockerhost*\ , \ *dockermemory*\ , \ *dockernics*\ , \ *domainadminpassword*\ , \ *domainadminuser*\ , \ *domaintype*\ , \ *getmac*\ , \ *groupname*\ , \ *grouptype*\ , \ *hcp*\ , \ *height*\ , \ *hostcluster*\ , \ *hostinterface*\ , \ *hostmanager*\ , \ *hostnames*\ , \ *hosttype*\ , \ *hwtype*\ , \ *id*\ , \ *initrd*\ , \ *installnic*\ , \ *interface*\ , \ *ip*\ , \ *iscsipassword*\ , \ *iscsiserver*\ , \ *iscsitarget*\ , \ *iscsiuserid*\ , \ *kcmdline*\ , \ *kernel*\ , \ *linkports*\ , \ *mac*\ , \ *machinetype*\ , \ *membergroups*\ , \ *members*\ , \ *memory*\ , \ *mgt*\ , \ *micbridge*\ , \ *michost*\ , \ *micid*\ , \ *miconboot*\ , \ *micpowermgt*\ , \ *micvlog*\ , \ *migrationdest*\ , \ *modelnum*\ , \ *monserver*\ , \ *mpa*\ , \ *mtm*\ , \ *nameservers*\ , \ *netboot*\ , \ *nfsdir*\ , \ *nfsserver*\ , \ *nicaliases*\ , \ *niccustomscripts*\ , \ *nicdevices*\ , \ *nicextraparams*\ , \ *nichostnameprefixes*\ , \ *nichostnamesuffixes*\ , \ *nicips*\ , \ *nicnetworks*\ , \ *nicsadapter*\ , \ *nictypes*\ , \ *nimserver*\ , \ *nodetype*\ , \ *ondiscover*\ , \ *os*\ , \ *osvolume*\ , \ *otherinterfaces*\ , \ *ou*\ , \ *outletcount*\ , \ *parent*\ , \ *passwd.HMC*\ , \ *passwd.admin*\ , \ *passwd.celogin*\ , \ *passwd.general*\ , \ *passwd.hscroot*\ , \ *password*\ , \ *pdu*\ , \ *postbootscripts*\ , \ *postscripts*\ , \ *power*\ , \ *pprofile*\ , \ *prescripts-begin*\ , \ *prescripts-end*\ , \ *primarynic*\ , \ *productkey*\ , \ *profile*\ , \ *protocol*\ , \ *provmethod*\ , \ *rack*\ , \ *room*\ , \ *routenames*\ , \ *serial*\ , \ *serialflow*\ , \ *serialnum*\ , \ *serialport*\ , \ *serialspeed*\ , \ *servicenode*\ , \ *setupconserver*\ , \ *setupdhcp*\ , \ *setupftp*\ , \ *setupipforward*\ , \ *setupldap*\ , \ *setupnameserver*\ , \ *setupnfs*\ , \ *setupnim*\ , \ *setupntp*\ , \ *setupproxydhcp*\ , \ *setuptftp*\ , \ *sfp*\ , \ *side*\ , \ *slot*\ , \ *slotid*\ , \ *slots*\ , \ *snmpauth*\ , \ *snmppassword*\ , \ *snmpprivacy*\ , \ *snmpusername*\ , \ *snmpversion*\ , \ *storagcontroller*\ , \ *storagetype*\ , \ *supernode*\ , \ *supportedarchs*\ , \ *supportproxydhcp*\ , \ *switch*\ , \ *switchinterface*\ , \ *switchport*\ , \ *switchtype*\ , \ *switchvlan*\ , \ *syslog*\ , \ *termport*\ , \ *termserver*\ , \ *tftpdir*\ , \ *tftpserver*\ , \ *unit*\ , \ *urlpath*\ , \ *usercomment*\ , \ *userid*\ , \ *username*\ , \ *vmbeacon*\ , \ *vmbootorder*\ , \ *vmcfgstore*\ , \ *vmcluster*\ , \ *vmcpus*\ , \ *vmhost*\ , \ *vmmanager*\ , \ *vmmaster*\ , \ *vmmemory*\ , \ *vmnicnicmodel*\ , \ *vmnics*\ , \ *vmothersetting*\ , \ *vmphyslots*\ , \ *vmstorage*\ , \ *vmstoragecache*\ , \ *vmstorageformat*\ , \ *vmstoragemodel*\ , \ *vmtextconsole*\ , \ *vmvirtflags*\ , \ *vmvncport*\ , \ *webport*\ , \ *wherevals*\ , \ *xcatmaster*\ +\ **group Attributes:**\ \ *addkcmdline*\ , \ *arch*\ , \ *authdomain*\ , \ *bmc*\ , \ *bmcpassword*\ , \ *bmcport*\ , \ *bmcusername*\ , \ *bmcvlantag*\ , \ *cfgmgr*\ , \ *cfgmgtroles*\ , \ *cfgserver*\ , \ *chain*\ , \ *chassis*\ , \ *cmdmapping*\ , \ *cons*\ , \ *conserver*\ , \ *consoleondemand*\ , \ *consport*\ , \ *cpucount*\ , \ *cputype*\ , \ *currchain*\ , \ *currstate*\ , \ *dhcpinterfaces*\ , \ *disksize*\ , \ *displayname*\ , \ *dockercpus*\ , \ *dockerflag*\ , \ *dockerhost*\ , \ *dockermemory*\ , \ *dockernics*\ , \ *domainadminpassword*\ , \ *domainadminuser*\ , \ *domaintype*\ , \ *getmac*\ , \ *groupname*\ , \ *grouptype*\ , \ *hcp*\ , \ *height*\ , \ *hostcluster*\ , \ *hostinterface*\ , \ *hostmanager*\ , \ *hostnames*\ , \ *hosttype*\ , \ *hwtype*\ , \ *id*\ , \ *initrd*\ , \ *installnic*\ , \ *interface*\ , \ *ip*\ , \ *iscsipassword*\ , \ *iscsiserver*\ , \ *iscsitarget*\ , \ *iscsiuserid*\ , \ *kcmdline*\ , \ *kernel*\ , \ *linkports*\ , \ *mac*\ , \ *machinetype*\ , \ *membergroups*\ , \ *members*\ , \ *memory*\ , \ *mgt*\ , \ *micbridge*\ , \ *michost*\ , \ *micid*\ , \ *miconboot*\ , \ *micpowermgt*\ , \ *micvlog*\ , \ *migrationdest*\ , \ *modelnum*\ , \ *monserver*\ , \ *mpa*\ , \ *mtm*\ , \ *nameservers*\ , \ *netboot*\ , \ *nfsdir*\ , \ *nfsserver*\ , \ *nicaliases*\ , \ *niccustomscripts*\ , \ *nicdevices*\ , \ *nicextraparams*\ , \ *nichostnameprefixes*\ , \ *nichostnamesuffixes*\ , \ *nicips*\ , \ *nicnetworks*\ , \ *nicsadapter*\ , \ *nictypes*\ , \ *nimserver*\ , \ *nodetype*\ , \ *ondiscover*\ , \ *os*\ , \ *osvolume*\ , \ *otherinterfaces*\ , \ *ou*\ , \ *outlet*\ , \ *parent*\ , \ *passwd.HMC*\ , \ *passwd.admin*\ , \ *passwd.celogin*\ , \ *passwd.general*\ , \ *passwd.hscroot*\ , \ *password*\ , \ *pdu*\ , \ *postbootscripts*\ , \ *postscripts*\ , \ *power*\ , \ *pprofile*\ , \ *prescripts-begin*\ , \ *prescripts-end*\ , \ *primarynic*\ , \ *productkey*\ , \ *profile*\ , \ *protocol*\ , \ *provmethod*\ , \ *rack*\ , \ *room*\ , \ *routenames*\ , \ *serial*\ , \ *serialflow*\ , \ *serialnum*\ , \ *serialport*\ , \ *serialspeed*\ , \ *servicenode*\ , \ *setupconserver*\ , \ *setupdhcp*\ , \ *setupftp*\ , \ *setupipforward*\ , \ *setupldap*\ , \ *setupnameserver*\ , \ *setupnfs*\ , \ *setupnim*\ , \ *setupntp*\ , \ *setupproxydhcp*\ , \ *setuptftp*\ , \ *sfp*\ , \ *side*\ , \ *slot*\ , \ *slotid*\ , \ *slots*\ , \ *snmpauth*\ , \ *snmppassword*\ , \ *snmpprivacy*\ , \ *snmpusername*\ , \ *snmpversion*\ , \ *storagcontroller*\ , \ *storagetype*\ , \ *supernode*\ , \ *supportedarchs*\ , \ *supportproxydhcp*\ , \ *switch*\ , \ *switchinterface*\ , \ *switchport*\ , \ *switchtype*\ , \ *switchvlan*\ , \ *syslog*\ , \ *termport*\ , \ *termserver*\ , \ *tftpdir*\ , \ *tftpserver*\ , \ *unit*\ , \ *urlpath*\ , \ *usercomment*\ , \ *userid*\ , \ *username*\ , \ *vmbeacon*\ , \ *vmbootorder*\ , \ *vmcfgstore*\ , \ *vmcluster*\ , \ *vmcpus*\ , \ *vmhost*\ , \ *vmmanager*\ , \ *vmmaster*\ , \ *vmmemory*\ , \ *vmnicnicmodel*\ , \ *vmnics*\ , \ *vmothersetting*\ , \ *vmphyslots*\ , \ *vmstorage*\ , \ *vmstoragecache*\ , \ *vmstorageformat*\ , \ *vmstoragemodel*\ , \ *vmtextconsole*\ , \ *vmvirtflags*\ , \ *vmvncport*\ , \ *webport*\ , \ *wherevals*\ , \ *xcatmaster*\ *********** @@ -57,16 +57,24 @@ group Attributes: -\ **bmc**\ (ipmi.bmc) +\ **bmc**\ (ipmi.bmc, openbmc.bmc) + + The hostname of the BMC adapter. + + or The hostname of the BMC adapter. -\ **bmcpassword**\ (ipmi.password) +\ **bmcpassword**\ (ipmi.password, openbmc.password) The BMC password. If not specified, the key=ipmi row in the passwd table is used as the default. + or + + The BMC password. + \ **bmcport**\ (ipmi.bmcport) @@ -115,13 +123,21 @@ group Attributes: -\ **bmcusername**\ (ipmi.username) +\ **bmcusername**\ (ipmi.username, openbmc.username) The BMC userid. If not specified, the key=ipmi row in the passwd table is used as the default. + or + + The BMC userid. + -\ **bmcvlantag**\ (ipmi.taggedvlan) +\ **bmcvlantag**\ (ipmi.taggedvlan, openbmc.taggedvlan) + + bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified. + + or bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified. @@ -181,6 +197,12 @@ group Attributes: +\ **consport**\ (openbmc.consport) + + The console port for OpenBMC. + + + \ **cpucount**\ (hwinv.cpucount) The number of cpus for the node. @@ -461,7 +483,7 @@ group Attributes: \ **mgt**\ (nodehm.mgt) - The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. + The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: openbmc, ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. @@ -663,10 +685,14 @@ group Attributes: -\ **nodetype**\ (nodetype.nodetype) +\ **nodetype**\ (nodetype.nodetype, pdu.nodetype) A comma-delimited list of characteristics of this node. Valid values: ppc, blade, vm (virtual machine), osi (OS image), mm, mn, rsa, switch. + or + + The node type should be pdu + \ **ondiscover**\ (chain.ondiscover) @@ -707,7 +733,7 @@ group Attributes: -\ **outletcount**\ (pdu.outletcount) +\ **outlet**\ (pdu.outlet) The pdu outlet count diff --git a/docs/source/guides/admin-guides/references/man7/node.7.rst b/docs/source/guides/admin-guides/references/man7/node.7.rst index b06375b96..77646859a 100644 --- a/docs/source/guides/admin-guides/references/man7/node.7.rst +++ b/docs/source/guides/admin-guides/references/man7/node.7.rst @@ -19,7 +19,7 @@ SYNOPSIS ******** -\ **node Attributes:**\ \ *addkcmdline*\ , \ *appstatus*\ , \ *appstatustime*\ , \ *arch*\ , \ *authdomain*\ , \ *bmc*\ , \ *bmcpassword*\ , \ *bmcport*\ , \ *bmcusername*\ , \ *bmcvlantag*\ , \ *cfgmgr*\ , \ *cfgmgtroles*\ , \ *cfgserver*\ , \ *chain*\ , \ *chassis*\ , \ *cmdmapping*\ , \ *cons*\ , \ *conserver*\ , \ *consoleondemand*\ , \ *cpucount*\ , \ *cputype*\ , \ *currchain*\ , \ *currstate*\ , \ *dhcpinterfaces*\ , \ *disksize*\ , \ *displayname*\ , \ *dockercpus*\ , \ *dockerflag*\ , \ *dockerhost*\ , \ *dockermemory*\ , \ *dockernics*\ , \ *domainadminpassword*\ , \ *domainadminuser*\ , \ *domaintype*\ , \ *getmac*\ , \ *groups*\ , \ *hcp*\ , \ *height*\ , \ *hidden*\ , \ *hostcluster*\ , \ *hostinterface*\ , \ *hostmanager*\ , \ *hostnames*\ , \ *hosttype*\ , \ *hwtype*\ , \ *id*\ , \ *initrd*\ , \ *installnic*\ , \ *interface*\ , \ *ip*\ , \ *iscsipassword*\ , \ *iscsiserver*\ , \ *iscsitarget*\ , \ *iscsiuserid*\ , \ *kcmdline*\ , \ *kernel*\ , \ *linkports*\ , \ *mac*\ , \ *machinetype*\ , \ *memory*\ , \ *mgt*\ , \ *micbridge*\ , \ *michost*\ , \ *micid*\ , \ *miconboot*\ , \ *micpowermgt*\ , \ *micvlog*\ , \ *migrationdest*\ , \ *modelnum*\ , \ *monserver*\ , \ *mpa*\ , \ *mtm*\ , \ *nameservers*\ , \ *netboot*\ , \ *nfsdir*\ , \ *nfsserver*\ , \ *nicaliases*\ , \ *niccustomscripts*\ , \ *nicdevices*\ , \ *nicextraparams*\ , \ *nichostnameprefixes*\ , \ *nichostnamesuffixes*\ , \ *nicips*\ , \ *nicnetworks*\ , \ *nicsadapter*\ , \ *nictypes*\ , \ *nimserver*\ , \ *node*\ , \ *nodetype*\ , \ *ondiscover*\ , \ *os*\ , \ *osvolume*\ , \ *otherinterfaces*\ , \ *ou*\ , \ *outletcount*\ , \ *parent*\ , \ *passwd.HMC*\ , \ *passwd.admin*\ , \ *passwd.celogin*\ , \ *passwd.general*\ , \ *passwd.hscroot*\ , \ *password*\ , \ *pdu*\ , \ *postbootscripts*\ , \ *postscripts*\ , \ *power*\ , \ *pprofile*\ , \ *prescripts-begin*\ , \ *prescripts-end*\ , \ *primarynic*\ , \ *primarysn*\ , \ *productkey*\ , \ *profile*\ , \ *protocol*\ , \ *provmethod*\ , \ *rack*\ , \ *room*\ , \ *routenames*\ , \ *serial*\ , \ *serialflow*\ , \ *serialnum*\ , \ *serialport*\ , \ *serialspeed*\ , \ *servicenode*\ , \ *setupconserver*\ , \ *setupdhcp*\ , \ *setupftp*\ , \ *setupipforward*\ , \ *setupldap*\ , \ *setupnameserver*\ , \ *setupnfs*\ , \ *setupnim*\ , \ *setupntp*\ , \ *setupproxydhcp*\ , \ *setuptftp*\ , \ *sfp*\ , \ *side*\ , \ *slot*\ , \ *slotid*\ , \ *slots*\ , \ *snmpauth*\ , \ *snmppassword*\ , \ *snmpprivacy*\ , \ *snmpusername*\ , \ *snmpversion*\ , \ *status*\ , \ *statustime*\ , \ *storagcontroller*\ , \ *storagetype*\ , \ *supernode*\ , \ *supportedarchs*\ , \ *supportproxydhcp*\ , \ *switch*\ , \ *switchinterface*\ , \ *switchport*\ , \ *switchtype*\ , \ *switchvlan*\ , \ *syslog*\ , \ *termport*\ , \ *termserver*\ , \ *tftpdir*\ , \ *tftpserver*\ , \ *unit*\ , \ *updatestatus*\ , \ *updatestatustime*\ , \ *urlpath*\ , \ *usercomment*\ , \ *userid*\ , \ *username*\ , \ *vmbeacon*\ , \ *vmbootorder*\ , \ *vmcfgstore*\ , \ *vmcluster*\ , \ *vmcpus*\ , \ *vmhost*\ , \ *vmmanager*\ , \ *vmmaster*\ , \ *vmmemory*\ , \ *vmnicnicmodel*\ , \ *vmnics*\ , \ *vmothersetting*\ , \ *vmphyslots*\ , \ *vmstorage*\ , \ *vmstoragecache*\ , \ *vmstorageformat*\ , \ *vmstoragemodel*\ , \ *vmtextconsole*\ , \ *vmvirtflags*\ , \ *vmvncport*\ , \ *webport*\ , \ *xcatmaster*\ , \ *zonename*\ +\ **node Attributes:**\ \ *addkcmdline*\ , \ *appstatus*\ , \ *appstatustime*\ , \ *arch*\ , \ *authdomain*\ , \ *bmc*\ , \ *bmcpassword*\ , \ *bmcport*\ , \ *bmcusername*\ , \ *bmcvlantag*\ , \ *cfgmgr*\ , \ *cfgmgtroles*\ , \ *cfgserver*\ , \ *chain*\ , \ *chassis*\ , \ *cmdmapping*\ , \ *cons*\ , \ *conserver*\ , \ *consoleondemand*\ , \ *consport*\ , \ *cpucount*\ , \ *cputype*\ , \ *currchain*\ , \ *currstate*\ , \ *dhcpinterfaces*\ , \ *disksize*\ , \ *displayname*\ , \ *dockercpus*\ , \ *dockerflag*\ , \ *dockerhost*\ , \ *dockermemory*\ , \ *dockernics*\ , \ *domainadminpassword*\ , \ *domainadminuser*\ , \ *domaintype*\ , \ *getmac*\ , \ *groups*\ , \ *hcp*\ , \ *height*\ , \ *hidden*\ , \ *hostcluster*\ , \ *hostinterface*\ , \ *hostmanager*\ , \ *hostnames*\ , \ *hosttype*\ , \ *hwtype*\ , \ *id*\ , \ *initrd*\ , \ *installnic*\ , \ *interface*\ , \ *ip*\ , \ *iscsipassword*\ , \ *iscsiserver*\ , \ *iscsitarget*\ , \ *iscsiuserid*\ , \ *kcmdline*\ , \ *kernel*\ , \ *linkports*\ , \ *mac*\ , \ *machinetype*\ , \ *memory*\ , \ *mgt*\ , \ *micbridge*\ , \ *michost*\ , \ *micid*\ , \ *miconboot*\ , \ *micpowermgt*\ , \ *micvlog*\ , \ *migrationdest*\ , \ *modelnum*\ , \ *monserver*\ , \ *mpa*\ , \ *mtm*\ , \ *nameservers*\ , \ *netboot*\ , \ *nfsdir*\ , \ *nfsserver*\ , \ *nicaliases*\ , \ *niccustomscripts*\ , \ *nicdevices*\ , \ *nicextraparams*\ , \ *nichostnameprefixes*\ , \ *nichostnamesuffixes*\ , \ *nicips*\ , \ *nicnetworks*\ , \ *nicsadapter*\ , \ *nictypes*\ , \ *nimserver*\ , \ *node*\ , \ *nodetype*\ , \ *ondiscover*\ , \ *os*\ , \ *osvolume*\ , \ *otherinterfaces*\ , \ *ou*\ , \ *outlet*\ , \ *parent*\ , \ *passwd.HMC*\ , \ *passwd.admin*\ , \ *passwd.celogin*\ , \ *passwd.general*\ , \ *passwd.hscroot*\ , \ *password*\ , \ *pdu*\ , \ *postbootscripts*\ , \ *postscripts*\ , \ *power*\ , \ *pprofile*\ , \ *prescripts-begin*\ , \ *prescripts-end*\ , \ *primarynic*\ , \ *primarysn*\ , \ *productkey*\ , \ *profile*\ , \ *protocol*\ , \ *provmethod*\ , \ *rack*\ , \ *room*\ , \ *routenames*\ , \ *serial*\ , \ *serialflow*\ , \ *serialnum*\ , \ *serialport*\ , \ *serialspeed*\ , \ *servicenode*\ , \ *setupconserver*\ , \ *setupdhcp*\ , \ *setupftp*\ , \ *setupipforward*\ , \ *setupldap*\ , \ *setupnameserver*\ , \ *setupnfs*\ , \ *setupnim*\ , \ *setupntp*\ , \ *setupproxydhcp*\ , \ *setuptftp*\ , \ *sfp*\ , \ *side*\ , \ *slot*\ , \ *slotid*\ , \ *slots*\ , \ *snmpauth*\ , \ *snmppassword*\ , \ *snmpprivacy*\ , \ *snmpusername*\ , \ *snmpversion*\ , \ *status*\ , \ *statustime*\ , \ *storagcontroller*\ , \ *storagetype*\ , \ *supernode*\ , \ *supportedarchs*\ , \ *supportproxydhcp*\ , \ *switch*\ , \ *switchinterface*\ , \ *switchport*\ , \ *switchtype*\ , \ *switchvlan*\ , \ *syslog*\ , \ *termport*\ , \ *termserver*\ , \ *tftpdir*\ , \ *tftpserver*\ , \ *unit*\ , \ *updatestatus*\ , \ *updatestatustime*\ , \ *urlpath*\ , \ *usercomment*\ , \ *userid*\ , \ *username*\ , \ *vmbeacon*\ , \ *vmbootorder*\ , \ *vmcfgstore*\ , \ *vmcluster*\ , \ *vmcpus*\ , \ *vmhost*\ , \ *vmmanager*\ , \ *vmmaster*\ , \ *vmmemory*\ , \ *vmnicnicmodel*\ , \ *vmnics*\ , \ *vmothersetting*\ , \ *vmphyslots*\ , \ *vmstorage*\ , \ *vmstoragecache*\ , \ *vmstorageformat*\ , \ *vmstoragemodel*\ , \ *vmtextconsole*\ , \ *vmvirtflags*\ , \ *vmvncport*\ , \ *webport*\ , \ *xcatmaster*\ , \ *zonename*\ *********** @@ -69,16 +69,24 @@ node Attributes: -\ **bmc**\ (ipmi.bmc) +\ **bmc**\ (ipmi.bmc, openbmc.bmc) + + The hostname of the BMC adapter. + + or The hostname of the BMC adapter. -\ **bmcpassword**\ (ipmi.password) +\ **bmcpassword**\ (ipmi.password, openbmc.password) The BMC password. If not specified, the key=ipmi row in the passwd table is used as the default. + or + + The BMC password. + \ **bmcport**\ (ipmi.bmcport) @@ -127,13 +135,21 @@ node Attributes: -\ **bmcusername**\ (ipmi.username) +\ **bmcusername**\ (ipmi.username, openbmc.username) The BMC userid. If not specified, the key=ipmi row in the passwd table is used as the default. + or + + The BMC userid. + -\ **bmcvlantag**\ (ipmi.taggedvlan) +\ **bmcvlantag**\ (ipmi.taggedvlan, openbmc.taggedvlan) + + bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified. + + or bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified. @@ -193,6 +209,12 @@ node Attributes: +\ **consport**\ (openbmc.consport) + + The console port for OpenBMC. + + + \ **cpucount**\ (hwinv.cpucount) The number of cpus for the node. @@ -461,7 +483,7 @@ node Attributes: \ **mgt**\ (nodehm.mgt) - The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. + The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: openbmc, ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details. @@ -669,10 +691,14 @@ node Attributes: -\ **nodetype**\ (nodetype.nodetype) +\ **nodetype**\ (nodetype.nodetype, pdu.nodetype) A comma-delimited list of characteristics of this node. Valid values: ppc, blade, vm (virtual machine), osi (OS image), mm, mn, rsa, switch. + or + + The node type should be pdu + \ **ondiscover**\ (chain.ondiscover) @@ -713,7 +739,7 @@ node Attributes: -\ **outletcount**\ (pdu.outletcount) +\ **outlet**\ (pdu.outlet) The pdu outlet count diff --git a/docs/source/guides/admin-guides/references/man7/pdu.7.rst b/docs/source/guides/admin-guides/references/man7/pdu.7.rst new file mode 100644 index 000000000..1e2397a42 --- /dev/null +++ b/docs/source/guides/admin-guides/references/man7/pdu.7.rst @@ -0,0 +1,85 @@ + +##### +pdu.7 +##### + +.. highlight:: perl + + +**** +NAME +**** + + +\ **pdu**\ - a logical object definition in the xCAT database. + + +******** +SYNOPSIS +******** + + +\ **pdu Attributes:**\ \ *machinetype*\ , \ *modelnum*\ , \ *node*\ , \ *nodetype*\ , \ *outlet*\ , \ *serialnum*\ + + +*********** +DESCRIPTION +*********** + + +Logical objects of this type are stored in the xCAT database in one or more tables. Use the following commands +to manipulate the objects: \ **mkdef**\ , \ **chdef**\ , \ **lsdef**\ , and \ **rmdef**\ . These commands will take care of +knowing which tables the object attributes should be stored in. The attribute list below shows, in +parentheses, what tables each attribute is stored in. + + +*************** +pdu Attributes: +*************** + + + +\ **machinetype**\ (pdu.machinetype) + + The pdu machine type + + + +\ **modelnum**\ (pdu.modelnum) + + The pdu model number + + + +\ **node**\ (pdu.node) + + The hostname/address of the pdu to which the settings apply + + + +\ **nodetype**\ (pdu.nodetype) + + The node type should be pdu + + + +\ **outlet**\ (pdu.outlet) + + The pdu outlet count + + + +\ **serialnum**\ (pdu.serialnum) + + The pdu serial number + + + + +******** +SEE ALSO +******** + + +\ **mkdef(1)**\ , \ **chdef(1)**\ , \ **lsdef(1)**\ , \ **rmdef(1)**\ + diff --git a/docs/source/guides/install-guides/apt/prepare_mgmt_node.rst b/docs/source/guides/install-guides/apt/prepare_mgmt_node.rst index f67fefc32..20d3f0672 100644 --- a/docs/source/guides/install-guides/apt/prepare_mgmt_node.rst +++ b/docs/source/guides/install-guides/apt/prepare_mgmt_node.rst @@ -10,6 +10,8 @@ Install an OS on the Management Node :start-after: BEGIN_install_os_mgmt_node :end-before: END_install_os_mgmt_node +.. _apt_configure_the_base_os_repository: + Configure the Base OS Repository -------------------------------- diff --git a/docs/source/guides/install-guides/zypper/prepare_mgmt_node.rst b/docs/source/guides/install-guides/zypper/prepare_mgmt_node.rst index fce8dc660..fd52e4387 100644 --- a/docs/source/guides/install-guides/zypper/prepare_mgmt_node.rst +++ b/docs/source/guides/install-guides/zypper/prepare_mgmt_node.rst @@ -10,6 +10,8 @@ Install an OS on the Management Node :start-after: BEGIN_install_os_mgmt_node :end-before: END_install_os_mgmt_node +.. _zypper_configure_the_base_os_repository: + Configure the Base OS Repository -------------------------------- diff --git a/docs/source/overview/xcat2_release.rst b/docs/source/overview/xcat2_release.rst index a87d50a50..21a39166b 100644 --- a/docs/source/overview/xcat2_release.rst +++ b/docs/source/overview/xcat2_release.rst @@ -14,6 +14,22 @@ xCAT 2.13.x |xCAT |New OS |New |New Feature | |Version | |Hardware | | +=================================+===============+=============+==================================+ +|| xCAT 2.13.4 |- RHV 4.1 | |- OpenBMC support(experimental): | +|| 2017/5/19 | | | | +|| | | | rinv | +| `2.13.4 Release Notes `_ | | | | +| | | | | ++---------------------------------+---------------+-------------+----------------------------------+ +|| xCAT 2.13.3 |- RHEL 6.9 | |- OpenBMC support(experimental): | +|| 2017/4/14 | | | | +|| | | | rpower rcons | +| `2.13.3 Release Notes `_ | | | | +| | | | | ++---------------------------------+---------------+-------------+----------------------------------+ || xCAT 2.13.2 | | |- Refine ONIE switch support doc | || 2017/2/24 | | |- Add -p for xcatprobe osdeploy | || | | | to support performance calculate| diff --git a/docs/source/security/2017/20170216_openssl.rst b/docs/source/security/2017/20170216_openssl.rst new file mode 100644 index 000000000..9f430f713 --- /dev/null +++ b/docs/source/security/2017/20170216_openssl.rst @@ -0,0 +1,25 @@ +2017-02-16 - OpenSSL Vulnerabilities +==================================== + +*Feb 16, 2017*, OpenSSL announced the following security advisories: https://www.openssl.org/news/secadv/20170216.txt + + +Advisory CVEs +------------- + +* CVE-2017-3733 - **Encrypt-Then-Mac renegotiation crash** (Severity:High) + + OpenSSL 1.1.0 users should upgrade to 1.1.0e + + This issue does not affect OpenSSL version 1.0.2. + +Please see the security bulletin above for patch, upgrade, or suggested work around information. + +Action +------ + +xCAT uses OpenSSL for client-server communication but **does not** ship it. + +It is highly recommended to keep your OpenSSL levels up-to-date with the indicated versions in the security bulletins to prevent any potential security threats. Obtain the updated software packages from your Operating system distribution channels. + + diff --git a/docs/source/security/2017/index.rst b/docs/source/security/2017/index.rst index 7c5b764ff..588d8c30e 100644 --- a/docs/source/security/2017/index.rst +++ b/docs/source/security/2017/index.rst @@ -4,4 +4,5 @@ .. toctree:: :maxdepth: 1 + 20170216_openssl.rst 20170126_openssl.rst diff --git a/perl-xCAT/xCAT/Client.pm b/perl-xCAT/xCAT/Client.pm index 9aa8cfd0e..079a62155 100644 --- a/perl-xCAT/xCAT/Client.pm +++ b/perl-xCAT/xCAT/Client.pm @@ -265,7 +265,11 @@ sub submit_request { %sslargs, ); } else { + print "warning: the client certificates under $homedir/.xcat/ are not setup correctly, please run '/opt/xcat/share/xcat/scripts/setup-local-client.sh"." $ENV{'USER'}' as 'root' to generate the client certificates; otherwise, the SSL connection between xcat client and xcatd will be setup without certificate verification and open to Man-In-The-Middle attacks.\n"; + #Using the default of SSL_verify_mode of SSL_VERIFY_NONE for client is deprecated! + #need to specify SSL_verify_mode => SSL_VERIFY_NONE explicitly $client = IO::Socket::SSL->start_SSL($pclient, + SSL_verify_mode => SSL_VERIFY_NONE, Timeout => 0, ); } diff --git a/perl-xCAT/xCAT/DBobjUtils.pm b/perl-xCAT/xCAT/DBobjUtils.pm index 5400fb7c8..918818c58 100755 --- a/perl-xCAT/xCAT/DBobjUtils.pm +++ b/perl-xCAT/xCAT/DBobjUtils.pm @@ -490,7 +490,9 @@ sub getobjdefs # Check whether the attribute is already in %tabhash # The %tabhash is for performance considerations - if (($lookup_attr eq 'node') && ($objtype eq 'node')) { + my $tabspec = $xCAT::Schema::tabspec{$lookup_table}; + my $nodecol = $tabspec->{'nodecol'} if defined($tabspec->{'nodecol'}); + if (($lookup_attr eq 'node' && $objtype eq 'node') || (defined($nodecol) && $objtype eq 'node' && $lookup_table ne 'ppcdirect')) { if (defined($tabhash{$lookup_table}{$objname}{$tabattr})) { if ($verbose == 1) { $objhash{$objname}{$attr} = "$tabhash{$lookup_table}{$objname}{$tabattr}\t(Table:$lookup_table - Key:$lookup_attr - Column:$tabattr)"; @@ -2503,6 +2505,7 @@ sub judge_node Arguments: nicsattr value, like niccsips=eth0!1.1.1.1|2.1.1.1,eth1!3.1.1.1|4.1.1.1 nicnames: only return the value for specific nics, like "eth0,eth1" + is_group: bool value indicates whether the type of object is group Returns: expanded format, like: nicsips.eth0=1.1.1.1|2.1.1.1 @@ -2524,8 +2527,7 @@ sub expandnicsattr() if (($nicstr) && ($nicstr =~ /xCAT::/)) { $nicstr = shift; } - my $nicnames = shift; - + my ($node, $nicnames, $is_group) = @_; my $ret; $nicstr =~ /^(.*?)=(.*?)$/; @@ -2575,7 +2577,10 @@ sub expandnicsattr() } } } - + # print group attributes in original format + if (!$is_group) { + $nicv[1]= xCAT::Table::transRegexAttrs($node, $nicv[1]); + } # ignore the line that does not have nicname or value if ($nicv[0] && $nicv[1]) { $ret .= " $nicattr.$nicv[0]=$nicv[1]\n"; diff --git a/perl-xCAT/xCAT/DSHCLI.pm b/perl-xCAT/xCAT/DSHCLI.pm index 8121f475d..787bb64c7 100644 --- a/perl-xCAT/xCAT/DSHCLI.pm +++ b/perl-xCAT/xCAT/DSHCLI.pm @@ -50,7 +50,7 @@ our @dsh_valid_env = ( 'DSH_REMOTE_PASSWORD', 'DSH_TO_USERID', 'DSH_FROM_USERID', 'DEVICETYPE', 'RSYNCSN', 'DSH_RSYNC_FILE', - 'RSYNCSNONLY', + 'RSYNCSNONLY', 'DSH_VERIFY', ); select(STDERR); $| = 1; @@ -2492,6 +2492,12 @@ sub config_dsh $dsh_trace && xCAT::MsgUtils->message("I", $rsp, $::CALLBACK); + $$options{'verify'} = $$options{'verify'} || $ENV{'DSH_VERIFY'} || undef; + my $rsp = {}; + $rsp->{data}->[0] = "TRACE: Verify value is $$options{'verify'} "; + $dsh_trace + && xCAT::MsgUtils->message("I", $rsp, $::CALLBACK); + # Check if $$options{'pre-command'} has been overwritten # Mellanox uses pre-command = cli if (!$$options{'pre-command'}) @@ -4434,6 +4440,17 @@ sub parse_and_run_dcp return 0; } + unless ($options{'user'}) + { + # user was not specified with -l flag, check it user calling the command + # was saved in DSH_FROM_USERID environment variable + my $current_userid = $ENV{'DSH_FROM_USERID'}; + if (defined($current_userid)) { + # Set userid from value in DSH_FROM_USERID environment variable + $options{'user'} = $current_userid; + } + } + if (defined($options{'rootimg'})) { if (xCAT::Utils->isAIX()) diff --git a/perl-xCAT/xCAT/Schema.pm b/perl-xCAT/xCAT/Schema.pm index ca8a258c6..8adc65980 100755 --- a/perl-xCAT/xCAT/Schema.pm +++ b/perl-xCAT/xCAT/Schema.pm @@ -443,6 +443,21 @@ passed as argument rather than by table value', disable => "Set to 'yes' or '1' to comment out this row.", }, }, + openbmc => { + cols => [qw(node bmc consport taggedvlan username password comments disable)], + keys => [qw(node)], + table_desc => 'Setting for nodes that are controlled by an on-board OpenBmc.', + descriptions => { + node => 'The node name or group name.', + bmc => 'The hostname of the BMC adapter.', + consport => 'The console port for OpenBMC.', + taggedvlan => 'bmcsetup script will configure the network interface of the BMC to be tagged to the VLAN specified.', + username => 'The BMC userid.', + password => 'The BMC password.', + comments => 'Any user-written notes.', + disable => "Set to 'yes' or '1' to comment out this row.", + }, + }, iscsi => { cols => [qw(node server target lun iname file userid passwd kernel kcmdline initrd comments disable)], keys => [qw(node)], @@ -559,7 +574,7 @@ passed as argument rather than by table value', ddnsdomain => 'A domain to be combined with nodename to construct FQDN for DDNS updates induced by DHCP. This is not passed down to the client as "domain"', vlanid => 'The vlan ID if this network is within a vlan.', domain => 'The DNS domain name (ex. cluster.com).', - mtu => 'The default MTU for the network', + mtu => 'The default MTU for the network, If multiple networks are applied to the same nic on the SN and/or CN, the MTU shall be the same for those networks.', comments => 'Any user-written notes.', disable => "Set to 'yes' or '1' to comment out this row.", }, @@ -586,7 +601,7 @@ passed as argument rather than by table value', descriptions => { node => 'The node name or group name.', power => 'The method to use to control the power of the node. If not set, the mgt attribute will be used. Valid values: ipmi, blade, hmc, ivm, fsp, kvm, esx, rhevm. If "ipmi", xCAT will search for this node in the ipmi table for more info. If "blade", xCAT will search for this node in the mp table. If "hmc", "ivm", or "fsp", xCAT will search for this node in the ppc table.', - mgt => 'The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details.', + mgt => 'The method to use to do general hardware management of the node. This attribute is used as the default if power or getmac is not set. Valid values: openbmc, ipmi, blade, hmc, ivm, fsp, bpa, kvm, esx, rhevm. See the power attribute for more details.', cons => 'The console method. If nodehm.serialport is set, this will default to the nodehm.mgt setting, otherwise it defaults to unused. Valid values: cyclades, mrv, or the values valid for the mgt attribute.', termserver => 'The hostname of the terminal server.', termport => 'The port number on the terminal server that this node is connected to.', @@ -679,17 +694,19 @@ passed as argument rather than by table value', }, }, pdu => { - cols => [qw(node nodetype machinetype modelnum serialnum outletCount comments disable)], + cols => [qw(node nodetype outlet machinetype modelnum serialnum comments disable)], keys => [qw(node)], nodecol => "node", table_desc => 'Parameters to use when interrogating pdus', descriptions => { node => 'The hostname/address of the pdu to which the settings apply', nodetype => 'The node type should be pdu ', + outlet => 'The pdu outlet count', machinetype => 'The pdu machine type', modelnum => 'The pdu model number', serialnum => 'The pdu serial number', - outletcount => 'The pdu outlet count', + comments => 'Any user-written notes.', + disable => "Set to 'yes' or '1' to comment out this row.", }, }, switches => { @@ -845,8 +862,8 @@ passed as argument rather than by table value', descriptions => { key => 'The type of component this user/pw is for. Valid values: blade (management module), ipmi (BMC), system (nodes), omapi (DHCP), hmc, ivm, cec, frame, switch.', username => 'The default userid for this type of component', - password => 'The default password for this type of component', - cryptmethod => 'Indicates the method that was used to encrypt the password attribute. On AIX systems, if a value is provided for this attribute it indicates that the password attribute is encrypted. If the cryptmethod value is not set it indicates the password is a simple string value. On Linux systems, the cryptmethod can be set to md5, sha256 or sha512. If not set, sha256 will be used as default.', + password => 'The default password for this type of component. On Linux, a crypted form could be provided. Hashes starting with $1$, $5$ and $6$ (md5, sha256 and sha512 respectively) are supported.', + cryptmethod => 'Indicates the method to use to encrypt the password attribute. On AIX systems, if a value is provided for this attribute it indicates that the password attribute is encrypted. If the cryptmethod value is not set it indicates the password is a simple string value. On Linux systems, the cryptmethod can be set to md5, sha256 or sha512. If not set, sha256 will be used as default to encrypt plain-text passwords.', authdomain => 'The domain in which this entry has meaning, e.g. specifying different domain administrators per active directory domain', comments => 'Any user-written notes.', disable => "Set to 'yes' or '1' to comment out this row.", @@ -2288,6 +2305,11 @@ my @nodeattrs = ( tabentry => 'mp.nodetype', access_tabentry => 'mp.node=attr:node', }, + { attr_name => 'hwtype', + only_if => 'mgt=openbmc', + tabentry => 'mp.nodetype', + access_tabentry => 'mp.node=attr:node', + }, { attr_name => 'supernode', tabentry => 'ppc.supernode', access_tabentry => 'ppc.node=attr:node', @@ -2447,6 +2469,36 @@ my @nodeattrs = ( tabentry => 'mpa.urlpath', access_tabentry => 'mpa.mpa=attr:node', }, + +######################### + # openbmc table # +########################## + { attr_name => 'bmc', + only_if => 'mgt=openbmc', + tabentry => 'openbmc.bmc', + access_tabentry => 'openbmc.node=attr:node', + }, + { attr_name => 'bmcusername', + only_if => 'mgt=openbmc', + tabentry => 'openbmc.username', + access_tabentry => 'openbmc.node=attr:node', + }, + { attr_name => 'bmcpassword', + only_if => 'mgt=openbmc', + tabentry => 'openbmc.password', + access_tabentry => 'openbmc.node=attr:node', + }, + { attr_name => 'consport', + only_if => 'mgt=openbmc', + tabentry => 'openbmc.consport', + access_tabentry => 'openbmc.node=attr:node', + }, + { attr_name => 'bmcvlantag', + only_if => 'mgt=openbmc', + tabentry => 'openbmc.taggedvlan', + access_tabentry => 'openbmc.node=attr:node', + }, + ###################### # nodepos table # ###################### @@ -2859,6 +2911,11 @@ my @nodeattrs = ( tabentry => 'pdu.nodetype', access_tabentry => 'pdu.node=attr:node', }, + { attr_name => 'outlet', + only_if => 'nodetype=pdu', + tabentry => 'pdu.outlet', + access_tabentry => 'pdu.node=attr:node', + }, { attr_name => 'machinetype', only_if => 'nodetype=pdu', tabentry => 'pdu.machinetype', @@ -2874,11 +2931,6 @@ my @nodeattrs = ( tabentry => 'pdu.serialnum', access_tabentry => 'pdu.node=attr:node', }, - { attr_name => 'outletcount', - only_if => 'nodetype=pdu', - tabentry => 'pdu.outletcount', - access_tabentry => 'pdu.node=attr:node', - }, ######################### ## switches table # @@ -4100,6 +4152,11 @@ push(@{ $defspec{group}->{'attrs'} }, @nodeattrs); tabentry => 'pdu.nodetype', access_tabentry => 'pdu.node=attr:node', }, + { attr_name => 'outlet', + only_if => 'nodetype=pdu', + tabentry => 'pdu.outlet', + access_tabentry => 'pdu.node=attr:node', + }, { attr_name => 'machinetype', only_if => 'nodetype=pdu', tabentry => 'pdu.machinetype', @@ -4115,11 +4172,6 @@ push(@{ $defspec{group}->{'attrs'} }, @nodeattrs); tabentry => 'pdu.serialnum', access_tabentry => 'pdu.node=attr:node', }, - { attr_name => 'outletcount', - only_if => 'nodetype=pdu', - tabentry => 'pdu.outletcount', - access_tabentry => 'pdu.node=attr:node', - }, ); diff --git a/perl-xCAT/xCAT/Table.pm b/perl-xCAT/xCAT/Table.pm index 67b1b2b8f..a9fcbbd6a 100644 --- a/perl-xCAT/xCAT/Table.pm +++ b/perl-xCAT/xCAT/Table.pm @@ -2299,6 +2299,95 @@ $evalcpt->permit('require'); #-------------------------------------------------------------------------- +=head3 transRegexAttrs + + Description: Transform the regular expression attribute to the target value + based on the node name. + + Arguments: + Node + Attribute value (may have regular expression) + Returns: + Attribute value + undef + Globals: + + Error: + + Example: + if (defined($retval = transRegexAttrs($node, $datum->{$attrib}))) { + $datum->{$attrib} = $retval; + } else { + delete $datum->{$attrib}; + } + + Comments: + none + +=cut + +#--------------------------------------------------------------------------- +sub transRegexAttrs +{ + my ($node, $attr) = @_; + my $retval = $attr; + if ($attr =~ /^\/[^\/]*\/[^\/]*\/$/) { + my $exp = substr($attr, 1); + chop $exp; + my @parts = split('/', $exp, 2); + $retval = $node; + $retval =~ s/$parts[0]/$parts[1]/; + } elsif ($attr =~ /^\|.*\|$/) { + my $exp = substr($attr, 1); + chop $exp; + my @parts = split('\|', $exp, 2); + my $arraySize = @parts; + if ($arraySize < 2) { # easy regx, generate lhs from node + my $lhs; + my @numbers = $node =~ m/[\D0]*(\d+)/g; + $lhs = '[\D0]*(\d+)' x scalar(@numbers); + $lhs .= '.*$'; + unshift(@parts, $lhs); + } + my ($curr, $next, $prev); + $retval = $parts[1]; + + ($curr, $next, $prev) = + extract_bracketed($retval, '()', qr/[^()]*/); + unless ($curr) { #If there were no paramaters to save, treat this one like a plain regex + undef $@; #extract_bracketed would have set $@ if it didn't return, undef $@ + $retval = $node; + $retval =~ s/$parts[0]/$parts[1]/; + if ($retval =~ /^$/) { + return undef; + } + return $retval; + } + while ($curr) + { + my $value = $node; + $value =~ s/$parts[0]/$curr/; + $value = $evalcpt->reval('use integer;' . $value); + $retval = $prev . $value . $next; + ($curr, $next, $prev) = + extract_bracketed($retval, '()', qr/[^()]*/); + } + undef $@; + + #At this point, $retval is the expression after being arithmetically contemplated, a generated regex, and therefore + #must be applied in total + my $answval = $node; + $answval =~ s/$parts[0]/$retval/; + $retval = $answval; + } + if ($retval =~ /^$/) { + $retval = undef; + } + return $retval; +} + +#-------------------------------------------------------------------------- + =head3 getNodeAttribs Description: Retrieves the requested attribute diff --git a/perl-xCAT/xCAT/Usage.pm b/perl-xCAT/xCAT/Usage.pm index dc7de8b6e..9a0600d1b 100755 --- a/perl-xCAT/xCAT/Usage.pm +++ b/perl-xCAT/xCAT/Usage.pm @@ -26,6 +26,14 @@ my %usage = ( "rpower" => "Usage: rpower [--nodeps] [on|onstandby|off|suspend|reset|stat|state|boot] [-V|--verbose] [-m table.colum==expectedstatus][-m table.colum==expectedstatus...] [-r ] [-t ] rpower [-h|--help|-v|--version] + BMC (using IPMI): + rpower noderange [on|off|softoff|reset|boot|stat|state|status|wake|suspend [-w timeout] [-o] [-r]] + rpower noderange [pduon|pduoff|pdustat] + OpenPower BMC: + rpower noderange [on|off|reset|boot|stat|state|status] + rpower noderange [pduon|pduoff|pdustat] + OpenPower OpenBMC: + rpower noderange [on|off|reset|boot|stat|state|status] KVM Virtualization specific: rpower [boot] [ -c ] PPC (with IVM or HMC) specific: @@ -53,8 +61,8 @@ my %usage = ( docker specific: rpower noderange [start|stop|restart|pause|unpause|state] pdu specific: - rpower noderange [off|on|stat] - rpower noderange [pduoff|pduon|pdustat] + rpower noderange [off|on|stat|status|reset] + rpower noderange [pduoff|pduon|pdustat|pdustatus|pdureset] ", "rbeacon" => "Usage: rbeacon [on|off|stat] [-V|--verbose] @@ -74,7 +82,7 @@ my %usage = ( BMC specific: rvitals noderange {temp|voltage|wattage|fanspeed|power|leds|all} OpenPOWER server specific: - rvitals noderange {temp|voltage|wattage|fanspeed|power|leds|all} + rvitals noderange [temp|voltage|wattage|fanspeed|power|leds|all] MIC specific: rvitals noderange {thermal|all}", "reventlog" => @@ -87,8 +95,10 @@ my %usage = ( rinv [-h|--help|-v|--version] BMC specific: rinv [mprom|deviceid|uuid|guid|vpd|dimm|all] - OpenPOWER server specific: + OpenPOWER (using ipmi) server specific: rinv [model|serial|deviceid|uuid|guid|vpd|mprom|firm|all] + OpenPOWER (using openbmc) server specific: + rinv [model|serial|deviceid|uuid|guid|vpd|mprom|firm|cpu|dimm|all] MPA specific: rinv [firm|bios|diag|mprom|sprom|mparom|mac|mtm] PPC specific(with HMC): @@ -130,9 +140,11 @@ my %usage = ( rspconfig [snmpdest|alert|community] [-V|--verbose] rspconfig [snmpdest=|alert=|community=] BMC specific: - rspconfig [ip|netmask|gateway|backupgateway|garp] + rspconfig [ip|netmask|gateway|backupgateway|garp|vlan] rspconfig [garp=] rspconfig [userid= username= password=] + OpenBMC specific: + rspconfig [ip|netmask|gateway|vlan] iDataplex specific: rspconfig [thermprofile] rspconfig [thermprofile=] @@ -324,14 +336,14 @@ my %usage = ( Lenovo Dense Enclosure Manager specific: rflash http:///path/to/update.rom PPC (with HMC) specific: - rflash -p [--activate concurrent | disruptive][-V|--verbose] - rflash [--commit | --recover] [-V|--verbose] + rflash -p [--activate {concurrent | disruptive}] [-V|--verbose] + rflash {--commit | --recover} [-V|--verbose] PPC (using Direct FSP Management) specific: - rflash -p --activate [-d ] + rflash -p [--activate {disruptive|deferred}] [-d ] rflash [--commit | --recover] [-V|--verbose] rflash [--bpa_acdl] PPC64LE (using BMC Management) specific: - rflash [-c | --check] ", + rflash [-c | --check] [--retry=] [-V] ", "mkhwconn" => "Usage: mkhwconn [-h|--help] diff --git a/perl-xCAT/xCAT/Yum.pm b/perl-xCAT/xCAT/Yum.pm index 71faef8c9..368992a78 100644 --- a/perl-xCAT/xCAT/Yum.pm +++ b/perl-xCAT/xCAT/Yum.pm @@ -54,8 +54,9 @@ sub generate_repo my $dirlocation = shift; my @dircomps = File::Spec->splitdir($dirlocation); pop(@dircomps); + my $reponame = join("-",@dircomps); my $yumurl = File::Spec->catdir(@dircomps); - my $reponame = $dircomps[$#dircomps]; + print $yumrepofile "[local-$distname-$arch-$reponame]\n"; print $yumrepofile "name=xCAT configured yum repository for $yumurl\n"; print $yumrepofile "baseurl=$yumurl\n"; diff --git a/xCAT-client/bin/xdsh b/xCAT-client/bin/xdsh index 0797f4d93..89e4ff0a6 100644 --- a/xCAT-client/bin/xdsh +++ b/xCAT-client/bin/xdsh @@ -190,6 +190,11 @@ if ($ENV{'DSH_ENVIRONMENT'}) push(@{ $cmdref->{env} }, "DSH_ENVIRONMENT=$ENV{'DSH_ENVIRONMENT'}"); } +if ($ENV{'DSH_VERIFY'}) +{ + push(@{ $cmdref->{env} }, "DSH_VERIFY=$ENV{'DSH_VERIFY'}"); +} + xCAT::Client::submit_request($cmdref, \&xCAT::Client::handle_response); exit $xCAT::Client::EXITCODE; @@ -666,6 +671,24 @@ sub parse_args_xdcp $::NODE_RCP = 1; } + my $to_userid; + if ($options{'user'}) # if -l option + { + $to_userid = $options{'user'}; + } + else + { + # find out who is the current user running xdcp + my $current_userid = getpwuid($>); + + $ENV{DSH_FROM_USERID} = $current_userid; + + $to_userid = $current_userid; + } + # Save userid running this command in ENV variable. + # It will be later extraced by DSHCLI.pm + $ENV{DSH_TO_USERID} = $to_userid; + if ($options{'bypass'}) { $ENV{XCATBYPASS} = "yes"; # bypass xcatd diff --git a/xCAT-client/pods/man1/clonevm.1.pod b/xCAT-client/pods/man1/clonevm.1.pod index 4437a65c1..81de9c85e 100644 --- a/xCAT-client/pods/man1/clonevm.1.pod +++ b/xCAT-client/pods/man1/clonevm.1.pod @@ -4,7 +4,7 @@ B - Create masters from virtual machines and virtual machines from mast =head1 SYNOPSIS -B I [ B<-t> I | B<-b> I ] B<-d|--detached -f|--force> +B I [ B<-t> I | B<-b> I ] [ B<-d|--detached>] [B<-f|--force>] =head1 DESCRIPTION @@ -12,35 +12,51 @@ Command to promote a VM's current configuration and storage to a master as well performing the converse operation of creating VMs based on a master. By default, attempting to create a master from a running VM will produce an error. -The force argument will request that a master be made of the VM anyway. +The B<--force> argument will request that a master be made of the VM anyway. Also, by default a VM that is used to create a master will be rebased as a thin -clone of that master. If the force argument is used to create a master of a powered -on vm, this will not be done. Additionally, the detached option can be used to +clone of that master. If the B<--force> argument is used to create a master of a powered +on vm, this will not be done. Additionally, the B<--detached> option can be used to explicitly request that a clone not be tethered to a master image, allowing the clones to not be tied to the health of a master, at the cost of additional storage. -When promoting a VM's current state to master, all rleated virtual disks will be +When promoting a VM's current state to master, all related virtual disks will be copied and merged with any prerequisite images. A master will not be tethered to other masters. =head1 OPTIONS +=over 4 -B<-h|--help> Display usage message. +=item B<-h|--help> -B<-b> The master to base the clones upon +Display usage message. -B<-t> The target master to copy a single VM's state to +=item B<-b> I -B<-d> Explicitly request that the noderange be untethered from any masters. +The master to base the clones upon -B<-f> Force cloning of a powered on VM. Implies -d if the VM is on. +=item B<-t> I -B<-v|--version> Command Version. +The target master to copy a single VM's state to -B<-V|--verbose> Verbose output. +=item B<-d|--detached> +Explicitly request that the noderange be untethered from any masters. + +=item B<-f|--force> + +Force cloning of a powered on VM. Implies B<-d> if the VM is on. + +=item B<-v|--version> + +Command Version. + +=item B<-V|--verbose> + +Verbose output. + +=back =head1 RETURN VALUE @@ -53,12 +69,12 @@ Any other value: An error has occurred. =over 3 =item 1. -Creating a master named appserver from a node called vm1: +Creating a master named I from a node called I: clonevm vm1 -t appserver =item 2. -Cleating 30 VMs from a master named appserver: +Cleating 30 VMs from a master named I: clonevm vm1-vm30 -b appserver diff --git a/xCAT-client/pods/man1/getadapter.1.pod b/xCAT-client/pods/man1/getadapter.1.pod index 2fca0dac1..0c10af7a1 100644 --- a/xCAT-client/pods/man1/getadapter.1.pod +++ b/xCAT-client/pods/man1/getadapter.1.pod @@ -14,12 +14,11 @@ Traditionally, network interfaces in Linux are enumerated as eth[0123...], but t B use genesis to collect network adapters information, so that mean it need to restart the target node. -B follows below scheme: +B For each node within the , follows below scheme: -If the target node is scaned for the first time, B will trigger genesis to collect information then save the information at local. -If the target node has ever been scaned, i.e. this node has network device information in local, B use the local information first. -If user doesn't want to use local information, can use B<-f> option to force to trigger new round scan process. -if part nodes of I don't have network device information in local and the rest have, B only trigger real scan process for these nodes which don't have local information, the nodes have network device information in local, B still use the local information first. +If the target node is scaned for the first time, B will trigger genesis to collect information then save the information at the B column of nics table. +If the target node has ever been scaned, B will use the information from nics table first. +If user hopes to scan the adapter information for the node but these information already exist, B<-f> option can be used to start rescan process. B tries to collect more information for the target network device, but doesn't guarantee collect same much information for every network device. diff --git a/xCAT-client/pods/man1/imgcapture.1.pod b/xCAT-client/pods/man1/imgcapture.1.pod index 96b0b44a3..5c67d9a8a 100644 --- a/xCAT-client/pods/man1/imgcapture.1.pod +++ b/xCAT-client/pods/man1/imgcapture.1.pod @@ -4,7 +4,7 @@ B - Captures an image from a Linux diskful node and create a diskles =head1 SYNOPSIS -B I B<-t>|B<--type> {B|B} B<-o>|B<--osimage> I [B<-V>|B<--verbose>] +B I B<-t>|B<--type> {B|B} B<-o>|B<--osimage> I [B<-i> I] [B<-n> I] [B<-V>|B<--verbose>] B [B<-h> | B<--help>] | [B<-v> | B<--version>] @@ -12,9 +12,9 @@ B [B<-h> | B<--help>] | [B<-v> | B<--version>] The B command will capture an image from one running diskful Linux node and create a diskless or diskful image for later use. -The B should be one diskful Linux node, managed by the xCAT MN, and the remote shell between MN and the B should have been configured. AIX is not supported. +The B should be one diskful Linux node, managed by the xCAT MN, and the remote shell between MN and the B should have been configured. AIX is not supported. VMs are not supported. -The B command supports two image types: B and B. For the B type, it will capture an image from one running diskful Linux node, prepares the rootimg directory, kernel and initial rmadisks for the B/B command to generate the statelite/stateless rootimg. For the B type, it will capture an image from one running diskful Linux node, create an osimage which can be used to clone other diskful Linux nodes. +The B command supports two image types: B and B. For the B type, it will capture an image from one running diskful Linux node, prepares the rootimg directory, kernel and initial ramdisks for the B/B command to generate the statelite/stateless rootimg. For the B type, it will capture an image from one running diskful Linux node, create an osimage which can be used to clone other diskful Linux nodes. The B type: @@ -52,13 +52,11 @@ The osimage name. The network interface the diskless node will boot over (e.g. eth0), which is used by the B command to generate initial ramdisks. -This is optional. - =item B<-n> I The driver modules needed for the network interface, which is used by the B command to generate initial ramdisks. -This is optional. By default, the B command can provide drivers for the following network interfaces: +By default, the B command can provide drivers for the following network interfaces: For x86 or x86_64 platform: diff --git a/xCAT-client/pods/man1/imgexport.1.pod b/xCAT-client/pods/man1/imgexport.1.pod index d3a1c2648..a2376df26 100644 --- a/xCAT-client/pods/man1/imgexport.1.pod +++ b/xCAT-client/pods/man1/imgexport.1.pod @@ -11,7 +11,7 @@ B I [I] [[B<-e>|B<--extra> I] ... =head1 DESCRIPTION -The imgexport command will export an image that is being used by xCAT. To export images, you must have the images defined in the I table. All the columns in the I and I tables will be exported. If kits are used in stateful or stateless images, I, I and I tables will be exported. In addition, the following files will also be exported. +The B command will export an image that is being used by xCAT. To export images, you must have the images defined in the I table. All the columns in the I and I tables will be exported. If kits are used in stateful or stateless images, I, I and I tables will be exported. In addition, the following files will also be exported. For stateful: x.pkglist @@ -45,24 +45,39 @@ For statelite: where x is the name of the profile. -Any files specified by the -e flag will also be exported. If -p flag is specified, the names of the postscripts and the postbootscripts for the given node will be exported. The postscripts themsleves need to be manualy exported using -e flag. +Any files specified by the B<-e> flag will also be exported. If B<-p> flag is specified, the names of the postscripts and the postbootscripts for the given node will be exported. The postscripts themsleves need to be manualy exported using B<-e> flag. For statelite, the litefile table settings for the image will also be exported. The litetree and statelite tables are not exported. =head1 OPTIONS +=over 4 -B<-e|--extra> I Pack up extra files. If I is omitted, the destination directory will be the same as the source directory. +=item B<-e|--extra> I -B<-h|--help> Display usage message. +Pack up extra files. If I is omitted, the destination directory will be the same as the source directory. + +=item B<-h|--help> + +Display usage message. -B<-p|--postscripts> I Get the names of the postscripts and postbootscripts for the given node and pack them into the image. +=item B<-p|--postscripts> I -B<-v|--verbose> Verbose output. +Get the names of the postscripts and postbootscripts for the given node and pack them into the image. -I The name of the image. Use I osimage to find out all the image names. +=item B<-v|--verbose> -I The output bundle file name. +Verbose output. + +=item I + +The name of the image. Use B to find out all the image names. + +=item I + +The output bundle file name. + +=back =head1 RETURN VALUE diff --git a/xCAT-client/pods/man1/imgimport.1.pod b/xCAT-client/pods/man1/imgimport.1.pod index b674ea048..f652f9d74 100644 --- a/xCAT-client/pods/man1/imgimport.1.pod +++ b/xCAT-client/pods/man1/imgimport.1.pod @@ -10,7 +10,7 @@ B I [B<-p>|B<--postscripts> I] [B<-f>|B<- =head1 DESCRIPTION -The imgimport command will import an image that has been exported by I from xCAT. This is the easiest way to transfer/backup/, change or share images created by xCAT whether they be stateless or stateful. The bundle file will be unpacked in the current working directory. The xCAT configuration such as I and I tables will then be updated. +The B command will import an image that has been exported by B from xCAT. This is the easiest way to transfer, backup, change or share images created by xCAT whether they be stateless or stateful. The bundle file will be unpacked in the current working directory. The xCAT configuration such as I and I tables will then be updated. For stateful, the following files will be copied to the appropriate directories. x.pkglist @@ -42,15 +42,15 @@ For statelite, the following files will be copied to the appropriate directories where x is the profile name. -Any extra files, included by --extra flag in the imgexport command, will also be copied to the appropriate directories. +Any extra files, included by B<--extra> flag in the B command, will also be copied to the appropriate directories. For statelite, the litefile table will be updated for the image. The litetree and statelite tables are not imported. -If -p flag is specified, the I table will be updated with the postscripts and the postbootscripts names from the image for the nodes given by this flag. +If B<-p> flag is specified, the I table will be updated with the postscripts and the postbootscripts names from the image for the nodes given by this flag. -If -f flag is not specified, all the files will be copied to the same directories as the source. If it is specified, the old profile name x will be changed to the new and the files will be copied to the appropriate directores for the new profiles. For example, I will be copied to I and I will be copied to I. This flag is commonly used when you want to copy the image on the same xCAT mn so you can make modification on the new one. +If B<-f> flag is not specified, all the files will be copied to the same directories as the source. If it is specified, the old profile name x will be changed to the new and the files will be copied to the appropriate directores for the new profiles. For example, I will be copied to I and I will be copied to I. This flag is commonly used when you want to copy the image on the same xCAT mn so you can make modification on the new one. -After this command, you can run the I command and then start deploying the nodes. You can also choose to modify the files and run the following commands before the node depolyment. +After this command, you can run the B command and then start deploying the nodes. You can also choose to modify the files and run the following commands before the node depolyment. For stateful: nodeset @@ -68,15 +68,25 @@ For statelite =head1 OPTIONS +=over 4 -B<-f|--profile> I Import the image with a new profile name. +=item B<-f|--profile> I -B<-h|--help> Display usage message. +Import the image with a new profile name. -B<-p|--postscripts> I Import the postscripts. The postscripts contained in the image will be set in the postscripts table for I. +=item B<-h|--help> -B<-v|--verbose> Verbose output. +Display usage message. +=item B<-p|--postscripts> I + +Import the postscripts. The postscripts contained in the image will be set in the postscripts table for I. + +=item B<-v|--verbose> + +Verbose output. + +=back =head1 RETURN VALUE diff --git a/xCAT-client/pods/man1/lsvm.1.pod b/xCAT-client/pods/man1/lsvm.1.pod index a9843bb8b..d588fbf42 100644 --- a/xCAT-client/pods/man1/lsvm.1.pod +++ b/xCAT-client/pods/man1/lsvm.1.pod @@ -28,13 +28,13 @@ B I =head1 DESCRIPTION -The lsvm command lists all partition profiles defined for the partitions specified in noderange. If noderange is a CEC, all the partitions associated with that CEC are displayed. +The B command lists all partition profiles defined for the partitions specified in I. If I is a CEC, all the partitions associated with that CEC are displayed. =head2 For PPC (using Direct FSP Management): -For Power 775(use option I<--p775> to specify), lsvm lists all partition I/O slots information for the partitions specified in noderange. If noderange is a CEC, it gets the CEC's pump mode value, octant's memory interleaving value, the all the octants configure value, and all the I/O slots information. +For Power 775 (use option B<--p775> to specify), B lists all partition I/O slots information for the partitions specified in I. If I is a CEC, it gets the CEC's pump mode value, octant's memory interleaving value, the all the octants configure value, and all the I/O slots information. -For DFM-managed (short for Direct FSP Management mode) normal power machine, lsvm lists the processor, memory, physical I/O slots, hugepage and BSR info for the specified partitions or CEC. +For DFM-managed (short for Direct FSP Management mode) normal power machine, B lists the processor, memory, physical I/O slots, hugepage and BSR info for the specified partitions or CEC. The pump mode value has the valid options: 1 - Node Pump Mode @@ -50,9 +50,9 @@ More information about this part, refer to the section Using the *vm commands to =head2 For KVM and VMware -The virtual machines that defined in the hypervisor I will be displayed. I can only be hypervisor. +If I is a hypervisor, virtual machines defined on that hypervisor will be displayed. If I is a VM, details for that VM will be displayed. -Note: Only the virtual machine which is in power on state can be listed by lsvm command. +Note: Only the virtual machine which is in power on state can be listed by B command. =head2 For zVM: @@ -67,7 +67,7 @@ Display usage message. B<-v> -Command Version. +Command version. B<-V> @@ -101,7 +101,7 @@ Output is similar to: lpar3: name=lpar3,lpar_name=lpar3,lpar_id=4,lpar_env=aixlinux,all_resources=0,min_mem=512, desired_mem=2048, max_mem=3072,min_num_huge_pages=0,desired_num_huge_pages=0,max_num_huge_pages=0,proc_mode=shared, min_proc_units=0.5,desired_proc_units=0.5,max_proc_units=0.5,min_procs=1,desired_procs=1,max_procs=1, sharing_mode=uncap,uncap_weight=128,shared_proc_pool_id=0,shared_proc_pool_name=DefaultPool,io_slots=none, lpar_io_pool_ids=none,max_virtual_slots=10, "virtual_serial_adapters=1/server/1/any//any/1,0/server/1/any//any/1", virtual_scsi_adapters=2/client/1/p6vios/4/1,virtual_eth_adapters=3/0/1//0/1,hca_adapters=none,boot_mode=norm,conn_monitoring=0,auto_start=0,power_ctrl_lpar_ids=none,work_group_id=none,redundant_err_path_reporting=0, bsr_arrays=0,lhea_logical_ports=none,lhea_capabilities=none,lpar_proc_compat_mode=default,electronic_err_reporting=null -2.To list all IVM-managed partitions associated with CEC cec01, enter: +2. To list all IVM-managed partitions associated with CEC cec01, enter: lsvm cec01 @@ -164,7 +164,7 @@ Output is similar to: OctantID=6,PendingOctCfg=1,CurrentOctCfg=1,PendingMemoryInterleaveMode=2,CurrentMemoryInterleaveMode=2; OctantID=7,PendingOctCfg=1,CurrentOctCfg=1,PendingMemoryInterleaveMode=2,CurrentMemoryInterleaveMode=2; -6.To list the lparname of lpars, enter: +6. To list the lparname of lpars, enter: lsvm cec1 -l --p775 @@ -248,9 +248,9 @@ Output is similar to: Bytes per BSR array: 4096 Available BSR array: 256 -Note: The lines list in "All Physical I/O info" section represent all the physical I/O resource information. The format is like "owner_lparid,slot_id,physical resource name,drc_index,slot_class_code(class discription)". The 'drc index' is short for Dynamic Resource Configuration Index, it uniquely indicate a physical I/O resource in normal power machine. +Note: The lines listed in "All Physical I/O info" section represent all the physical I/O resource information. The format is like "owner_lparid,slot_id,physical resource name,drc_index,slot_class_code(class discription)". The 'drc index' is short for Dynamic Resource Configuration Index, it uniquely indicates a physical I/O resource in a normal power machine. -9.For DFM-managed partition on normal power machine, list out the detailed information: +9. For DFM-managed partition on normal power machine, list out the detailed information: lsvm lpar1 diff --git a/xCAT-client/pods/man1/makentp.1.pod b/xCAT-client/pods/man1/makentp.1.pod index eab9c1cb5..28ef68f0b 100755 --- a/xCAT-client/pods/man1/makentp.1.pod +++ b/xCAT-client/pods/man1/makentp.1.pod @@ -38,7 +38,7 @@ To setup NTP on the compute node, add B postscript to the I -Setup NTP servers for both management node and the service node. +Setup NTP servers for both management node and the service node. If management node has SLES installed and used as I, it is recommanded to use the B postscript to set up NTP server for service nodes. =item B<-h|--help> diff --git a/xCAT-client/pods/man1/rflash.1.pod b/xCAT-client/pods/man1/rflash.1.pod index 4f55d8ea8..de1f11e60 100644 --- a/xCAT-client/pods/man1/rflash.1.pod +++ b/xCAT-client/pods/man1/rflash.1.pod @@ -1,6 +1,6 @@ =head1 Name -B - Performs Licensed Internal Code (LIC) update support for HMC-attached POWER5 and POWER6 Systems, and POWER7 systems using Direct FSP management. rflash is also able to update firmware for NextScale Fan Power Controllers (FPC). +B - Performs Licensed Internal Code (LIC) update support for HMC-attached POWER5 and POWER6 Systems, and POWER7 systems using Direct FSP management. B is also able to update firmware for NextScale Fan Power Controllers (FPC). =head1 B @@ -8,33 +8,33 @@ B [B<-h>|B<--help> | B<-v>|B<--version>] =head2 PPC (with HMC) specific: -B I B<-p> I {B<--activate> B|B} [B<-V>|B<--verbose>] +B I B<-p> I [B<--activate> {B|B}] [B<-V>|B<--verbose>] B I {B<--commit>|B<--recover>} [B<-V>|B<--verbose>] =head2 PPC (without HMC, using Direct FSP Management) specific: -B I B<-p> I B<--activate> B|B [B<-d> I] +B I B<-p> I [B<--activate> {B|B}] [B<-d> I] B I {B<--commit>|B<--recover>} =head2 NeXtScale FPC specific: -B I I +B I I =head2 OpenPOWER BMC specific: -B I I [B<-c>|B<--check>] [B<-V>] +B I I [B<-c>|B<--check>] [B<--retry=>I] [B<-V>] =head1 B -B The B command initiates Firmware updates on supported xCAT nodes. Licensed Internal Code (also known as microcode) updates are performed on supported HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. +The B command initiates Firmware updates on supported xCAT nodes. Licensed Internal Code (also known as microcode) updates are performed on supported HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. The command scans the specified directory structure for Firmware update package files applicable to the given nodes and components. And then it will B select the B version for the upgrade. The firmware update files include the Microcode update package and associated XML file. They can be downloaded from the IBM Web site: I. The POWER5 and POWER6 systems contain several components that use Licensed Internal Code. The B command supports two of these components: the managed system (also known as the Central Electronics Complex, or CEC) and the power subsystem (also known as the Bulk Power Assembly (BPA) or Bulk Power Controller (BPC)). Some POWER5 managed systems can be attached to a power subsystem. These power subsystems can support multiple managed systems. When the B command is invoked, xCAT will determine the managed system or power subsystem associated with that CEC and perform the update. -The B can be an CEC or CEC list, a Lpar or Lpar list and a Frame or Frame list. But CEC (or Lpar) and Frame B be used at the same time. When the I is an CEC or CEC list, B will upgrade the firmware of the CEC or CECs in the cec list. If I is a Lpar or Lpar list, B will update Licensed Internal Code (LIC) on HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. If I is a Frame or Frame list, B will update Licensed Internal Code (LIC) of the power subsystem on HMC-attached POWER5 and POWER6 pSeries nodes. The I can also be the specified node groups. You can specify a comma or space-separated list of node group ranges. See the I man page for detailed usage information. +The I can be an CEC or CEC list, a Lpar or Lpar list and a Frame or Frame list. But CEC (or Lpar) and Frame B be used at the same time. When the I is an CEC or CEC list, B will upgrade the firmware of the CEC or CECs in the cec list. If I is a Lpar or Lpar list, B will update Licensed Internal Code (LIC) on HMC-attached POWER5 and POWER6 pSeries nodes, and POWER7 systems using Direct FSP management. If I is a Frame or Frame list, B will update Licensed Internal Code (LIC) of the power subsystem on HMC-attached POWER5 and POWER6 pSeries nodes. The I can also be the specified node groups. You can specify a comma or space-separated list of node group ranges. See the I man page for detailed usage information. The command will update firmware for NeXtScale FPC when given an FPC node and the http information needed to access the firmware. @@ -66,11 +66,11 @@ In currently Direct FSP/BPA Management, our B doesn't support B option will load the new firmware into the T (temp) side, but will not activate it like the disruptive firmware. The customer will continue to run the Frames and CECs working with the P (perm) side and can wait for a maintenance window where they can activate and boot the Frame/CECs with new firmware levels. Refer to the doc to get more details: XCAT_Power_775_Hardware_Management -In Direct FSP/BPA Management, there is -d option. The default value is /tmp. When do firmware update, rflash will put some related data from rpm packages in directory, so the execution of rflash will require available disk space in for the command to properly execute: +In Direct FSP/BPA Management, there is B<-d> I option. The default value is /tmp. When doing firmware update, B will put some related data from rpm packages in directory, so the execution of B will require available disk space in for the command to properly execute: For one GFW rpm package and one power code rpm package , if the GFW rpm package size is gfw_rpmsize, and the Power code rpm package size is power_rpmsize, it requires that the available disk space should be more than: 1.5*gfw_rpmsize + 1.5*power_rpmsize -For Power 775, the rflash command takes effect on the primary and secondary FSPs or BPAs almost in parallel. +For Power 775, the B command takes effect on the primary and secondary FSPs or BPAs almost in parallel. For more details about the Firmware Update using Direct FSP/BPA Management, refer to: XCAT_Power_775_Hardware_Management#Updating_the_BPA_and_FSP_firmware_using_xCAT_DFM @@ -102,7 +102,7 @@ Specifies the directory where the packages are located. Specifies the directory where the raw data from rpm packages for each CEC/Frame are located. The default directory is /tmp. The option is only used in Direct FSP/BPA Management. -=item B<--activate> B | B +=item B<--activate> {B | B} Must be specified to activate the new Licensed Internal Code. The "disruptive" option will cause the target systems to be recycled. Without this flag, LIC updates will be installed only, not activated. @@ -114,6 +114,10 @@ Used to commit the flash image in the temporary side of the chip to the permanen Used to recover the flash image in the permanent side of the chip to the temporary side for both managed systems and power subsystems. +=item B<--retry=>I + +Specify number of times to retry the update if failure is detected. Default value is 2. Value of 0 can be used to indicate no retries. + =item B<-v|--version> Displays the command's version. @@ -159,7 +163,7 @@ To update the firmware on OpenPOWER machine specify the node name and the file p rflash fs3 /firmware/8335_810.1543.20151021b_update.hpm -Print verbose message to rflash log file per node when updading firmware: +Print verbose message to rflash log file (/var/log/xcat/rflash/fs3.log) when updading firmware: rflash fs3 /firmware/8335_810.1543.20151021b_update.hpm -V diff --git a/xCAT-client/pods/man1/rinv.1.pod b/xCAT-client/pods/man1/rinv.1.pod index e65e78bde..e0799d15b 100644 --- a/xCAT-client/pods/man1/rinv.1.pod +++ b/xCAT-client/pods/man1/rinv.1.pod @@ -10,10 +10,14 @@ B [B<-h>|B<--help>|B<-v>|B<--version>] B I {B|B|B|B|B|B|B|B|B|B|B|B|B|B|B} -=head2 OpenPOWER server specific: +=head2 OpenPOWER (using ipmi) server specific: B I {B|B|B|B|B|B|B|B|B} +=head2 OpenPOWER (using openbmc) server specific: + +B I {B|B|B|B|B|B|B|B|B|B|B} + =head2 PPC (with HMC) specific: B I {B|B|B|B|B|B} diff --git a/xCAT-client/pods/man1/rmdef.1.pod b/xCAT-client/pods/man1/rmdef.1.pod index e226fe80c..95b4358b1 100644 --- a/xCAT-client/pods/man1/rmdef.1.pod +++ b/xCAT-client/pods/man1/rmdef.1.pod @@ -8,7 +8,7 @@ B - Use this command to remove xCAT data object definitions. B [B<-h>|B<--help>] [B<-t> I] B [B<-V>|B<--verbose>] [B<-a>|B<--all>] [B<-t> I] [B<-o> I] -[B<-f>|B<--force>] [I] +[B<-f>|B<--force>] [B<-C>|B<--cleanup>] [I] =head1 DESCRIPTION @@ -22,15 +22,23 @@ This command is used to remove xCAT object definitions that are stored in the xC =item B<-a|--all> -Clear the whole xCAT database. A backup of the xCAT definitions should be saved before using this option. Once all the data is removed the xCAT daemon will no longer work. Most xCAT commands will fail. -In order to use xCAT commands again, you have two options. You can restore your database from your backup by switching to bypass mode, and running the restorexCATdb command. -You switch to bypass mode by setting the XCATBYPASS environmant variable. (ex. "export XCATBYPASS=yes") -A second option is to run xcatconfig -d. This will restore the initial setup of the database as when xCAT was initially installed. -You can then restart xcatd and run xCAT commands. +Clear the whole xCAT database. A backup of the xCAT definitions should be saved before using this option as the xCAT daemons will no longer work once cleared. + +To restore: + +=over 5 + +=item 1. B and run the B command. + +or + +=item 2. Run B which initializes the database the same as when xCAT was installed. + +=back =item B<-f|--force> -Use this with the all option as an extra indicator that ALL definitions are to be removed. +Use this with the B<--all> option as an extra indicator that ALL definitions are to be removed. =item B<-h|--help> @@ -48,6 +56,10 @@ A set of comma delimited object names. A set of comma delimited object types. +=item B<-C|--cleanup> + +Perform additional cleanup by running B on the objects specified in the I. + =item B<-V|--verbose> Verbose mode. diff --git a/xCAT-client/pods/man1/rpower.1.pod b/xCAT-client/pods/man1/rpower.1.pod index 4bcc38ab8..61e7be87c 100644 --- a/xCAT-client/pods/man1/rpower.1.pod +++ b/xCAT-client/pods/man1/rpower.1.pod @@ -8,11 +8,21 @@ B I [B<--nodeps>] [B|B|B|B|B [B<-h>|B<--help>|B<-v>|B<--version>] -=head2 BMC (using IPMI) specific: +=head2 BMC (using IPMI): B I [B|B|B|B|B|B|B|B|B|B [B<-w> I] [B<-o>] [B<-r>]] -B I [B|B|B] +B I [B|B|B|B] + +=head2 OpenPower BMC (using IPMI): + +B I [B|B|B|B|B|B|B] + +B I [B|B|B|B] + +=head2 OpenPower OpenBMC: + +B I [B|B|B|B|B|B|B] =head2 PPC (with IVM or HMC) specific: @@ -62,7 +72,7 @@ B I [B|B|B|B|B|B =head2 pdu specific: -B I [B|B|B] +B I [B|B|B|B] =head1 DESCRIPTION diff --git a/xCAT-client/pods/man1/rspconfig.1.pod b/xCAT-client/pods/man1/rspconfig.1.pod index 783eed89e..900224f65 100644 --- a/xCAT-client/pods/man1/rspconfig.1.pod +++ b/xCAT-client/pods/man1/rspconfig.1.pod @@ -18,10 +18,14 @@ B I B={B | I} =head2 BMC specific: -B I {B|B|B|B|B|B} +B I {B|B|B|B|B|B} B I B=I