diff --git a/README.rst b/README.rst index 6d1848fbf..1b8779f68 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_2138| |docs_2137| |docs_2136| |docs_2135| |docs_2134| |docs_2133| |docs_2132| |docs_2131| |docs_2130| |docs_212| +|docs_latest| |docs_2139| |docs_2138| |docs_2137| |docs_2136| |docs_2135| |docs_2134| |docs_2133| |docs_2132| |docs_2131| |docs_2130| |docs_212| 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_2139| image:: https://readthedocs.org/projects/xcat-docs/badge/?version=2.13.9 + :alt: 2.13.9 documentation status + :scale: 100% + :target: http://xcat-docs.readthedocs.io/en/2.13.9/ + .. |docs_2138| image:: https://readthedocs.org/projects/xcat-docs/badge/?version=2.13.8 :alt: 2.13.8 documentation status :scale: 100% diff --git a/Version b/Version index 6ad4f1e46..3caff04ae 100644 --- a/Version +++ b/Version @@ -1 +1 @@ -2.13.9 +2.13.10 diff --git a/build-ubunturepo b/build-ubunturepo index 729067680..7511a168d 100755 --- a/build-ubunturepo +++ b/build-ubunturepo @@ -213,7 +213,7 @@ then for file in $packages do file_low=`echo $file | tr '[A-Z]' '[a-z]'` - if [ "$file" = "xCAT" -o "$file" = "xCAT-genesis-scripts" ]; then + if [ "$file" = "xCAT" -o "$file" = "xCAT-genesis-scripts" -o "$file" = "xCATsn" ]; then target_archs="amd64 ppc64el" else target_archs="all" @@ -250,7 +250,7 @@ then # shipping bmcsetup and getipmi scripts as part of postscripts files=("bmcsetup" "getipmi") for f in "${files[@]}"; do - cp ${CURDIR}/../xCAT-genesis-scripts/bin/$f ${CURDIR}/postscripts/$f + cp ${CURDIR}/../xCAT-genesis-scripts/usr/bin/$f ${CURDIR}/postscripts/$f sed -i "s/xcat.genesis.$f/$f/g" ${CURDIR}/postscripts/$f done fi diff --git a/docs/source/advanced/pdu/crpdu.rst b/docs/source/advanced/pdu/crpdu.rst new file mode 100644 index 000000000..9933a80bc --- /dev/null +++ b/docs/source/advanced/pdu/crpdu.rst @@ -0,0 +1,109 @@ +Collaborative PDU +================= + +Collaborative PDU is also referred as Coral PDU, it controls power for compute Rack. User can access PDU via SSH and can use the **PduManager** command to configure and manage the PDU product. + + +Pre-Defined PDU Objects +----------------------- + +A pre-defined PDU node object is required before running pdudiscover command. :: + + mkdef coralpdu groups=pdu mgt=pdu nodetype=pdu (required) + +all other attributes can be set by chdef command or pdudisocover command. :: + + --switch required for pdudiscover command to do mapping + --switchport required for pdudiscover command to do mapping + --ip ip address of the pdu. + --mac can be filled in by pdudiscover command + --pdutype crpdu(for coral pdu) or irpdu(for infrastructure PDUs) + + +The following attributes need to be set in order to configure snmp with non-default values. :: + + --community community string for coral pdu + --snmpversion snmp version number, required if configure snmpv3 for coral pdu + --snmpuser snmpv3 user name, required if configure snmpv3 for coral pdu + --authkey auth passphrase for snmpv3 configuration + --authtype auth protocol (MD5|SHA) for snmpv3 configuration + --privkey priv passphrase for snmpv3 configuration + --privtype priv protocol (AES|DES) for snmpv3 configuration + --seclevel security level (noAuthNoPriv|authNoPriv|authPriv) for snmpv3 configuration + +Make sure to run makehosts after pre-defined PDU. :: + + makehosts coralpdu + + +Configure PDUs +-------------- + +After pre-defining PDUs, user can use **pdudisocver --range ip_range --setup** to configure the PDUs, or following commands can be used: + + * To configure passwordless of Coral PDU: :: + + # rspconfig coralpdu sshcfg + + * To change hostname of Coral PDU: :: + + # rspconfig coralpdu hosname=f5pdu3 + + * To change ip address of PDU: :: + + # rsconfig coralpdu ip=x.x.x.x netmaks=255.x.x.x + + * To configure SNMP community string or snmpv3 of PDU (the attribute needs to pre-defined): :: + + # rspconfig coralpdu snmpcfg + + +Remote Power Control of PDU +--------------------------- + +Use the rpower command to remotely power on and off PDU. + + * To check power stat of PDU: :: + + # rpower coralpdu stat + + * To power off the PDU: :: + + # rpower coralpdu off + + * To power on the PDU: :: + + # rpower coralpdu on + +Coral PDUs have three relays, the following commands are for individual relay support of PDU: + + * To check power stat of relay: :: + + # rpower coralpdu relay=1 stat + + * To power off the relay: :: + + # rpower coralpdu relay=2 off + + * To power on the relay: :: + + # rpower coralpdu relay=3 on + + +Show Monitor Data +----------------- + +Use the rvitals command to show realtime monitor data(input voltage, current, power) of PDU. :: + + # rvitals coralpdu + + +Show manufacture information +----------------------------- + +Use the rinv command to show MFR information of PDU :: + + # rinv coralpdu + + + diff --git a/docs/source/advanced/pdu/index.rst b/docs/source/advanced/pdu/index.rst index 5141a09f5..625bfb269 100644 --- a/docs/source/advanced/pdu/index.rst +++ b/docs/source/advanced/pdu/index.rst @@ -1,10 +1,14 @@ PDUs ==== -Power Distribution Units (PDUs) are devices that distribute power to servers in a frame. Intelligent PDUs have the capability of monitoring the amount of power that is being used by devices plugged into it. +Power Distribution Units (PDUs) are devices that distribute power to servers in a frame. They have the capability of monitoring the amount of power that is being used by devices plugged into it and cycle power to individual receptacles. xCAT can support two kinds of PDUs, infrastructure PDU (irpdu) and collaborative PDU (crpdu). + +The Infrastructure rack PDUs are switched and monitored 1U PDU products which can connect up to nine C19 devices or up to 12 C13 devices and an additional three C13 peripheral devices to a signle dedicated power source. The Collaborative PDU is on the compute rack and has the 6x IEC 320-C13 receptacles that feed the rack switches. These two types of PDU have different design and implementation. xCAT has different code path to maintains PDU commands via **pdutype**. .. toctree:: :maxdepth: 2 pdu.rst + irpdu.rst + crpdu.rst diff --git a/docs/source/advanced/pdu/irpdu.rst b/docs/source/advanced/pdu/irpdu.rst new file mode 100644 index 000000000..c7a557ed7 --- /dev/null +++ b/docs/source/advanced/pdu/irpdu.rst @@ -0,0 +1,153 @@ +Infrastructure PDU +================== + +Users can access Infrastructure PDU via telnet and use the **IBM PDU Configuration Utility** to set up and configure the PDU. xCAT supports PDU commands for power management and monitoring through SNMP. + + +PDU Commands +------------ + +Administrators will need to know the exact mapping of the outlets to each server in the frame. xCAT cannot validate the physical cable is connected to the correct server. + +Add a ``pdu`` attribute to the compute node definition in the form "PDU_Name:outlet": :: + + # + # Compute server cn01 has two power supplies + # connected to outlet 6 and 7 on pdu=f5pdu3 + # + chdef cn01 pdu=f5pdu3:6,f5pdu3:7 + + +The following commands are supported against a compute node: + + * Check the pdu status for a compute node: :: + + # rpower cn01 pdustat + cn01: f5pdu3 outlet 6 is on + cn01: f5pdu3 outlet 7 is on + + + * Power off the PDU outlets for a compute node: :: + + # rpower cn01 pduoff + cn01: f5pdu3 outlet 6 is off + cn01: f5pdu3 outlet 7 is off + + * Power on the PDU outlets for a compute node: :: + + # rpower cn01 pduon + cn01: f5pdu3 outlet 6 is on + cn01: f5pdu3 outlet 7 is on + + * Power cycling the PDU outlets for 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: :: + + # rpower f5pdu3 stat + f5pdu3: outlet 1 is on + f5pdu3: outlet 2 is on + f5pdu3: outlet 3 is on + f5pdu3: outlet 4 is on + f5pdu3: outlet 5 is on + f5pdu3: outlet 6 is off + f5pdu3: outlet 7 is off + f5pdu3: outlet 8 is on + f5pdu3: outlet 9 is on + f5pdu3: outlet 10 is on + f5pdu3: outlet 11 is on + f5pdu3: outlet 12 is on + + * Power off the full PDU: :: + + # rpower f5pdu3 off + f5pdu3: outlet 1 is off + f5pdu3: outlet 2 is off + f5pdu3: outlet 3 is off + f5pdu3: outlet 4 is off + f5pdu3: outlet 5 is off + f5pdu3: outlet 6 is off + f5pdu3: outlet 7 is off + f5pdu3: outlet 8 is off + f5pdu3: outlet 9 is off + f5pdu3: outlet 10 is off + f5pdu3: outlet 11 is off + f5pdu3: outlet 12 is off + + * Power on the full PDU: :: + + # rpower f5pdu3 on + f5pdu3: outlet 1 is on + f5pdu3: outlet 2 is on + f5pdu3: outlet 3 is on + f5pdu3: outlet 4 is on + f5pdu3: outlet 5 is on + f5pdu3: outlet 6 is on + f5pdu3: outlet 7 is on + f5pdu3: outlet 8 is on + f5pdu3: outlet 9 is on + 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 + + * PDU inventory information: :: + + # rinv f6pdu16 + f6pdu16: PDU Software Version: "OPDP_sIBM_v01.3_2" + f6pdu16: PDU Machine Type: "1U" + f6pdu16: PDU Model Number: "dPDU4230" + f6pdu16: PDU Part Number: "46W1608" + f6pdu16: PDU Name: "IBM PDU" + f6pdu16: PDU Serial Number: "4571S9" + f6pdu16: PDU Description: "description" + + * PDU and outlet power information: :: + + # rvitals f6pdu15 + f6pdu15: Voltage Warning: 0 + f6pdu15: outlet 1 Current: 0 mA + f6pdu15: outlet 1 Max Capacity of the current: 16000 mA + f6pdu15: outlet 1 Current Threshold Warning: 9600 mA + f6pdu15: outlet 1 Current Threshold Critical: 12800 mA + f6pdu15: outlet 1 Last Power Reading: 0 Watts + f6pdu15: outlet 2 Current: 0 mA + f6pdu15: outlet 2 Max Capacity of the current: 16000 mA + f6pdu15: outlet 2 Current Threshold Warning: 9600 mA + f6pdu15: outlet 2 Current Threshold Critical: 12800 mA + f6pdu15: outlet 2 Last Power Reading: 0 Watts + f6pdu15: outlet 3 Current: 1130 mA + f6pdu15: outlet 3 Max Capacity of the current: 16000 mA + f6pdu15: outlet 3 Current Threshold Warning: 9600 mA + f6pdu15: outlet 3 Current Threshold Critical: 12800 mA + f6pdu15: outlet 3 Last Power Reading: 217 Wattsv + +**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 side after the BMC boots. + + + + + + + + diff --git a/docs/source/advanced/pdu/pdu.rst b/docs/source/advanced/pdu/pdu.rst index a8566b5f8..0157ee8da 100644 --- a/docs/source/advanced/pdu/pdu.rst +++ b/docs/source/advanced/pdu/pdu.rst @@ -1,17 +1,39 @@ -PDU -=== +Discovering PDUs +================ -xCAT provides basic remote management for each power outlet plugged into the PDUs using SNMP communication. This documentation will focus on configuration of the PDU and Node objects to allow xCAT to control power at the PDU outlet level. +xCAT provides `pdudiscover` command to discover the PDUs that are attached to the neighboring subnets on xCAT management node. :: + + pdudiscover [|--range ipranges] [-r|-x|-z] [-w] [-V|--verbose] [--setup] + +xCAT uses snmp scan method to discover PDU. Make sure net-snmp-utils package is installed on xCAT MN in order to use snmpwalk command. :: + + Options: + --range Specify one or more IP ranges. Each can be an ip address (10.1.2.3) or an ip range + (10.1.2.0/24). If the range is huge, for example, 192.168.1.1/8, the pdu + discover may take a very long time to scan. So the range should be exactly + specified. It accepts multiple formats. For example: + 192.168.1.1/24, 40-41.1-2.3-4.1-100. + + If the range is not specified, the command scans all the subnets that the active + network interfaces (eth0, eth1) are on where this command is issued. + -r Display Raw responses. + -x XML formatted output. + -z Stanza formatted output. + -w Writes output to xCAT database. + --setup Process switch-based pdu discovery and configure the PDUs(it included passwordless , change ip address from dhcp to static and snmp configuration). It required predefined PDU node definition with switch name and switch port attributes for mapping. (Notes: only support for crpdu for now for this options) Define PDU Objects ------------------ - #. Define pdu object :: - mkdef f5pdu3 groups=pdu ip=50.0.0.8 mgt=pdu nodetype=pdu + mkdef f5pdu3 groups=pdu ip=50.0.0.8 mgt=pdu nodetype=pdu pdutype=irpdu + +#. Define switch attribute for pdu object which will be used for pdudiscover **--setup** options. :: + + chdef f5pdu3 switch=mid08 switchport=3 #. Add hostname to /etc/hosts:: @@ -19,129 +41,6 @@ Define PDU Objects #. Verify the SNMP command responds against the PDU: :: - snmpwalk -v1 -cpublic -mALL f5pdu3 .1.3.6.1.2.1.1 - - -Define PDU Attribute --------------------- - -Administrators will need to know the exact mapping of the outlets to each server in the frame. xCAT cannot validate the physical cable is connected to the correct server. - -Add a ``pdu`` attribute to the compute node definition in the form "PDU_Name:outlet": :: - - # - # Compute server cn01 has two power supplies - # connected to outlet 6 and 7 on pdu=f5pdu3 - # - chdef cn01 pdu=f5pdu3:6,f5pdu3:7 - - -Verify the setting: ``lsdef cn01 -i pdu`` - - -PDU Commands ------------- - -The following commands are supported against a compute node: - - * Check the pdu status for a compute node: :: - - # rpower cn01 pdustat - cn01: f5pdu3 outlet 6 is on - cn01: f5pdu3 outlet 7 is on - - - * Power off the PDU outlets on a compute node: :: - - # rpower cn01 pduoff - cn01: f5pdu3 outlet 6 is off - cn01: f5pdu3 outlet 7 is off - - * Power on the PDU outlets on a compute node: :: - - # rpower cn01 pduon - 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: :: - - # rinv f5pdu3 - f5pdu3: outlet 1 is on - f5pdu3: outlet 2 is on - f5pdu3: outlet 3 is on - f5pdu3: outlet 4 is on - f5pdu3: outlet 5 is on - f5pdu3: outlet 6 is off - f5pdu3: outlet 7 is off - f5pdu3: outlet 8 is on - f5pdu3: outlet 9 is on - f5pdu3: outlet 10 is on - f5pdu3: outlet 11 is on - f5pdu3: outlet 12 is on - - * Power off the full PDU: :: - - # rpower f5pdu3 off - f5pdu3: outlet 1 is off - f5pdu3: outlet 2 is off - f5pdu3: outlet 3 is off - f5pdu3: outlet 4 is off - f5pdu3: outlet 5 is off - f5pdu3: outlet 6 is off - f5pdu3: outlet 7 is off - f5pdu3: outlet 8 is off - f5pdu3: outlet 9 is off - f5pdu3: outlet 10 is off - f5pdu3: outlet 11 is off - f5pdu3: outlet 12 is off - - * Power on the full PDU: :: - - # rpower f5pdu3 on - f5pdu3: outlet 1 is on - f5pdu3: outlet 2 is on - f5pdu3: outlet 3 is on - f5pdu3: outlet 4 is on - f5pdu3: outlet 5 is on - f5pdu3: outlet 6 is on - f5pdu3: outlet 7 is on - f5pdu3: outlet 8 is on - f5pdu3: outlet 9 is on - 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. - - - - - - + snmpwalk -v1 -cpublic -mALL f5pdu3 system diff --git a/docs/source/guides/admin-guides/manage_clusters/common/deployment/network/cfg_routes.rst b/docs/source/guides/admin-guides/manage_clusters/common/deployment/network/cfg_routes.rst new file mode 100644 index 000000000..d9a4bcb70 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/common/deployment/network/cfg_routes.rst @@ -0,0 +1,93 @@ +Configure routes +----------------- + +There are 2 ways to configure OS route in xCAT: + + * ``makeroutes``: command to add or delete routes on the management node or any given nodes. + * ``setroute``: script to replace/add the routes to the node, it can be used in postscripts/postbootscripts. + +``makeroutes`` or ``setroute`` will modify OS temporary route, it also modifies persistent route in ``/etc/sysconfig/static-routes`` file. + +Before using ``makeroutes`` or ``setroute`` to configure OS route, details of the routes data such as routename, subnet, net mask and gateway should be stored in ``routes`` table. + +Configure ``routes`` table +`````````````````````````` + +#. Store default route data in ``routes`` table: :: + + chdef -t route defaultroute net=default mask=255.0.0.0 gateway=10.0.0.101 + +#. Store additional route data in ``routes`` table: :: + + chdef -t route 20net net=20.0.0.0 mask=255.0.0.0 gateway=0.0.0.0 ifname=eth1 + +#. Check data in ``routes`` table: :: + + tabdump routes + #routename,net,mask,gateway,ifname,comments,disable + "30net","30.0.0.0","255.0.0.0","0.0.0.0","eth2",, + "20net","20.0.0.0","255.0.0.0","0.0.0.0","eth1",, + "defaultroute","default","255.0.0.0","10.0.0.101",,, + +Use ``makeroutes`` to configure OS route on xCAT management node +'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' + +#. define the names of the routes to be setup on the management node in ``site`` table: :: + + chdef -t site mnroutenames="defaultroute,20net" + lsdef -t site clustersite -i mnroutenames + Object name: clustersite + mnroutenames=defaultroute,20net + +#. add all routes from the ``mnroutenames`` to the OS route table for the management node: :: + + makeroutes + +#. add route ``20net`` and ``30net`` to the OS route table for the management node: :: + + makeroutes -r 20net,30net + +#. delete route ``20net`` from the OS route table for the management node: :: + + makeroutes -d -r 20net + +Use ``makeroutes`` to configure OS route for compute node +''''''''''''''''''''''''''''''''''''''''''''''''''''''''' + +#. define the names of the routes to be setup on the compute node: :: + + chdef -t cn1 routenames="defaultroute,20net" + +#. add all routes from the ``routenames`` to the OS route table for the compute node: :: + + makeroutes cn1 + +#. add route ``20net`` and ``30net`` to the OS route table for the compute node: :: + + makeroutes cn1 -r 20net,30net + +#. delete route ``20net`` from the OS route table for the compute node: :: + + makeroutes cn1,cn2 -d -r 20net + +Use ``setroute`` to configure OS route for compute node +''''''''''''''''''''''''''''''''''''''''''''''''''''''' + +#. define the names of the routes to be setup on the compute node: :: + + chdef -t cn1 routenames="defaultroute,20net" + +#. If adding ``setroute [replace | add]`` into the node’s postscripts list, ``setroute`` will be executed during OS deployment on compute node to replace/add routes from ``routenames``: :: + + chdef cn1 -p postscripts="setroute replace" + +#. Or if the compute node is already running, use ``updatenode`` command to run ``setroute [replace | add]`` postscript: :: + + updatenode cn1 -P "setroute replace" + +Check result +```````````` + +#. Use ``route`` command in xCAT management node to check OS route table. + +#. Use ``xdsh cn1 route`` to check compute node OS route table. diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/cfg_routes.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/cfg_routes.rst new file mode 100644 index 000000000..9fb5d6b78 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/cfg_routes.rst @@ -0,0 +1 @@ +.. include:: ../../../../common/deployment/network/cfg_routes.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/index.rst index 43286943d..1300effb7 100644 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/index.rst +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskful/customize_image/network/index.rst @@ -8,3 +8,4 @@ This section describes how to configure network adapters with persistent configu cfg_network_adapter.rst cfg_second_adapter.rst + cfg_routes.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/cfg_routes.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/cfg_routes.rst new file mode 100644 index 000000000..9fb5d6b78 --- /dev/null +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/cfg_routes.rst @@ -0,0 +1 @@ +.. include:: ../../../../common/deployment/network/cfg_routes.rst diff --git a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/index.rst b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/index.rst index 43286943d..1300effb7 100644 --- a/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/index.rst +++ b/docs/source/guides/admin-guides/manage_clusters/ppc64le/diskless/customize_image/network/index.rst @@ -8,3 +8,4 @@ This section describes how to configure network adapters with persistent configu cfg_network_adapter.rst cfg_second_adapter.rst + cfg_routes.rst diff --git a/docs/source/guides/admin-guides/references/man1/reventlog.1.rst b/docs/source/guides/admin-guides/references/man1/reventlog.1.rst index 8d5e4bff2..108ccbe9d 100644 --- a/docs/source/guides/admin-guides/references/man1/reventlog.1.rst +++ b/docs/source/guides/admin-guides/references/man1/reventlog.1.rst @@ -19,10 +19,17 @@ Name **************** -\ **reventlog**\ \ *noderange*\ {\ *number-of-entries*\ [\ **-s**\ ]|\ **all [-s] | clear**\ } +\ **reventlog**\ \ *noderange*\ [\ *number-of-entries*\ [\ **-s**\ ]|\ **all [-s] | clear**\ ] \ **reventlog**\ [\ **-h | -**\ **-help | -v | -**\ **-version**\ ] +OpenPOWER OpenBMC specific : +============================ + + +\ **reventlog**\ \ *noderange*\ [\ **resolved=**\ {\ *id-list*\ |\ **LED**\ }] + + ******************* \ **Description**\ @@ -64,6 +71,12 @@ logs are stored on each servers service processor. +\ **resolved=**\ {\ *id-list*\ |\ **LED**\ } + + Mark event log entries as resolved. Use comma separated list of entry ids to specify individual entries. Use \ **LED**\ to mark as resolved all event log entries that contribute to LED fault. + + + \ **-h | -**\ **-help**\ Print help. @@ -83,7 +96,7 @@ logs are stored on each servers service processor. -1. +1. List last 5 event log entries from node4 and node5 .. code-block:: perl @@ -110,7 +123,7 @@ logs are stored on each servers service processor. -2. +2. Clear all event log entries from node4 and node5 .. code-block:: perl @@ -129,6 +142,27 @@ logs are stored on each servers service processor. +3. Mark as resolved all event log entries from node4 that contribute to LED fault + + + .. code-block:: perl + + reventlog node4 resolved=LED + + + Output is similar to: + + + .. code-block:: perl + + Attempting to resolve the following log entries: LED... + node4: Resolved 51. + node4: Resolved 52. + node4: Resolved 58. + + + + ******** SEE ALSO 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 abc48f8d7..4eb48fa80 100644 --- a/docs/source/guides/admin-guides/references/man1/rflash.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rflash.1.rst @@ -150,31 +150,19 @@ The command will update firmware for OpenPOWER BMC when given an OpenPOWER node \ **-l|-**\ **-list**\ : +The list option will list out available firmware on the BMC. It provides an interface to display the ID of the various firmware levels. -.. code-block:: perl - - The list option will list out available firmware on the BMC. It provides an interface to display the ID of the various firmware levels. - - The (*) symbol indicates the active running firmware on the server. - - The (+) symbol indicates the firmware that is pending and a reboot is required to set it to be the active running firmware level. +The (\*) symbol indicates the active running firmware on the server. +The (+) symbol indicates the firmware that is pending and a reboot is required to set it to be the active running firmware level. \ **-u|-**\ **-upload**\ : - -.. code-block:: perl - - The upload option expects a .tar file as the input and will upload the file to the BMC. Use the list option to view the result. - +The upload option expects a .tar file as the input and will upload the file to the BMC. Use the list option to view the result. \ **-a|-**\ **-activate**\ : - -.. code-block:: perl - - The activate option expects either a .tar file or an ID as the input. If a .tar file is provided, it will upload and activate the firmware in a single step - +The activate option expects either a .tar file or an ID as the input. If a .tar file is provided, it will upload and activate the firmware in a single step To apply the firmware level, a reboot is required to BMC and HOST. @@ -182,37 +170,14 @@ To apply the firmware level, a reboot is required to BMC and HOST. \ **-d**\ : - -.. code-block:: perl - - This option steamlines the update, activate, reboot BMC and reboot HOST procedure. It expects a directory containing both BMC and PNOR .tar files. When BMC and PNOR tar files are provided, the command will upload and activate firmware. After BMC becomes activate, it will reboot BMC. If BMC state is Ready, the command will reboot the HOST. If BMC state is NotReady, the command will exit. - +This option steamlines the update, activate, reboot BMC and reboot HOST procedure. It expects a directory containing both BMC and PNOR .tar files. When BMC and PNOR tar files are provided, the command will upload and activate firmware. After BMC becomes activate, it will reboot BMC. If BMC state is Ready, the command will reboot the HOST. If BMC state is NotReady, the command will exit. \ **Note:**\ When using \ **-**\ **-no-host-reboot**\ , it will not reboot the host after BMC is reboot. \ **-**\ **-delete**\ : +This delete option will delete update image from BMC. It expects an ID as the input. -.. code-block:: perl - - This delete option will delete update image from BMC. It expects an ID as the input. - - - -\ **-d**\ : - -.. code-block:: perl - - This option steamlines the update, activate, reboot BMC and reboot HOST procedure. It expects a directory containing both BMC and PNOR .tar files. When BMC and PNOR tar files are provided, the command will upload and activate firmware. After BMC becomes activate, it will reboot BMC. If BMC state is Ready, the command will reboot the HOST. If BMC state is NotReady, the command will exit. - -\ **Note:**\ When using \ **--no-host-reboot**\, it will not reboot the host after BMC is reboot. - - -\ **-**\ **-delete**\ : - -.. code-block:: perl - - The delete option will delete update image from BMC. It expects an ID as the input. *************** 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 b6956de5d..c9278d2f7 100644 --- a/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rspconfig.1.rst @@ -49,7 +49,7 @@ OpenBMC specific: \ **rspconfig**\ \ *noderange*\ {\ **ipsrc | ip | netmask | gateway | hostname | vlan | sshcfg**\ } -\ **rspconfig**\ \ *noderange*\ \ **dump**\ [\ **-l | -**\ **-list**\ ] [\ **-g | -**\ **-generate**\ ] [\ **-c | -**\ **-clear**\ {\ *id*\ |\ **all**\ }] [\ **-d | -**\ **-download**\ \ *id*\ ] +\ **rspconfig**\ \ *noderange*\ \ **dump**\ [\ **-l | -**\ **-list**\ ] [\ **-g | -**\ **-generate**\ ] [\ **-c | -**\ **-clear**\ {\ *id*\ | \ **all**\ }] [\ **-d | -**\ **-download**\ {\ *id*\ | \ **all**\ }] MPA specific: @@ -449,7 +449,7 @@ OPTIONS - \ **-d**\ will download a single dump from the BMC to /var/log/xcat/dump on management or service node. + \ **-d**\ will download a single dump or all generated dumps from the BMC to /var/log/xcat/dump on management or service node. 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 7fa7e62d6..f67fe481d 100644 --- a/docs/source/guides/admin-guides/references/man1/rvitals.1.rst +++ b/docs/source/guides/admin-guides/references/man1/rvitals.1.rst @@ -67,7 +67,7 @@ OpenPOWER (OpenBMC) specific: ============================= -\ **rvitals**\ \ *noderange*\ [\ **temp | voltage | wattage | fanspeed | power | altitude | all**\ ] +\ **rvitals**\ \ *noderange*\ [\ **temp | voltage | wattage | fanspeed | power | leds | altitude | all**\ ] diff --git a/docs/source/guides/admin-guides/references/man5/nodelist.5.rst b/docs/source/guides/admin-guides/references/man5/nodelist.5.rst index bb70e22b4..7dbe45086 100644 --- a/docs/source/guides/admin-guides/references/man5/nodelist.5.rst +++ b/docs/source/guides/admin-guides/references/man5/nodelist.5.rst @@ -50,7 +50,7 @@ nodelist Attributes: \ **status**\ - The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->booted->[alive], For booting: [alive/unreachable]->booting->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI). + The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->[postbooting]->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->[postbooting]->booted->[alive], For booting: [alive/unreachable]->booting->[postbooting]->booted->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI). diff --git a/docs/source/guides/admin-guides/references/man5/servicenode.5.rst b/docs/source/guides/admin-guides/references/man5/servicenode.5.rst index e202132f4..d4b581288 100644 --- a/docs/source/guides/admin-guides/references/man5/servicenode.5.rst +++ b/docs/source/guides/admin-guides/references/man5/servicenode.5.rst @@ -68,7 +68,7 @@ servicenode Attributes: \ **conserver**\ - Do we set up Conserver on this service node? Valid values:1 or 0. If 1, configures and starts conserver daemon. If 0, it does not change the current state of the service. + Do we set up console service on this service node? Valid values: 0, 1, or 2. If 0, it does not change the current state of the service. If 1, configures and starts conserver daemon. If 2, configures and starts goconserver daemon. 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 63d82dfa8..eb772d3b5 100644 --- a/docs/source/guides/admin-guides/references/man7/node.7.rst +++ b/docs/source/guides/admin-guides/references/man7/node.7.rst @@ -1131,7 +1131,7 @@ node Attributes: \ **status**\ (nodelist.status) - The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->booted->[alive], For booting: [alive/unreachable]->booting->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI). + The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->[postbooting]->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->[postbooting]->booted->[alive], For booting: [alive/unreachable]->booting->[postbooting]->booted->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI). diff --git a/docs/source/security/2017/20171207_openssl.rst b/docs/source/security/2017/20171207_openssl.rst new file mode 100644 index 000000000..2b1dfb7a3 --- /dev/null +++ b/docs/source/security/2017/20171207_openssl.rst @@ -0,0 +1,32 @@ +2017-12-07 - OpenSSL Vulnerabilities +==================================== + +*Dec 07, 2017*, OpenSSL announced the following security advisories: https://www.openssl.org/news/secadv/20171207.txt + + +Advisory CVEs +------------- + +* CVE-2017-3737 - **Read/write after SSL object in error state** (Severity: Moderate) + + This issue does not affect OpenSSL 1.1.0. + + OpenSSL 1.0.2 users should upgrade to 1.0.2n + +* CVE-2017-3738 - **rsaz_1024_mul_avx2 overflow bug on x86_64** (Severity: Low) + + Due to the low severity of this issue we are not issuing a new release of OpenSSL 1.1.0 at this time. The fix will be included in OpenSSL 1.1.0h when it becomes available. The fix is also available in commit e502cc86d in the OpenSSL git repository. + + OpenSSL 1.0.2 users should upgrade to 1.0.2n + + +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 1786e2562..0d2b5039e 100644 --- a/docs/source/security/2017/index.rst +++ b/docs/source/security/2017/index.rst @@ -5,6 +5,7 @@ :maxdepth: 1 20171212_tls.rst + 20171207_openssl.rst 20170828_openssl.rst 20170216_openssl.rst 20170126_openssl.rst diff --git a/makepythonrpm b/makepythonrpm new file mode 100755 index 000000000..4ee5b60b7 --- /dev/null +++ b/makepythonrpm @@ -0,0 +1,38 @@ +#!/bin/bash + +# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html + +function makepythonrpm { + RPMNAME="$1" + SPEC_FILE="$RPMNAME.spec" + tar --exclude .svn -czvf $RPMROOT/SOURCES/$RPMNAME-${VER}.tar.gz $RPMNAME + rm -f $RPMROOT/SRPMS/$RPMNAME-$VER*rpm $RPMROOT/RPMS/noarch/$RPMNAME-$VER*rpm + echo "Building $RPMROOT/RPMS/noarch/$RPMNAME-$VER-snap*.noarch.rpm $EMBEDTXT..." + rpmbuild --quiet -ta $RPMROOT/SOURCES/$RPMNAME-${VER}.tar.gz --define "version $VER" $REL "$EASE" + if [ $? -eq 0 ]; then + exit 0 + else + exit 1 + fi +} + +# Main code.... +OSNAME=$(uname) +VER=`cat Version` +REL="--define" +EASE='usedate 1' +RPMROOT=/root/rpmbuild +mkdir -p $RPMROOT/SOURCES +rpmbuild --version > /dev/null +if [ $? -gt 0 ]; then + echo "Error: rpmbuild does not appear to be installed or working." + exit 2 +fi + +if [ -n "$1" -a "$1" = "xCAT-openbmc-py" ]; then + makepythonrpm $1 +else + echo 'Usage: makepythonrpm xCAT-openbmc-py' + exit 1 +fi + diff --git a/makerpm b/makerpm index b093e116d..1e874662f 100755 --- a/makerpm +++ b/makerpm @@ -126,7 +126,7 @@ function makexcat { # shipping bmcsetup and getipmi scripts as part of postscripts files=("bmcsetup" "getipmi") for f in "${files[@]}"; do - cp "xCAT-genesis-scripts/bin/"$f ${RPMNAME}/postscripts/$f + cp "xCAT-genesis-scripts/usr/bin/"$f ${RPMNAME}/postscripts/$f sed -i "s/xcat.genesis.$f/$f/g" ${RPMNAME}/postscripts/$f done cd `dirname $0`/$RPMNAME diff --git a/perl-xCAT/xCAT/GlobalDef.pm b/perl-xCAT/xCAT/GlobalDef.pm index b9b99ea20..19cc18828 100644 --- a/perl-xCAT/xCAT/GlobalDef.pm +++ b/perl-xCAT/xCAT/GlobalDef.pm @@ -46,6 +46,7 @@ $::STATUS_INACTIVE = "unreachable"; $::STATUS_INSTALLING = "installing"; $::STATUS_INSTALLED = "installed"; $::STATUS_BOOTING = "booting"; +$::STATUS_POSTBOOTING = "postbooting"; $::STATUS_NETBOOTING = "netbooting"; $::STATUS_BOOTED = "booted"; $::STATUS_POWERING_ON = "powering-on"; @@ -66,6 +67,7 @@ $::STATUS_BMCREADY = "bmcready"; $::STATUS_INSTALLING => 1, $::STATUS_INSTALLED => 1, $::STATUS_BOOTING => 1, + $::STATUS_POSTBOOTING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_BOOTED => 1, $::STATUS_POWERING_ON => 1, @@ -86,15 +88,16 @@ $::STATUS_BMCREADY = "bmcready"; $::STATUS_SYNCED => 1, ); -#defined->[discovering]->[configuring]->[standingby]->installing->[installed]->booting->alive, defined->[discovering]->[configuring]-[standingby]->netbooting->booted->alive, alive/unreachable->booting->alive, powering-off->unreachable, alive->unreachable +#defined->[discovering]->[configuring]->[standingby]->installing->[installed]->booting->[postbooting]->booted->alive, defined->[discovering]->[configuring]-[standingby]->netbooting->[postbooting]->booted->alive, alive/unreachable->booting->alive, powering-off->unreachable, alive->unreachable %::NEXT_NODESTAT_VAL = ( $::STATUS_DEFINED => { $::STATUS_DISCOVERING => 1, $::STATUS_INSTALLING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_POWERING_OFF => 1, $::STATUS_POWERING_ON => 1, $::STATUS_BOOTING => 1, $::STATUS_CONFIGURING => 1 }, $::STATUS_DISCOVERING => { $::STATUS_INSTALLING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_CONFIGURING => 1, $::STATUS_BOOTING => 1 }, $::STATUS_CONFIGURING => { $::STATUS_INSTALLING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_STANDING_BY => 1 }, $::STATUS_INSTALLING => { $::STATUS_INSTALLED => 1, $::STATUS_BOOTING => 1 }, $::STATUS_INSTALLED => { $::STATUS_BOOTING => 1 }, - $::STATUS_BOOTING => { $::STATUS_BOOTED => 1, $::STATUS_ACTIVE => 1, $::STATUS_INACTIVE => 1 }, - $::STATUS_NETBOOTING => { $::STATUS_BOOTED => 1 }, + $::STATUS_BOOTING => { $::STATUS_BOOTED => 1, $::STATUS_ACTIVE => 1, $::STATUS_INACTIVE => 1, $::STATUS_POSTBOOTING => 1 }, + $::STATUS_POSTBOOTING => { $::STATUS_BOOTED => 1 }, + $::STATUS_NETBOOTING => { $::STATUS_POSTBOOTING => 1, $::STATUS_BOOTED => 1 }, $::STATUS_BOOTED => { $::STATUS_ACTIVE => 1, $::STATUS_INACTIVE => 1 }, $::STATUS_ACTIVE => { $::STATUS_INACTIVE => 1, $::STATUS_DISCOVERING => 1, $::STATUS_CONFIGURING => 1, $::STATUS_INSTALLING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_POWERING_OFF => 1, $::STATUS_POWERING_ON => 1 }, $::STATUS_INACTIVE => { $::STATUS_ACTIVE => 1, $::STATUS_DISCOVERING => 1, $::STATUS_CONFIGURING => 1, $::STATUS_INSTALLING => 1, $::STATUS_NETBOOTING => 1, $::STATUS_POWERING_OFF => 1, $::STATUS_POWERING_ON => 1 }, diff --git a/perl-xCAT/xCAT/MacMap.pm b/perl-xCAT/xCAT/MacMap.pm index 34f303aaa..2a1931397 100644 --- a/perl-xCAT/xCAT/MacMap.pm +++ b/perl-xCAT/xCAT/MacMap.pm @@ -510,7 +510,7 @@ sub refresh_table { # if we are doing switch discovery and the node is not a switch, skip # if we are NOT doing switch discovery, and the node is a switch, skip my $ntype = $typehash->{$entry->{node}}->[0]->{nodetype}; - if ( (($discover_switch) and ( $ntype ne "switch")) + if ( (($discover_switch) and ($ntype ne "switch") and ($ntype ne "pdu") ) or ( !($discover_switch) and ( $ntype eq "switch")) ){ xCAT::MsgUtils->trace(0, "d", "refresh_table: skip node=$entry->{node} switch=$entry->{switch} discover_switch=$discover_switch nodetype=$ntype\n"); next; diff --git a/perl-xCAT/xCAT/Schema.pm b/perl-xCAT/xCAT/Schema.pm index 02760f105..76eada918 100755 --- a/perl-xCAT/xCAT/Schema.pm +++ b/perl-xCAT/xCAT/Schema.pm @@ -624,7 +624,7 @@ passed as argument rather than by table value', descriptions => { node => 'The hostname of a node in the cluster.', groups => "A comma-delimited list of groups this node is a member of. Group names are arbitrary, except all nodes should be part of the 'all' group. Internal group names are designated by using __. For example, __Unmanaged, could be the internal name for a group of nodes that is not managed by xCAT. Admins should avoid using the __ characters when defining their groups.", - status => 'The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->booted->[alive], For booting: [alive/unreachable]->booting->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI).', + status => 'The current status of this node. This attribute will be set by xCAT software. Valid values: defined, booting, netbooting, booted, discovering, configuring, installing, alive, standingby, powering-off, unreachable. If blank, defined is assumed. The possible status change sequences are: For installation: defined->[discovering]->[configuring]->[standingby]->installing->booting->[postbooting]->booted->[alive], For diskless deployment: defined->[discovering]->[configuring]->[standingby]->netbooting->[postbooting]->booted->[alive], For booting: [alive/unreachable]->booting->[postbooting]->booted->[alive], For powering off: [alive]->powering-off->[unreachable], For monitoring: alive->unreachable. Discovering and configuring are for x Series discovery process. Alive and unreachable are set only when there is a monitoring plug-in start monitor the node status for xCAT. Note that the status values will not reflect the real node status if you change the state of the node from outside of xCAT (i.e. power off the node using HMC GUI).', statustime => "The data and time when the status was updated.", appstatus => "A comma-delimited list of application status. For example: 'sshd=up,ftp=down,ll=down'", appstatustime => 'The date and time when appstatus was updated.', @@ -962,7 +962,7 @@ passed as argument rather than by table value', dhcpserver => 'Do we set up DHCP on this service node? Not supported on AIX. Valid values:1 or 0. If 1, runs makedhcp -n. If 0, it does not change the current state of the service. ', tftpserver => 'Do we set up TFTP on this service node? Not supported on AIX. Valid values:1 or 0. If 1, configures and starts atftp. If 0, it does not change the current state of the service. ', nfsserver => 'Do we set up file services (HTTP,FTP,or NFS) on this service node? For AIX will only setup NFS, not HTTP or FTP. Valid values:1 or 0.If 0, it does not change the current state of the service. ', - conserver => 'Do we set up Conserver on this service node? Valid values:1 or 0. If 1, configures and starts conserver daemon. If 0, it does not change the current state of the service.', + conserver => 'Do we set up console service on this service node? Valid values: 0, 1, or 2. If 0, it does not change the current state of the service. If 1, configures and starts conserver daemon. If 2, configures and starts goconserver daemon. ', monserver => 'Is this a monitoring event collection point? Valid values: 1 or 0. If 0, it does not change the current state of the service.', ldapserver => 'Do we set up ldap caching proxy on this service node? Not supported on AIX. Valid values:1 or 0. If 0, it does not change the current state of the service.', ntpserver => 'Not used. Use setupntp postscript to setup a ntp server on this service node? Valid values:1 or 0. If 0, it does not change the current state of the service.', @@ -1057,6 +1057,7 @@ passed as argument rather than by table value', " requests it does not know to these servers. Note that the DNS servers on the\n" . " service nodes will ignore this value and always be configured to forward \n" . " to the management node.\n\n" . +" emptyzonesenable: (yes or no). This is to set empty-zones-enable value in named.conf options section. \n\n" . " master: The hostname of the xCAT management node, as known by the nodes.\n\n" . " nameservers: A comma delimited list of DNS servers that each node in the cluster should\n" . " use. This value will end up in the nameserver settings of the\n" . @@ -1151,6 +1152,7 @@ passed as argument rather than by table value', " defserialflow: The default serial flow - currently only used by the mknb command.\n\n" . " defserialport: The default serial port - currently only used by mknb.\n\n" . " defserialspeed: The default serial speed - currently only used by mknb.\n\n" . +" disablenodesetwarning: Allow the legacy xCAT non-osimage style nodeset to execute.\n\n" . " genmacprefix: When generating mac addresses automatically, use this manufacturing\n" . " prefix (e.g. 00:11:aa)\n\n" . " genpasswords: Automatically generate random passwords for BMCs when configuring\n" . diff --git a/perl-xCAT/xCAT/Usage.pm b/perl-xCAT/xCAT/Usage.pm index 454f8cbc1..d28130199 100755 --- a/perl-xCAT/xCAT/Usage.pm +++ b/perl-xCAT/xCAT/Usage.pm @@ -83,13 +83,14 @@ my %usage = ( OpenPOWER (IPMI) specific: rvitals noderange [temp|voltage|wattage|fanspeed|power|leds|chassis|all] OpenPOWER (OpenBMC) specific: - rvitals noderange [temp|voltage|wattage|fanspeed|power|altitude|all] + rvitals noderange [temp|voltage|wattage|fanspeed|power|leds|altitude|all] MIC specific: rvitals noderange {thermal|all} pdu specific: rvitals noderange ", "reventlog" => "Usage: reventlog [all [-s]|clear| [-s]] [-V|--verbose] + reventlog [resolved={|LED}] reventlog [-h|--help|-v|--version]", "rinv" => "Usage: @@ -146,7 +147,7 @@ my %usage = ( rspconfig [userid= username= password=] OpenBMC specific: rspconfig [ipsrc|ip|netmask|gateway|hostname|vlan] - rspconfig dump [-l|--list] [-g|--generate] [-c|--clear {|all}] [-d|--download ] + rspconfig dump [-l|--list] [-g|--generate] [-c|--clear {|all}] [-d|--download {|all}] iDataplex specific: rspconfig [thermprofile] rspconfig [thermprofile=] diff --git a/perl-xCAT/xCAT/data/switchinfo.pm b/perl-xCAT/xCAT/data/switchinfo.pm index 1a8986877..b5793f01c 100644 --- a/perl-xCAT/xCAT/data/switchinfo.pm +++ b/perl-xCAT/xCAT/data/switchinfo.pm @@ -42,6 +42,8 @@ our %global_switch_type = ( Cumulus => "onie", cumulus => "onie", Edgecore => "onie", + sLEN => "irpdu", + sIBM => "irpdu", coral => "crpdu" ); diff --git a/travis.pl b/travis.pl index 526cb5977..785879435 100644 --- a/travis.pl +++ b/travis.pl @@ -218,8 +218,8 @@ sub install_xcat{ my @cmds = ("cd ./../../xcat-core && sudo ./mklocalrepo.sh", "sudo chmod 777 /etc/apt/sources.list", - "sudo echo \"deb [arch=amd64] http://xcat.org/files/xcat/repos/apt/xcat-dep trusty main\" >> /etc/apt/sources.list", - "sudo echo \"deb [arch=ppc64el] http://xcat.org/files/xcat/repos/apt/xcat-dep trusty main\" >> /etc/apt/sources.list", + "sudo echo \"deb [arch=amd64] http://xcat.org/files/xcat/repos/apt/devel/xcat-dep trusty main\" >> /etc/apt/sources.list", + "sudo echo \"deb [arch=ppc64el] http://xcat.org/files/xcat/repos/apt/devel/xcat-dep trusty main\" >> /etc/apt/sources.list", "sudo wget -q -O - \"http://xcat.org/files/xcat/repos/apt/apt.key\" | sudo apt-key add -", "sudo apt-get -qq update"); my @output; diff --git a/xCAT-client/bin/rcons b/xCAT-client/bin/rcons index 7a432c08c..fd10fa4d4 100755 --- a/xCAT-client/bin/rcons +++ b/xCAT-client/bin/rcons @@ -149,7 +149,8 @@ elif [ $USE_GOCONSERVER == "1" ]; then CONGO_SSL_CERT=$HOME/.xcat/client-cred.pem \ CONGO_SSL_CA_CERT=$HOME/.xcat/ca.pem \ CONGO_PORT=12430 \ - CONGO_CLIENT_TYPE=xcat" + CONGO_CLIENT_TYPE=xcat \ + CONGO_SSL_INSECURE=true" if [ "$CONSERVER" == `hostname` ]; then host=`hostname -s` if [ $? -ne 0 ]; then diff --git a/xCAT-client/pods/man1/reventlog.1.pod b/xCAT-client/pods/man1/reventlog.1.pod index b18de103d..2877a7b32 100644 --- a/xCAT-client/pods/man1/reventlog.1.pod +++ b/xCAT-client/pods/man1/reventlog.1.pod @@ -4,10 +4,15 @@ B - retrieve or clear remote hardware event logs =head1 B -B I {I [B<-s>]|B|B} +B I [I [B<-s>]|B|B] B [B<-h>|B<--help>|B<-v>|B<--version>] +=head2 OpenPOWER OpenBMC specific : + +B I [B{I|B}] + + =head1 B B can display any number of remote hardware event log entries @@ -34,6 +39,10 @@ To sort the entries from latest (always the last entry in event DB) to oldest (a Clear event logs. +=item B{I|B} + +Mark event log entries as resolved. Use comma separated list of entry ids to specify individual entries. Use B to mark as resolved all event log entries that contribute to LED fault. + =item B<-h>|B<--help> Print help. @@ -50,6 +59,7 @@ Print version. =over 2 =item 1. +List last 5 event log entries from node4 and node5 reventlog node4,node5 5 @@ -67,6 +77,7 @@ Output is similar to: node5: SERVPROC I 09/06/00 15:21:29 System spn1 started a RS485 connection with us[00] =item 2. +Clear all event log entries from node4 and node5 reventlog node4,node5 clear @@ -75,6 +86,18 @@ Output is similar to: node4: clear node5: clear +=item 3. +Mark as resolved all event log entries from node4 that contribute to LED fault + + reventlog node4 resolved=LED + +Output is similar to: + + Attempting to resolve the following log entries: LED... + node4: Resolved 51. + node4: Resolved 52. + node4: Resolved 58. + =back =head1 SEE ALSO diff --git a/xCAT-client/pods/man1/rflash.1.pod b/xCAT-client/pods/man1/rflash.1.pod index 447bdc332..f6985b970 100644 --- a/xCAT-client/pods/man1/rflash.1.pod +++ b/xCAT-client/pods/man1/rflash.1.pod @@ -103,19 +103,19 @@ The command will update firmware for OpenPOWER BMC when given an OpenPOWER node B<-l|--list>: - The list option will list out available firmware on the BMC. It provides an interface to display the ID of the various firmware levels. +The list option will list out available firmware on the BMC. It provides an interface to display the ID of the various firmware levels. - The (*) symbol indicates the active running firmware on the server. +The (*) symbol indicates the active running firmware on the server. - The (+) symbol indicates the firmware that is pending and a reboot is required to set it to be the active running firmware level. +The (+) symbol indicates the firmware that is pending and a reboot is required to set it to be the active running firmware level. B<-u|--upload>: - The upload option expects a .tar file as the input and will upload the file to the BMC. Use the list option to view the result. +The upload option expects a .tar file as the input and will upload the file to the BMC. Use the list option to view the result. B<-a|--activate>: - The activate option expects either a .tar file or an ID as the input. If a .tar file is provided, it will upload and activate the firmware in a single step +The activate option expects either a .tar file or an ID as the input. If a .tar file is provided, it will upload and activate the firmware in a single step To apply the firmware level, a reboot is required to BMC and HOST. @@ -123,13 +123,13 @@ B When using B in hierarchical environment, the .tar file must be B<-d>: - This option steamlines the update, activate, reboot BMC and reboot HOST procedure. It expects a directory containing both BMC and PNOR .tar files. When BMC and PNOR tar files are provided, the command will upload and activate firmware. After BMC becomes activate, it will reboot BMC. If BMC state is Ready, the command will reboot the HOST. If BMC state is NotReady, the command will exit. +This option steamlines the update, activate, reboot BMC and reboot HOST procedure. It expects a directory containing both BMC and PNOR .tar files. When BMC and PNOR tar files are provided, the command will upload and activate firmware. After BMC becomes activate, it will reboot BMC. If BMC state is Ready, the command will reboot the HOST. If BMC state is NotReady, the command will exit. B When using B<--no-host-reboot>, it will not reboot the host after BMC is reboot. B<--delete>: - This delete option will delete update image from BMC. It expects an ID as the input. +This delete option will delete update image from BMC. It expects an ID as the input. =head1 B diff --git a/xCAT-client/pods/man1/rspconfig.1.pod b/xCAT-client/pods/man1/rspconfig.1.pod index fbd1fa6f0..9088188f7 100644 --- a/xCAT-client/pods/man1/rspconfig.1.pod +++ b/xCAT-client/pods/man1/rspconfig.1.pod @@ -26,7 +26,7 @@ B I B=I