2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-06-18 12:20:40 +00:00

Re-commit the man8 man pages

This commit is contained in:
Victor Hu
2015-10-23 22:42:31 -04:00
parent 83e101c762
commit a464fb3048
29 changed files with 4285 additions and 0 deletions

View File

@ -0,0 +1,107 @@
#######
chtab.8
#######
.. highlight:: perl
****
NAME
****
\ **chtab**\ - Add, delete or update rows in the database tables.
********
SYNOPSIS
********
\ *chtab [-h| --help]*\
\ *chtab [-v| --version]*\
\ *chtab [keycolname=keyvalue] [tablename.colname=newvalue] *\
\ *chtab [keycolname=keyvalue] [tablename.colname+=newvalue] *\
\ *chtab -d [keycolname=keyvalue] [tablename.colname=newvalue] *\
***********
DESCRIPTION
***********
The chtab command adds, deletes or updates the attribute value in the specified table.column for the specified keyvalue. Normally, the given value will completely replace the current attribute value. But if "+=" is used instead of "=", the specified value will be appended to the coma separated list of the attribute, if it is not already there.
*******
OPTIONS
*******
\ **-h**\ Display usage message.
\ **-v**\ Command Version.
\ **-d**\ Delete option.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1. To add a node=node1 to the nodelist table with groups=all:
\ *chtab node=node1 nodelist.groups=all *\
2. To add a keyword (tftpdir) and value (/tftpboot) to the site table:
\ *chtab key=tftpdir site.value=/tftpboot *\
3. To add node1 to the nodetype table with os=rhel5:
\ *chtab node=node1 nodetype.os=rhel5*\
4. To change node1 in nodetype table setting os=sles:
\ *chtab node=node1 nodetype.os=sles*\
5. To change node1 by appending otherpkgs to the postbootscripts field in the postscripts table:
\ *chtab node=node1 postscripts.postbootscripts+=otherpkgs*\
6. To delete node1 from nodetype table:
\ *chtab -d node=node1 nodetype*\
*****
FILES
*****
/opt/xcat/bin/chtab
********
SEE ALSO
********
tabdump(8)|tabdump.8, tabedit(8)|tabedit.8

View File

@ -0,0 +1,46 @@
###############
copycds-cdrom.8
###############
.. highlight:: perl
********
SYNOPSIS
********
\ **copycds-cdrom**\ \ *[copycds options]*\ \ *[drive]*\
***********
DESCRIPTION
***********
\ **copycds-cdrom**\ is a wrapper scripts for copycds to copy from physical CD/DVD-ROM drives located on the management server.
\ *[copycds options]*\ are passed unmolested to copycds.
If \ *[drive]*\ is not specified, /dev/cdrom is assumed.
The copycds command copies all contents of Distribution CDs or Service Pack CDs to the install directory as
designated in the \ **site**\ table attribute: \ **installdir**\ .
********
SEE ALSO
********
copycds(8)|copycds.8
******
AUTHOR
******
Isaac Freeman <ifreeman@us.ibm.com>

View File

@ -0,0 +1,188 @@
#########
copycds.8
#########
.. highlight:: perl
****
NAME
****
\ **copycds**\ - Copies Linux distributions and service levels from DVDs/ISOs to the xCAT /install directory.
********
SYNOPSIS
********
\ **copycds**\ [{\ **-n|--name|--osver**\ }=\ *distroname*\ ] [{\ **-a|--arch**\ }=\ *architecture*\ ] [{\ **-p|--path**\ }=\ *ospkgpath*\ ] [\ **-o**\ |\ **--noosimage**\ ] [\ **-w**\ |\ **--nonoverwrite**\ ] {\ *iso*\ |\ *device-path*\ } ...
\ **copycds**\ [\ **-i**\ |\ **--inspection**\ ] {\ *iso*\ |\ *device-path*\ }
\ **copycds**\ [\ **-h**\ |\ **--help**\ ]
***********
DESCRIPTION
***********
The \ **copycds**\ command copies all contents of Distribution DVDs/ISOs or Service Pack DVDs/ISOs to a destination directory. The destination directory can be specified by the -p option. If no path is specified, the default destination directory will be formed from the \ **installdir**\ site attribute and the distro name and architecture, for example: /install/rhels6.3/x86_64. The \ **copycds**\ command can copy from one or more ISO files, or the CD/DVD device path.
You can specify -i or --inspection option to check whether the DVDs/ISOs can be recognized by xCAT. If recognized, the distribution name, architecture and the disc no (the disc sequence number of DVDs/ISOs in multi-disk distribution) of the DVD/ISO is displayed. If xCAT doesn't recognize the DVD/ISO, you must manually specify the distro name and architecture using the -n and -a options. This is sometimes the case for distros that have very recently been released, and the xCAT code hasn't been updated for it yet.
You can get xCAT to recognize new DVDs/ISOs by adding them to /opt/xcat/lib/perl/xCAT/data/discinfo.pm and reloading xcatd (service xcatd reload).
*******
OPTIONS
*******
{\ **-n|--name|--osver**\ }=\ *distroname*\
The linux distro name and version that the ISO/DVD contains. Examples: rhels6.3, sles11.2, fedora9. Note the 's' in rhels6.3 which denotes the Server version of RHEL, which is typically used.
{\ **-a|--arch**\ }=\ *architecture*\
The architecture of the linux distro on the ISO/DVD. Examples: x86, x86_64, ppc64, s390x.
{\ **-p|--path**\ }=\ *ospkgpath*\
The destination directory to which the contents of ISO/DVD will be copied. When this option is not specified, the default destination directory will be formed from the \ **installdir**\ site attribute and the distro name and architecture, for example: /install/rhel6.3/x86_64. This option is only supported distributions of sles,redhat and windows.
{\ **-i|--inspection**\ }
Check whether xCAT can recognize the DVDs/ISOs in the argument list, but do not copy the disc. Displays the os distribution name, architecture and disc no of each recognized DVD/ISO. This option only supported for distributions of sles,redhat and windows.
{\ **-o|--noosimage**\ }
Do not create the default osimages based on the osdistro copied in. By default, copycds will create a set of osimages based on the osdistro.
{\ **-w|--nonoverwrite**\ }
Complain and exit if the os disc has already been copied in. By default, copycds will overwrite the os disc already copied in.
************
RETURN VALUE
************
0: The command completed successfully. For the --inspection option, the ISO/DVD have been recognized successfully
Nonzero: An Error has occurred. For the --inspection option, the ISO/DVD cannot be recognized
********
EXAMPLES
********
\*
To copy the RPMs from a set of ISOs that represent the DVDs of a distro:
.. code-block:: perl
copycds dvd1.iso dvd2.iso
\*
To copy the RPMs from a physical DVD to /depot/kits/3 directory:
.. code-block:: perl
copycds -p /depot/kits/3 /dev/dvd
\*
To copy the RPMs from a DVD ISO of a very recently released distro:
.. code-block:: perl
copycds -n rhels6.4 -a x86_64 dvd.iso
\*
To check whether a DVD ISO can be recognized by xCAT and display the recognized disc info:
.. code-block:: perl
copycds -i /media/RHEL/6.2/RHEL6.2-20111117.0-Server-ppc64-DVD1.iso
Output will be similar to:
.. code-block:: perl
OS Image:/media/RHEL/6.2/RHEL6.2-20111117.0-Server-ppc64-DVD1.iso
DISTNAME:rhels6.2
ARCH:ppc64
DISCNO:1
For the attributes that are not recognized, the value will be blank.
\*
To copy the packages from a supplemental DVD ISO file:
.. code-block:: perl
copycds -n /isodir/RHEL6.5/RHEL6.5-Supplementary-20131114.2-Server-ppc64-DVD1.iso -n rhels6.5-supp
Also, remember to add the new directory to your osimage definition:
.. code-block:: perl
chdef -t osimage myosimage -p pkgdir=/install/rhels6.5-supp/ppc64
********
SEE ALSO
********
nodeset(8)|nodeset.8, site(5)|site.5, nodetype(5)|nodetype.5

View File

@ -0,0 +1,160 @@
#################
makeconservercf.8
#################
.. highlight:: perl
****
NAME
****
\ **makeconservercf**\ - creates the conserver configuration file from info in the xCAT database
********
SYNOPSIS
********
\ **makeconservercf**\ [\ **-V|--verbose**\ ] [\ **-d|--delete**\ ] \ *noderange*\
\ **makeconservercf**\ [\ **-V|--verbose**\ ] [\ **-l|--local**\ ] [\ *noderange*\ ]
\ **makeconservercf**\ [\ **-V|--verbose**\ ] [\ **-c|--conserver**\ ] [\ *noderange*\ ]
\ **makeconservercf**\ [\ **-V|--verbose**\ ] \ *noderange*\ [\ **-t|--trust**\ ] \ *hosts*\
\ **makeconservercf**\ [\ **-h|--help|-v|--version**\ ]
***********
DESCRIPTION
***********
The \ **makeconservercf**\ command will write out the /etc/conserver.cf, using information from the nodehm table
and related tables (e.g. mp, ipmi, ppc). Normally, \ **makeconservercf**\ will write all nodes to the conserver.cf
file. If a noderange is specified, it will write on those nodes to the file. In either case, if a node
does not have nodehm.cons set, it will not be written to the file.
In the case of a hierarchical cluster (i.e. one with service nodes) \ **makeconservercf**\ will determine
which nodes will have their consoles accessed from the management node and which from a service node
(based on the nodehm.conserver attribute). The /etc/conserver.cf file will be created accordingly on
all relevant management/service nodes. If -l is specified, it will only create the local file.
*******
OPTIONS
*******
\ **-d|--delete**\
Delete rather than add or refresh the nodes specified as a noderange.
\ **-c|--conserver**\
Only set up the conserver on the conserver host. If no conserver host
is set for nodes, the conserver gets set up only on the management node.
\ **-l|--local**\
Only run \ **makeconservercf**\ locally and create the local /etc/conserver.cf. The default is to also
run it on all service nodes, if there are any.
\ **-t|--trust**\ \ *hosts*\
Add additional trusted hosts into /etc/conserver.cf. The \ *hosts*\ are comma separated list of
ip addresses or host names.
\ **-v|--version**\
Display version.
\ **-V|--verbose**\
Verbose mode.
\ **-h|--help**\
Display usage message.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1.
To create conserver configuration for all the nodes.
.. code-block:: perl
makeconservercf
2.
To create conserver configuration for nodes node01-node10.
.. code-block:: perl
makeconservercf node01-node10
3.
To remove conserver configuration for node01.
.. code-block:: perl
makeconservercf -d node01
********
SEE ALSO
********
rcons(1)|rcons.1

View File

@ -0,0 +1,234 @@
##########
makedhcp.8
##########
.. highlight:: perl
****
NAME
****
\ **makedhcp**\ - Creates and updates DHCP configuration files.
********
SYNOPSIS
********
\ **makedhcp**\ \ **-n**\ [\ **-l**\ |\ **--localonly**\ ]
\ **makedhcp**\ \ **-a**\ [\ **-l**\ |\ **--localonly**\ ]
\ **makedhcp**\ \ **-a -d**\ [\ **-l**\ |\ **--localonly**\ ]
\ **makedhcp**\ \ **-d**\ \ *noderange*\ [\ **-l**\ |\ **--localonly**\ ]
\ **makedhcp**\ \ *noderange*\ [\ **-s**\ \ *statements*\ ] [\ **-l**\ |\ **--localonly**\ ]
\ **makedhcp**\ \ **-q**\ \ *noderange*\
\ **makedhcp**\ [\ *-h|--help*\ ]
***********
DESCRIPTION
***********
The \ **makedhcp**\ command creates and updates the DHCP configuration on the management node and service nodes.
The \ **makedhcp**\ command is supported for both Linux and AIX clusters.
1.
Start by filling out the networks(5)|networks.5 table properly.
2.
Then use the \ **makedhcp -n**\ option to create a new dhcp configuration file.
You can set the site table, dhcplease attribute to the lease time for the dhcp client. The default value is 43200.
3.
Next, get the node IP addresses and MACs defined in the xCAT database.
Also, get the hostnames and IP addresses pushed to /etc/hosts (using makehosts(8)|makehosts.8) and to DNS (using makedns(8)|makedns.8).
4.
Then run \ **makedhcp**\ with a noderange or the \ **-a**\ option. This will inject into dhcpd configuration data pertinent to the specified nodes.
On linux, the configuration information immediately takes effect without a restart of DHCP.
If you need to delete node entries from the DHCP configuration, use the \ **-d**\ flag.
*******
OPTIONS
*******
\ **-n**\
Create a new dhcp configuration file with a network statement for each network the dhcp daemon should listen on.
(Which networks dhcpd should listen on can be controlled by the dhcpinterfaces attribute in the site(5)|site.5 table.)
The \ **makedhcp**\ command will automatically restart the dhcp daemon after this operation.
This option will replace any existing configuration file (making a backup of it first).
For Linux systems the file will include network entries as well as certain general parameters such as a dynamic range and omapi configuration.
For AIX systems the file will include network entries.
On AIX systems, if there are any non-xCAT entries in the existing configuration file they will be preserved and added to the end of the new configuration file.
\ **-a**\
Define all nodes to the DHCP server. (Will only add nodes that can be reached, network-wise, by this DHCP server.)
The dhcp daemon does not have to be restarted after this.
On AIX systems \ **makedhcp**\ will not add entries for cluster nodes that will be installed using NIM. The entries for these nodes will be managed by NIM.
\ *noderange*\
Add the specified nodes to the DHCP server configuration.
\ **-s**\ \ *statements*\
For the input noderange, the argument will be interpreted like dhcp configuration file text.
\ **-d**\ \ *noderange*\
Delete node entries from the DHCP server configuration. On AIX, any entries created by NIM will not be removed.
\ **-a -d**\
Delete all node entries, that were added by xCAT, from the DHCP server configuration.
\ **-l**\ |\ **--localonly**\
Configure dhcpd on the local machine only. Without this option, makedhcp will also send this
operation to any service nodes that service the nodes in the noderange.
\ **-q**\ \ *noderange*\
Query the node entries from the DHCP server configuration. On AIX, any entries created by NIM will not be listed.
\ **-h|--help**\
Display usage message.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1.
Create a new DHCP configuration file and add the network definitions:
.. code-block:: perl
makedhcp -n
2.
Define all nodes to the dhcp server:
.. code-block:: perl
makedhcp -a
Note: This does not add nodes that will be installed with AIX/NIM.
3.
Will cause dhcp on the next request to set root-path appropriately for only node5. Note some characters (e.g. ") must be doubly escaped (once for the shell, and once for the OMAPI layer).
.. code-block:: perl
makedhcp node5 -s 'option root-path \"172.16.0.1:/install/freebsd6.2/x86_64\";'
4.
Query a node from the DHCP server.
.. code-block:: perl
# makedhcp -q node01
node01: ip-address = 91.214.34.156, hardware-address = 00:00:c9:c6:6c:42
*****
FILES
*****
DHCP configuration files:
[AIX] /etc/dhcpsd.cnf
[SLES] /etc/dhcpd.conf
[RH] /etc/dhcp/dhcpd.conf
********
SEE ALSO
********
noderange(3)|noderange.3

View File

@ -0,0 +1,140 @@
#########
makedns.8
#########
.. highlight:: perl
****
NAME
****
\ **makedns**\ - sets up domain name services (DNS).
********
SYNOPSIS
********
\ **makedns**\ [\ *-h*\ |\ *--help*\ ]
\ **makedns**\ [-V|--verbose] [-e|--external] [\ *-n*\ |\ *--new*\ ] [\ *noderange*\ ]
\ **makedns**\ [-V|--verbose] [-e|--external] [\ *-d*\ |\ *--delete*\ \ *noderange*\ ]
***********
DESCRIPTION
***********
\ **makedns**\ configures a DNS server on the system you run it on, which is typically the xCAT management node.
The list of nodes to include comes from either the \ **noderange**\ provided on the command line or the entries in the local /etc/hosts files.
There are several bits of information that must be included in the xCAT database before running this command.
You must set the \ **forwarders**\ attributes in the xCAT \ **site**\ definition.
The \ **forwarders**\ value should be set to the IP address of one or more nameservers at your site that can resolve names outside of your cluster. With this set up, all nodes ask the local nameserver to resolve names, and if it is a name that the MN DNS does not know about, it will try the forwarder names.
An xCAT \ **network**\ definition must be defined for each network used in the cluster. The \ **net**\ and \ **mask**\ attributes will be used by the \ **makedns**\ command.
A network \ **domain**\ and \ **nameservers**\ values must be provided either in the \ **network**\ definiton corresponding to the node or in the \ **site**\ definition.
Only entries in /etc/hosts or the hosts specified by \ **noderange**\ that have a corresponding xCAT network definition will be added to DNS.
By default, \ **makedns**\ sets up the \ **named**\ service and updates the DNS records on the local system (management node). If the -e flag is specified, it will also update the DNS records on any external DNS server that is listed in the /etc/resolv.conf on the management node. (Assuming the external DNS server can recognize the xCAT key as authentication.)
For more information on Cluster Name Resolution:
Cluster_Name_Resolution
*******
OPTIONS
*******
\ **-V**\ |\ **--verbose**\
Verbose mode.
\ **-n**\ |\ **--new**\
Use this flag to create new named configuration and db files.
\ **-d**\ |\ **--delete**\
Remove the DNS records.
\ **-e**\ |\ **--external**\
Update DNS records to the external DNS server listed in /etc/resolv.conf.
Enabling the site attribute \ *externaldns*\ means use 'external' DNS by default. If setting \ *externaldns*\ to 1, you need NOT use \ **-e**\ flag in every makedns call.
\ **noderange**\
A set of comma delimited node names and/or group names. See the "noderange" man page for details on additional supported formats.
********
Examples
********
1
To set up DNS for all the hosts in /etc/hosts file.
\ **makedns**\
2
To set up DNS for \ *node1*\ .
\ **makedns**\ \ *node1*\
3
To create a new named configuration and db files for all hosts in /etc/hosts.
\ **makedns**\ \ **-n**\
4
To delete the DNS records for \ *node1*\ .
\ **makedns**\ \ **-d**\ \ *node1*\
********
SEE ALSO
********
makehosts(8)|makehosts.8

View File

@ -0,0 +1,120 @@
###########
makehosts.8
###########
.. highlight:: perl
****
NAME
****
\ **makehosts**\ - sets up /etc/hosts from the xCAT hosts table.
********
SYNOPSIS
********
\ **makehosts**\ [\ **-n**\ ] [\ *noderange*\ ] [\ **-l**\ |\ **--longnamefirst**\ ] [\ **-d**\ ] [\ **-m**\ |\ **--mactolinklocal**\ ]
\ **makehosts**\ {\ **-h**\ |\ **--help**\ }
***********
DESCRIPTION
***********
\ **makehosts**\ updates the /etc/hosts file based on information stored in the
xCAT database object definitions.
The main three bits of information needed are: node hostname, node ip and network domain name.
The hostname and ip address are specified as part of the node definition.
The domain value is taken either from the xCAT network definition associated with the node or from the cluster site definition. If you are using multiple domains in the cluster you should add the domain names to the appropriate xCAT network definition.
Note: If your node hostnames and IP addresses follow a regular pattern, you can use just a few regular expressions to generate /etc/hosts using makehosts. For details on using regular expressions see the "xcatdb" man page.
If you specify additional network interfaces in your xCAT node definitions they will also be added to the /etc/hosts file. You can specify additional network interface information (NICs) using the following node attributes: nicips, nichostnamesuffixes, nictypes, niccustomscripts, nicnetworks. You can get a description of these attributes by running "lsdef -t node -h | more" or "man nics".
*******
OPTIONS
*******
\ **-n**\
Completely replace the /etc/hosts file, losing any previous content. If this option is not specified,
it will only replace the lines in the file that correspond to the nodes in the specified noderange.
\ **-l**\ |\ **--longnamefirst**\
The long name of the host will appear before the short name for each host in the /etc/hosts file.
The default is short name first.
\ **-m**\ |\ **--mactolinklocal**\
Updates /etc/hosts file with IPv6 link local addresses, the link local address is generated
from the mac address stored in mac table.
\ **-d**\
Delete rather than create records. This will also delete any additional network interfaces (NICs) included in the node definitions.
********
EXAMPLES
********
\*
Add entries to /etc/hosts for all nodes included in the xCAT node group called "compute".
.. code-block:: perl
makehosts compute
\*
If the xCAT hosts table contains:
.. code-block:: perl
"compute","|node(\d+)|1.2.3.($1+0)|","|(.*)|($1).cluster.net|",,
Assuming the group "compute" contains node01, node02, etc., then in /etc/hosts they will be given
IP addresses of 1.2.3.1, 1.2.3.2, etc.
********
SEE ALSO
********
hosts(5)|hosts.5, makedns(8)|makedns.8

View File

@ -0,0 +1,92 @@
################
makeknownhosts.8
################
.. highlight:: perl
****
NAME
****
\ **makeknownhosts**\ - Make a known_hosts file under $ROOTHOME/.ssh for input noderange.
********
SYNOPSIS
********
\ **makeknownhosts**\ \ *noderange*\ [\ **-r**\ |\ **--remove**\ ] [\ **-V**\ |\ **--verbose**\ ]
\ **makeknownhosts**\ {\ **-h**\ |\ **--help**\ }
***********
DESCRIPTION
***********
\ **makeknownhosts**\ Replaces or removes in the known_hosts file in the $ROOTHOME/.ssh directory, the enties for the nodes from the noderange input to the command.
The known_hosts file entry is built from the shared ssh host key that xCAT distributes to the installed nodes.
HMCs, AMM, switches, etc., where xCAT does not distribute the shared ssh host key, should not be put in the noderange.
To build the known_hosts entry for a node, you are only required to have the node in the database, and name resolution working for the node. You do not have to be able to access the node.
Having this file with correct entries, will avoid the ssh warning when nodes are automatically added to the known_hosts file.
The file should be distributed using xdcp to all the nodes, if you want node to node communication not to display the warning.
*******
OPTIONS
*******
\ *noderange*\
A set of comma delimited node names and/or group names.
See the "noderange" man page for details on supported formats.
\ **-r|--remove**\
Only removes the entries for the nodes from the known_hosts file.
\ **-V|--verbose**\
Verbose mode.
********
EXAMPLES
********
\*
makeknownhosts compute
\*
makeknownhosts lpars,service
\*
makeknownhosts node02 -r

View File

@ -0,0 +1,139 @@
##############
makenetworks.8
##############
.. highlight:: perl
****
NAME
****
\ **makenetworks**\ - Gather cluster network information and add it to the xCAT database.
********
SYNOPSIS
********
\ *makenetworks [-h|--help ]*\
\ *makenetworks [-v| --version]*\
\ *makenetworks [-V|--verbose] [-d|--display]*\
***********
DESCRIPTION
***********
The \ **makenetworks**\ command can be used to gather network information from an xCAT cluster environment and create corresponding network definitions in the xCAT database.
Every network that will be used to install a cluster node must be defined in the xCAT database.
The default behavior is to gather network information from the managment node, and any configured xCAT service nodes, and automatically save this information in the xCAT database.
You can use the "-d" option to display the network information without writing it to the database.
You can also redirect the output to a file that can be used with the xCAT \ **mkdef**\ command to define the networks.
For example:
.. code-block:: perl
makenetworks -d > mynetstanzas
cat mynetstanzas | mkdef -z
This features allows you to verify and modify the network information before writing it to the database.
When the network information is gathered a default value is created for the "netname" attribute. This is done to make it possible to use the mkdef, chdef, lsdef, and rmdef commands to manage this data.
The default naming convention is to use a hyphen separated "net" and "mask" value with the "." replace by "_". (ex. "8_124_47_64-255_255_255_0")
You can also modify the xCAT "networks" database table directly using the xCAT \ **tabedit**\ command.
.. code-block:: perl
tabedit networks
Note: The \ **makenetworks**\ command is run automatically when xCAT is installed on a Linux management node.
*******
OPTIONS
*******
\ **-d|--display**\ Display the network definitions but do not write to the definitions to the xCAT database. The output will be in stanza file format and can be redirected to a stanza file that can be used with \ **mkdef**\ or \ **chdef**\ commands to create or modify the network definitions.
\ **-h | --help**\ Display usage message.
\ **-v | --version**\ Command Version.
\ **-V |--verbose**\ Verbose mode.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1. Gather cluster network information and create xCAT network definitions.
.. code-block:: perl
makenetworks
2. Display cluster network information but do not write the network definitions to the xCAT database.
.. code-block:: perl
makenetworks -d
The output would be one or more stanzas of information similar to the following. The line that ends with a colon is the value of the "netname" attribute and is the name of the network object to use with the lsdef, mkdef, chdef and rmdef commands.
9_114_37_0-255_255_255_0:
objtype=network
gateway=9.114.37.254
mask=255.255.255.0
net=9.114.37.0
*****
FILES
*****
/opt/xcat/sbin/makenetworks
********
SEE ALSO
********
makedhcp(8)|makedhcp.8

View File

@ -0,0 +1,149 @@
############
makeroutes.8
############
.. highlight:: perl
****
NAME
****
\ **makeroutes**\ - add or delete routes to/from the os route table on nodes.
********
SYNOPSIS
********
\ **makeroutes**\ [\ **-r**\ |\ **--routename**\ \ *r1*\ [\ *,r2...*\ ]]
\ **makeroutes**\ \ **-d**\ |\ **--delete**\ [\ **-r**\ |\ **--routenames**\ \ *r1*\ [\ *,r2...*\ ]]
\ **makeroutes**\ \ *noderange*\ [\ **-r**\ |\ **--routename**\ \ *r1*\ [\ *,r2...*\ ]]
\ **makeroutes**\ \ *noderange*\ \ **-d**\ |\ **--delete**\ [\ **-r**\ |\ **--routenames**\ \ *r1*\ [\ *,r2...*\ ]]
\ **makeroutes**\ [\ **-h**\ \ **--help**\ |\ **-v**\ |\ **--version**\ ]
***********
DESCRIPTION
***********
The \ **makeroutes**\ command adds or deletes routes on the management node or any given nodes. The \ **noderange**\ specifies the nodes where the routes are to be added or removed. When the \ *noderange*\ is omitted, the action will be done on the management node. The \ **-r**\ option specifies the name of routes. The details of the routes are defined in the \ **routes**\ table which contians the route name, subnet, net mask and gateway. If -r option is omitted, the names of the routes found on \ **noderes.routenames**\ for the nodes or on \ **site.mnroutenames**\ for the management node will be used.
If you want the routes be automatically setup during node deployment, first put a list of route names to \ **noderes.routenames**\ and then add \ *setroute*\ script name to the \ **postscripts.postbootscripts**\ for the nodes.
**********
Parameters
**********
\ *noderange*\ specifies the nodes where the routes are to be added or removed. If omitted, the operation will be done on the management node.
*******
OPTIONS
*******
\ **-d|--delete**\
Specifies to delete the given routes. If not specified, the action is to add routes.
\ **-r|--routename**\
Specifies a list of comma separated route names defined in the \ **routes**\ table. If omitted, all routes defined in \ **noderes.routenames**\ for nodes or \ **site.mnroutenames**\ for the management node will be used.
\ **-h|--help**\
Display usage message.
\ **-v|--version**\
Command Version.
********
EXAMPLES
********
1.
To add all routes from the \ **site.mnroutenames**\ to the os route table for the management node.
.. code-block:: perl
makeroutes
2.
To add all the routes from \ **noderes.routenames**\ to the os route table for node1.
.. code-block:: perl
makeroutes node1
3.
To add route rr1 and rr2 to the os route table for the management node.
.. code-block:: perl
makeroutes -r rr1,rr2
4.
To delete route rr1 and rr2 from the os route table on node1 and node1.
.. code-block:: perl
makeroutes node1,node2 -d -r rr1,rr2
*****
FILES
*****
/opt/xcat/sbin/makeroutes
********
SEE ALSO
********

View File

@ -0,0 +1,69 @@
######
mknb.8
######
.. highlight:: perl
****
NAME
****
\ **mknb**\ - creates a network boot root image for node discovery and flashing
********
SYNOPSIS
********
\ **mknb**\ \ *arch*\
***********
DESCRIPTION
***********
The \ **mknb**\ command is run by xCAT automatically, when xCAT is installed on the management node.
It creates a network boot root image (used for node discovery, BMC programming, and flashing)
for the same architecture that the management node is. So you normally do not need to run the \ **mknb**\
command yourself.
If you do run \ **mknb**\ to add custom utilities to your boot root image, and you have an xCAT Hierarchical Cluster with service nodes that each have a local /tftpboot directory (site sharedtftp=0), you will also need to copy the generated root image to each service node.
Presently, only the arch x86_64 is supported.
*******
OPTIONS
*******
\ *arch*\
The hardware architecture for which to build the boot image: x86_64
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
SEE ALSO
********
makedhcp(8)|makedhcp.8

View File

@ -0,0 +1,119 @@
#########
nodeadd.8
#########
.. highlight:: perl
****
NAME
****
\ **nodeadd**\ - Adds nodes to the xCAT cluster database.
********
SYNOPSIS
********
\ **nodeadd**\ \ *noderange*\ \ **groups**\ =\ *groupnames*\ [\ *table.column=value*\ ] [\ *...*\ ]
\ **nodeadd**\ {\ **-v**\ | \ **--version**\ }
\ **nodeadd**\ [\ **-?**\ | \ **-h**\ | \ **--help**\ ]
***********
DESCRIPTION
***********
The nodeadd command adds the nodes specified in noderange to the xCAT database. It also stores
the any additional attributes specified for these nodes. At least one groupname must be supplied.
You should also consider specifying attributes in at least the following tables: \ **nodehm**\ , \ **noderes**\ ,
\ **nodetype**\ . See the man page for each of these for details. Also see the \ **xcatdb**\ man page for an
overview of each table.
The nodeadd command also supports some short cut names as aliases to common attributes. See the
\ **nodels**\ man page for details.
*******
OPTIONS
*******
\ **-v|--version**\
Command Version.
\ **-?|-h|--help**\
Display usage message.
************
RETURN VALUE
************
0
The command completed successfully.
1
An error has occurred.
********
EXAMPLES
********
\*
To add nodes in noderange node1-node4 with group all:
\ **nodeadd**\ \ *node1-node4 groups=all*\
\*
To add nodes in noderange node1-node4 to the nodetype table with os=rhel5:
\ **nodeadd**\ \ *node1-node4 groups=all,rhel5 nodetype.os=rhel5*\
*****
FILES
*****
/opt/xcat/bin/nodeadd
********
SEE ALSO
********
nodels(1)|nodels.1, nodech(1)|nodech.1, noderange(3)|noderange.3

View File

@ -0,0 +1,190 @@
#########
nodeset.8
#########
.. highlight:: perl
****
Name
****
\ **nodeset**\ - set the boot state for a noderange
****************
\ **Synopsis**\
****************
\ **nodeset**\ [\ *noderange*\ ] [\ *boot*\ |\ *stat*\ |\ *iscsiboot*\ |\ *offline*\ |\ *runcmd=bmcsetup*\ |\ *osimage[=<imagename*\ >]|\ *shell*\ |\ *shutdown*\ ]
\ **nodeset**\ \ *noderange*\ \ *osimage=<imagename*\ > [\ *--noupdateinitrd*\ ] [\ *--ignorekernelchk*\ ]
\ **nodeset**\ [\ *-h*\ |\ *--help*\ |\ *-v*\ |\ *--version*\ ]
*******************
\ **Description**\
*******************
\ **nodeset**\ sets the next boot state for a single or range of
nodes or groups. It tells xCAT what you want to happen the next time the
nodes are booted up. See noderange(3)|noderange.3. \ **nodeset**\ accomplishes this by
changing the network boot files. Each xCAT node always boots from the
network and downloads a boot file with instructions on what action to
take next.
\ **nodeset**\ will manipulate the boot configuration files of yaboot and pxelinux.0.
Assume that /tftpboot is the root for tftpd (set in site(5)|site.5).
\ **nodeset**\ for pxe makes changes to /tftpboot/pxelinux.cfg/{node hex ip}
\ **nodeset**\ for yaboot makes changes to /tftpboot/etc/{node hex ip}
\ **nodeset**\ only sets the next boot state, but does not reboot.
\ **nodeset**\ is called by rinstall and winstall and is also called by the
installation process remotely to set the boot state back to "boot".
A user can supply their own scripts to be run on the mn or on the service node (if a hierarchical cluster) for a node when the nodeset command is run. Such scripts are called \ **prescripts**\ . They should be copied to /install/prescripts dirctory. A table called \ *prescripts*\ is used to specify the scripts and their associated actions. The scripts to be run at the beginning of the nodeset command are stored in the 'begin' column of \ *prescripts*\ table. The scripts to be run at the end of the nodeset command are stored in the 'end' column of \ *prescripts*\ table. You can run 'tabdump prescripts -d' command for details. The following two environment variables will be passed to each script: NODES contains all the names of the nodes that need to run the script for and ACTION contains the current nodeset action. If \ *#xCAT setting:MAX_INSTANCE=number*\ is specified in the script, the script will get invoked for each node in parallel, but no more than \ *number*\ of instances will be invoked at at a time. If it is not specified, the script will be invoked once for all the nodes.
***************
\ **Options**\
***************
\ **boot**\
Instruct network boot loader to be skipped, generally meaning boot to hard disk
\ **offline**\
Cleanup the current pxe/tftp boot configuration files for the nodes requested
\ **osimage**\ |\ **osimage=<imagename**\ >
Prepare server for installing a node using the specified os image. The os image is defined in the \ *osimage*\ table and \ *linuximage*\ table. If the <imagename> is omitted, the os image name will be obtained from \ *nodetype.provmethod*\ for the node.
\ **--noupdateinitrd**\
Skip the rebuilding of initrd when the 'netdrivers', 'drvierupdatesrc' or 'osupdatename' were set for injecting new drviers to initrd. But, the geninitrd command
should be run to rebuild the initrd for new drivers injecting. This is used to improve the performance of nodeset command.
\ **--ignorekernelchk**\
Skip the kernel version checking when injecting drivers from osimage.driverupdatesrc. That means all drivers from osimage.driverupdatesrc will be injected to initrd for the specific target kernel.
\ **runimage**\ =<task>>
If you would like to run a task after deployment, you can define that task with this attribute.
\ **stat**\
Display the current boot loader config file description for the nodes requested
\ **runcmd=bmcsetup**\
This instructs the node to boot to the xCAT nbfs environment and proceed to configure BMC
for basic remote access. This causes the IP, netmask, gateway, username, and password to be programmed according to the configuration table.
\ **shell**\
This instructs tho node to boot to the xCAT genesis environment, and present a shell prompt on console.
The node will also be able to be sshed into and have utilities such as wget, tftp, scp, nfs, and cifs. It will have storage drivers available for many common systems.
\ **shutdown**\
To make the node to get into power off status. This status only can be used after \ **runcmd**\ and \ **runimage**\ to power off the node after the performing of operations.
\ **-h**\ |\ **--help**\
Print help.
\ **-v**\ |\ **--version**\
Print version.
*************
\ **Files**\
*************
\ **noderes**\ table -
xCAT node resources file. See noderes(5)|noderes.5 for further
details.
\ **nodetype**\ table -
xCAT node installation type file. See nodetype(5)|nodetype.5 for fur-
ther details. This is used to determine the node installation
image type.
\ **site**\ table -
xCAT main configuration file. See site(5)|site.5 for further
details. This is used to determine the location of the TFTP
root directory and the TFTP xCAT subdirectory. /tftpboot and
/tftpboot/xcat is the default.
****************
\ **Examples**\
****************
\*
To setup to install mycomputeimage on the compute node group.
nodeset compute osimage=mycomputeimage
\*
To run http://$master/image.tgz after deployment:
nodeset $node runimage=http://$MASTER/image.tgznodeset
************************
\ **See**\ \ **Also**\
************************
noderange(3)|noderange.3, nodels(1)|nodels.1, nodestat(1)|nodestat.1, rinstall(8)|rinstall.8,
makedhcp(8)|makedhcp.8, osimage(7)|osimage.7

View File

@ -0,0 +1,87 @@
###############
rescanplugins.8
###############
.. highlight:: perl
****
NAME
****
\ **rescanplugins**\ - Notifies xcatd to rescan the plugin directory
********
SYNOPSIS
********
\ **rescanplugins**\
\ **rescanplugins**\ {\ **-h**\ |\ **--help**\ }
\ **rescanplugins**\ {\ **-v**\ |\ **--version**\ }
\ **rescanplugins**\ [\ **-s**\ |\ **--servicenodes**\ ]
***********
DESCRIPTION
***********
\ **rescanplugins**\ notifies the xcatd daemon to rescan the plugin directory and update its internal command handlers hash. This command should be used when plugins have been added or removed from the xCAT plugin directory (/opt/xcat/lib/perl/xCAT_plugin) or if the contents of the handled_commands subroutine in an existing plugin has changed.
If rescanplugins is called as a subrequest from another command, the xcatd command handlers hash changes will not be available to that command's process. Only subsequent command calls will see the updates.
*******
OPTIONS
*******
\ **-h|--help**\
Displays the usage message.
\ **-v|--version**\
Displays the release version of the code.
\ **-s|--servicenodes**\
Process the rescanplugins on the management node and on all service nodes. The rescanplugins command will be sent to the xcatd daemon on all nodes defined in the servicenode table. The default is to only run on the management node.
********
EXAMPLES
********
\*
To rescan the plugins only on the xCAT Management Node:
\ **rescanplugins**\
\*
To rescan the plugins on the xCAT Management Node and on all service nodes:
\ **rescanplugins -s**\

View File

@ -0,0 +1,92 @@
##########
rinstall.8
##########
.. highlight:: perl
****
Name
****
\ **rinstall**\ - Begin OS provision on a noderange
****************
\ **Synopsis**\
****************
\ **rinstall**\ [\ *-O*\ |\ *--osimage*\ ] [\ *-c*\ |\ *--console*\ ] [\ *noderange*\ ]
*******************
\ **Description**\
*******************
\ **rinstall**\ is a convenience command that will change tables as requested for operating system version, profile, and architecture, call \ **nodeset**\ to modify the network boot configuration, call \ **rsetboot**\ net to set the next boot over network (only support nodes with "nodetype.mgt=ipmi", for other nodes, make sure the correct boot order has been set before \ **rinstall**\ ), and \ **rpower**\ to begin a boot cycle.
If [\ *-O*\ |\ *--osimage*\ ] is specified or nodetype.provmethod=\ *osimage*\ is set, provision the noderange with the osimage specified/configured, ignore the table change options if specified.
If -c is specified, it will then run rcons on the node. This is allowed only if one node in the noderange. If need consoles on multiple nodes , see winstall(8)|winstall.8.
***************
\ **Options**\
***************
\ **-h**\ |\ **--help**\
Display usage message.
\ **-v**\ |\ **--version**\
Display version.
\ **-O**\ |\ **--osimage**\
Specifies the osimage to provision.
\ **-c**\ |\ **--console**\
Requests that rinstall runs rcons once the provision starts. This will only work if there is only one node in the noderange. See winstall(8)|winstall.8 for starting nsoles on multiple nodes.
****************
\ **Examples**\
****************
\ **rinstall**\ \ *node1-node20*\
Provison nodes 1 through 20, using their current configuration.
\ **rinstall**\ \ *node1-node20*\ -O rhels6.4-ppc64-netboot-compute
Provision nodes 1 through 20 with the osimage rhels6.4-ppc64-netboot-compute.
\ **rinstall**\ \ *node1*\ -c
Provisoon node1 and start a console to monitor the process.
************************
\ **See**\ \ **Also**\
************************
noderange(3)|noderange.3, winstall(8)|winstall.8, rcons(1)|rcons.1

View File

@ -0,0 +1,101 @@
############
rmosdistro.8
############
.. highlight:: perl
********
SYNOPSIS
********
\ **rmosdistro**\ [\ **-a**\ |\ **--all**\ ] [\ **-f|--force**\ ] \ **osdistroname**\ [\ **osdistroname2 ...**\ ]
\ **rmosdistro**\ [\ **-h**\ |\ **--help**\ ]
***********
DESCRIPTION
***********
The \ **rmosdistro**\ command removes the specified OS Distro that was created by \ **copycds**\ . To delete all OS Distro entries, please specify \ **[-a|--all]**\ . If the specified OS Distro is referenced by some osimage, \ **[-f|force]**\ can be used to remove it.
*********
ARGUMENTS
*********
The OS Distro names to delete, delimited by blank space.
*******
OPTIONS
*******
{\ **-a|--all**\ }
If specified, try to delete all the OS Distros.
{\ **-f|--force**\ }
Remove referenced OS Distros, never prompt.
{\ **-h|--help**\ }
Show info of rmosdistro usage.
************
RETURN VALUE
************
Zero:
The command completed successfully.
Nonzero:
An Error has occurred.
********
EXAMPLES
********
\*
To remove OS Distro "rhels6.2-ppc64" and "sles11.2-ppc64":
\ **rmosdistro rhels6.2-ppc64 sles11.2-ppc64**\
\*
To remove OS Distro "rhels6.2-ppc64", regardless of whether is referenced by any osimage:
\ **rmosdistro -f rhels6.2-ppc64**\
\*
To remove all OS Distros:
\ **rmosdistro -a**\

View File

@ -0,0 +1,142 @@
###########
runsqlcmd.8
###########
.. highlight:: perl
****
NAME
****
\ **runsqlcmd**\ -Runs sql command files against the current xCAT database.
********
SYNOPSIS
********
\ **runsqlcmd**\
\ **runsqlcmd**\ {\ **-h**\ |\ **--help**\ }
\ **runsqlcmd**\ {\ **-v**\ |\ **--version**\ }
\ **runsqlcmd**\ {\ **-d**\ |\ **--dir**\ \ *directory_path*\ } {\ **-V**\ |\ **--verbose**\ }
\ **runsqlcmd**\ {\ **-f**\ |\ **--files**\ \ *list of files*\ } {\ **-V**\ |\ **--verbose**\ }
\ **runsqlcmd**\ {\ **-V**\ |\ **--verbose**\ } {\ **sql statement**\ }
***********
DESCRIPTION
***********
The runsqlcmd routine, runs the sql statements contained in the \*.sql files as input to the command against the current running xCAT database. Only DB2,MySQL and PostgreSQL databases are supported. SQLite is not supported.
If no directory or filelist is provided, the default /opt/xcat/lib/perl/xCAT_schema directory is used.
If the directory is input with the -d flag, that directory will be used.
If a comma separated list of files is input with the -f flag, those files will be used.
*******
OPTIONS
*******
\ **-h|--help**\
Displays the usage message.
\ **-v|--version**\
Displays current code version.
\ **-V|--verbose**\
Displays extra debug information.
\ **-d|--dir**\
To use a directory other than the default directory, enter the directory path here.
\ **-f|--files**\
Comma separated list of files (full path), wildcard (\*) can be used.
\ **File format**\
The files must be of the form <name>.sql or <name>_<database>.sql where
<database> is mysql,pgsql, or db2. Files must have permission 0755.
\ **sql statement**\
Quoted sql statement syntax appropriate for the current database.
********
EXAMPLES
********
\*
To run the database appropriate \*.sql files in /opt/xcat/lib/perl/xCAT_schema :
\ **runsqlcmd**\
\*
To run the database appropriate \*.sql files in /tmp/mysql:
\ **runsqlcmd**\ \ *-d*\ \ */tmp/mysql*\
\*
To run the database appropriate \*.sql files in the input list:
\ **runsqlcmd**\ \ *-f*\ \ *"/tmp/mysql/test\\*,/tmp/mysql/test1\\*"*\
\*
To checkout one DB2 sql file:
\ **runsqlcmd**\ \ *-f*\ \ */tmp/db2/test_db2.sql*\
\*
To run the following command to the database:
\ **runsqlcmd**\ \ *"Select \\* from site;"*\

View File

@ -0,0 +1,78 @@
###############
setupiscsidev.8
###############
.. highlight:: perl
****
NAME
****
\ **setupiscsidev**\ - creates a LUN for a node to boot up with, using iSCSI
********
SYNOPSIS
********
\ **setupiscsidev**\ [\ **-s|--size**\ ] \ *noderange*\
\ **setupiscsidev**\ [\ **-h|--help|-v|--version**\ ]
***********
DESCRIPTION
***********
The \ **setupiscsidev**\ command will create a LUN on the management node (or service node) for each node
specified. The LUN device can then be used by the node as an iSCSI device so the node can boot diskless,
stateful.
*******
OPTIONS
*******
\ **-s|--size**\
The size of the LUN that should be created. Default is 4096.
\ **-v|--version**\
Display version.
\ **-h|--help**\
Display usage message.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
SEE ALSO
********
nodeset(8)|nodeset.8

View File

@ -0,0 +1,107 @@
#######
tabch.8
#######
.. highlight:: perl
****
NAME
****
\ **tabch**\ - Add, delete or update rows in the database tables.
********
SYNOPSIS
********
\ *tabch [-h| --help]*\
\ *tabch [-v| --version]*\
\ *tabch [keycolname=keyvalue] [tablename.colname=newvalue] *\
\ *tabch [keycolname=keyvalue] [tablename.colname+=newvalue] *\
\ *tabch -d [keycolname=keyvalue] [tablename.colname=newvalue] *\
***********
DESCRIPTION
***********
The tabch command adds, deletes or updates the attribute value in the specified table.column for the specified keyvalue. The difference between tabch and chtab is tabch runs as a plugin under the xcatd daemon. This give the additional security of being authorized by the daemon. Normally, the given value will completely replace the current attribute value. But if "+=" is used instead of "=", the specified value will be appended to the coma separated list of the attribute, if it is not already there.
*******
OPTIONS
*******
\ **-h**\ Display usage message.
\ **-v**\ Command Version.
\ **-d**\ Delete option.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1. To add a node=node1 to the nodelist table with groups=all:
\ *tabch node=node1 nodelist.groups=all *\
2. To add a keyword (tftpdir) and value (/tftpboot) to the site table:
\ *tabch key=tftpdir site.value=/tftpboot *\
3. To add node1 to the nodetype table with os=rhel5:
\ *tabch node=node1 nodetype.os=rhel5*\
4. To change node1 in nodetype table setting os=sles:
\ *tabch node=node1 nodetype.os=sles*\
5. To change node1 by appending otherpkgs to the postbootscripts field in the postscripts table:
\ *tabch node=node1 postscripts.postbootscripts+=otherpkgs*\
6. To delete node1 from nodetype table:
\ *tabch -d node=node1 nodetype*\
*****
FILES
*****
/opt/xcat/sbin/tabch
********
SEE ALSO
********
tabdump(8)|tabdump.8, tabedit(8)|tabedit.8

View File

@ -0,0 +1,226 @@
#########
tabdump.8
#########
.. highlight:: perl
****
NAME
****
\ **tabdump**\ - display an xCAT database table in CSV format.
********
SYNOPSIS
********
\ **tabdump**\ [\ *-d*\ ] [\ *table*\ ]
\ **tabdump**\ [\ *table*\ ]
\ **tabdump**\ [\ *-f*\ \ *filename*\ ] [\ *table*\ ]
\ **tabdump**\ [\ *-n*\ \ *# of records*\ ] [\ *auditlog | eventlog*\ ]
\ **tabdump**\ [\ *-w*\ \ *attr*\ ==\ *val*\ ] [\ **-w**\ \ *attr*\ =~\ *val*\ ] ...] [\ *table*\ ]
\ **tabdump**\ [\ *-w*\ \ *attr*\ ==\ *val*\ ] [\ **-w**\ \ *attr*\ =~\ *val*\ ] ...] [\ *-f*\ \ *filename*\ ] [\ *table*\ ]
\ **tabdump**\ [\ *-v*\ | \ *--version*\ ]
\ **tabdump**\ [\ *-?*\ | \ *-h*\ | \ *--help*\ ]
\ **tabdump**\
***********
DESCRIPTION
***********
The tabdump command displays the header and all the rows of the specified table in CSV (comma separated values) format.
Only one table can be specified. If no table is specified, the list of existing
tables will be displayed.
*******
OPTIONS
*******
\ **-?|-h|--help**\
Display usage message.
\ **-d**\
Show descriptions of the tables, instead of the contents of the tables. If a table name is also specified, descriptions of the columns (attributes) of the table will be displayed. Otherwise, a summary of each table will be displayed.
\ **-n**\
Shows the most recent number of entries as supplied on the -n flag from the auditlog or eventlog table.
\ **-f**\
File name or path to file in which to dump the table. Without this the table is dumped
to stdout. Using the -f flag allows the table to be dumped one record at a time. If tables are very large, dumping to stdout can cause problems such as running out of memory.
\ **-w**\ \ *'attr==val'*\ \ **-w**\ \ *'attr=~val'*\ ...
Use one or multiple -w flags to specify the selection string that can be used to select particular rows of the table. See examples.
Operator descriptions:
.. code-block:: perl
== Select nodes where the attribute value is exactly this value.
!= Select nodes where the attribute value is not this specific value.
> Select nodes where the attribute value is greater than this specific value.
>= Select nodes where the attribute value is greater than or equal to this specific value.
< Select nodes where the attribute value is less than this specific value.
<= Select nodes where the attribute value is less than or equal to this specific value.
=~ Select nodes where the attribute value matches the SQL LIKE value.
!~ Select nodes where the attribute value matches the SQL NOT LIKE value.
************
RETURN VALUE
************
0
The command completed successfully.
1
An error has occurred.
********
EXAMPLES
********
\*
To display the contents of the site table:
\ **tabdump**\ \ **site**\
\*
To display the contents of the nodelist table where the groups attribute is compute :
\ **tabdump**\ \ **-w 'groups==compute'**\ \ **nodelist**\
\*
To display the contents of the nodelist table where the groups attribute is comput% where % is a wildcard and can represent any string and the status attribute is booted :
\ **tabdump**\ \ **-w 'groups=~comput%'**\ \ **-w 'status==booted'**\ \ **nodelist**\
\*
To display the records of the auditlog on date 2011-04-18 11:30:00 :
\ **tabdump**\ \ **-w 'audittime==2011-04-18 11:30:00'**\ \ **auditlog**\
\*
To display the records of the auditlog starting on 2011-04-18:
tabdump -w 'audittime>2011-04-18 11:30:00' auditlog
\*
To display the 10 most recent entries in the auditlog:
tabdump -n 10 auditlog
\*
To see what tables exist in the xCAT database:
\ **tabdump**\
\*
To back up all the xCAT database tables, instead of running \ **tabdump**\ multiple times, you can use the \ **dumpxCATdb**\ command as follows:
\ **dumpxCATdb -p /tmp/xcatbak **\
See the \ **dumpxCATdb**\ man page for details.
\*
To display a summary description of each table:
\ **tabdump**\ \ **-d**\
\*
To display a description of each column in the nodehm table:
\ **tabdump**\ \ **-d nodehm**\
*****
FILES
*****
/opt/xcat/sbin/tabdump
********
SEE ALSO
********
tabrestore(8)|tabrestore.8, tabedit(8)|tabedit.8, dumpxCATdb(1)|dumpxCATdb.1

View File

@ -0,0 +1,120 @@
#########
tabedit.8
#########
.. highlight:: perl
****
NAME
****
\ **tabedit**\ - view an xCAT database table in an editor and make changes.
********
SYNOPSIS
********
\ **tabedit**\ [\ *table*\ ]
\ **tabedit**\ [\ *-?*\ | \ *-h*\ | \ *--help*\ ]
***********
DESCRIPTION
***********
The tabedit command opens the specified table in the user's editor, allows them to edit any
text, and then writes changes back to the database table. The table is flattened into a CSV
(comma separated values) format file before giving it to the editor. After the editor is
exited, the CSV file will be translated back into the database format.
You may not tabedit the auditlog or eventlog because indexes will be regenerated.
Use tabprune command to edit auditlog and eventlog.
*******
OPTIONS
*******
\ **-?|-h|--help**\
Display usage message.
*********************
ENVIRONMENT VARIABLES
*********************
TABEDITOR
The editor that should be used to edit the table, for example: vi, vim, emacs, oocalc, pico, gnumeric, nano.
If \ **TABEDITOR**\ is not set, the value from \ **EDITOR**\ will be used. If \ **EDITOR**\ is not set, it will
default to vi.
************
RETURN VALUE
************
0
The command completed successfully.
1
An error has occurred.
********
EXAMPLES
********
\*
To edit the site table:
.. code-block:: perl
B<tabedit> I<site>
*****
FILES
*****
/opt/xcat/sbin/tabedit
********
SEE ALSO
********
tabrestore(8)|tabrestore.8, tabdump(8)|tabdump.8, chtab(8)|chtab.8

View File

@ -0,0 +1,175 @@
##########
tabprune.8
##########
.. highlight:: perl
****
NAME
****
\ **tabprune**\ - Deletes records from the eventlog,auditlog,isnm_perf,isnm_perf_sum tables.
********
SYNOPSIS
********
\ **tabprune**\ \ **eventlog | auditlog**\ [\ **-V**\ ] \ **-i**\ \ *recid*\ |\ **-n**\ \ *number of records*\ | \ **-p**\ \ *percentage*\ | \ **-d**\ \ *number of days*\ | \ **-a**\
\ **tabprune**\ \ **tablename**\ \ **-a**\
\ **tabprune**\ [\ **-h**\ |\ **--help**\ ] [\ **-v**\ |\ **--version**\ ]
***********
DESCRIPTION
***********
The tabprune command is used to delete records from the auditlog,eventlog,isnm_perf,isnm_perf_sum tables. As an option, the table header and all the rows pruned from the specified table will be displayed in CSV (comma separated values) format. The all records options (-a) can be used on any xCAT table.
*******
OPTIONS
*******
\ **-h|--help**\
Display usage message.
\ **-V**\
Verbose mode. This will cause tabprune to display the records that are being deleted from the table, in case
you want to redirect them to a file to archive them.
\ **-a**\
Remove all records from the input table name. This option can be used on any xCAT table.
\ **-i**\ \ *recid number*\
Remove the records whose recid is less than the input recid number.
\ **-n**\ \ *number*\
Remove the number of records input.
\ **-p**\ \ *percent*\
Remove the number of records input.
\ **-d**\ \ *number of days*\
Remove all records that occurred >= than number of days ago.
************
RETURN VALUE
************
0
The command completed successfully.
1
An error has occurred.
********
EXAMPLES
********
\*
To remove all the records in the eventlog table:
\ **tabprune**\ \ *eventlog*\ -a
\*
To remove all the records in the eventlog table saving the deleted records in eventlog.csv:
\ **tabprune**\ \ *eventlog*\ -V -a > eventlog.csv
\*
To remove all the records before recid=200 in the auditlog table:
\ **tabprune**\ \ *auditlog*\ -i 200
\*
To remove 400 records from the auditlog table and display the remove records:
\ **tabprune**\ \ *auditlog*\ -V -n 400
\*
To remove 50% of the eventlog table:
\ **tabprune**\ \ *eventlog*\ -p 50
\*
To remove all records that occurred >= 5 days ago in the eventlog:
\ **tabprune**\ \ *eventlog*\ -d 5
*****
FILES
*****
/opt/xcat/sbin/tabprune
********
SEE ALSO
********
tabrestore(8)|tabrestore.8, tabedit(8)|tabedit.8,tabdump(8)|tabdump.8

View File

@ -0,0 +1,142 @@
############
tabrestore.8
############
.. highlight:: perl
****
NAME
****
\ **tabrestore**\ - replaces with or adds to a xCAT database table the contents in a csv file.
********
SYNOPSIS
********
\ **tabrestore**\ [-a] \ *table.csv*\
\ **tabrestore**\ [\ *-?*\ | \ *-h*\ | \ *--help*\ ]
\ **tabrestore**\ [\ *v*\ | \ *--version*\ ]
***********
DESCRIPTION
***********
The tabrestore command reads the contents of the specified file and puts its data
in the corresponding table in the xCAT database. Any existing rows in that table
are replaced unless the (-a) flag is used and then the rows in the file are added to the table.
The file must be in csv format. It could be created by tabdump.
Only one table can be specified.
This command can be used to copy the example table entries in /opt/xcat/share/xcat/templates/e1350
into the xCAT database.
*******
OPTIONS
*******
\ **-?|-h|--help**\
Display usage message.
\ **-v|--version**\
Display version.
\ **-a|--addrows**\
Add rows from the CSV file to the table instead of replacing the table with the CSV file.
************
RETURN VALUE
************
0
The command completed successfully.
1
An error has occurred.
********
EXAMPLES
********
\*
To replace the rows in the mp table with the rows in the mp.csv file:
\ ** tabrestore**\ \ *mp.csv*\
The file mp.csv could contain something like:
.. code-block:: perl
#node,mpa,id,comments,disable
"blade","|\D+(\d+)|amm(($1-1)/14+1)|","|\D+(\d+)|(($1-1)%14+1)|",,
\*
To add the rows in the mp.csv file to the rows in the mp table:
\ ** tabrestore**\ -a \ *mp.csv*\
\*
To restore database tables that we dumped with dumpxCATdb:
restorexCATdb -p <restore directory>
*****
FILES
*****
/opt/xcat/sbin/tabrestore
********
SEE ALSO
********
tabdump(8)|tabdump.8, tabedit(8)|tabedit.8, dumpxCATdb(1)|dumpxCATdb.1

View File

@ -0,0 +1,107 @@
##########
winstall.8
##########
.. highlight:: perl
****
Name
****
\ **winstall**\ - Begin OS provision on a noderange
****************
\ **Synopsis**\
****************
\ **winstall**\ [\ *-o*\ |\ *--osver*\ ] [\ *-p*\ |\ *--profile*\ ] [\ *-a*\ |\ *--arch*\ ] [\ *noderange*\ ]
\ **winstall**\ [\ *-O*\ |\ *--osimage*\ ] [\ *noderange*\ ]
*******************
\ **Description**\
*******************
\ **winstall**\ is a convenience tool that will change attributes as requested for operating system version, profile, and architecture, call \ **nodeset**\ to modify the network boot configuration, call \ **rsetboot**\ net to set the next boot over network (only support nodes
with "nodetype.mgt=ipmi", for other nodes, make sure the correct boot order has been set before \ **winstall**\ ), and \ **rpower**\ to begin a boot cycle.
If [\ *-O*\ |\ *--osimage*\ ] is specified or nodetype.provmethod=\ *osimage*\ is set, provision the noderange with the osimage specified/configured, ignore the table change options if specified.
It will then run wcons on the nodes.
***************
\ **Options**\
***************
\ **-h**\ |\ **--help**\
Display usage message.
\ **-v**\ |\ **--version**\
Display version.
\ **-o**\ |\ **--osver**\
Specifies which os version to provision. If unspecified, the current node os setting is used. Will be ignored if [\ *-O*\ |\ *--osimage*\ ] is specified or nodetype.provmethod=\ *osimage*\ .
\ **-p**\ |\ **--profile**\
Specifies what profile should be used of the operating system. If not specified the current node profile setting is used. Will be ignored if [\ *-O*\ |\ *--osimage*\ ] is specified or nodetype.provmethod=\ *osimage*\ .
\ **-a**\ |\ **--arch**\
Specifies what architecture of the OS to provision. Typically this is unneeded, but if provisioning between x86_64 and x86 frequently, this may be a useful flag. Will be ignored if [\ *-O*\ |\ *--osimage*\ ] is specified or nodetype.provmethod=\ *osimage*\ .
\ **-O**\ |\ **--osimage**\
Specifies the osimage to provision.
****************
\ **Examples**\
****************
\ **winstall**\ \ *node1-node20*\
Provison nodes 1 through 20, using their current configuration.
\ **winstall**\ \ *node1-node20*\ -o rhels5.1 -p compute
Provision nodes 1 through 20, forcing rhels5.1 and compute profile.
\ **winstall**\ \ *node1-node20*\ -O rhels6.4-ppc64-netboot-compute
Provision nodes 1 through 20 with the osimage rhels6.4-ppc64-netboot-compute.
************************
\ **See**\ \ **Also**\
************************
noderange(3)|noderange.3, rinstall(8)|rinstall.8, wcons(1)|wcons.1

View File

@ -0,0 +1,173 @@
############
xcatconfig.8
############
.. highlight:: perl
****
NAME
****
\ **xcatconfig**\ - Sets up the Management Node during the xCAT install.
********
SYNOPSIS
********
\ **xcatconfig**\
\ **xcatconfig**\ {\ **-h**\ |\ **--help**\ }
\ **xcatconfig**\ {\ **-v**\ |\ **--version**\ }
\ **xcatconfig**\ {\ **-i**\ |\ **--initinstall**\ } [\ **-V**\ |\ **--verbose**\ ]
\ **xcatconfig**\ {\ **-u**\ |\ **--updateinstall**\ } [\ **-V**\ |\ **--verbose**\ ]
\ **xcatconfig**\ [\ **-k**\ |\ **--sshkeys**\ ] [\ **-s**\ |\ **--sshnodehostkeys**\ ] [\ **-c**\ |\ **--credentials**\ ] [\ **-d**\ |\ **--database**\ ] [\ **-m**\ |\ **--mgtnode**\ ] [\ **-t**\ |\ **--tunables**\ ] [\ **-V**\ |\ **--verbose**\ ]
\ **xcatconfig**\ {\ **-f**\ |\ **--force**\ } [\ **-V**\ |\ **--verbose**\ ]
***********
DESCRIPTION
***********
\ **xcatconfig**\ Performs basic xCAT setup operations on an xCAT management node. This command should not be run on an xCAT Service Node, unless you are making it a Management Node. See flag description below for more details.
*******
OPTIONS
*******
\ **-h|--help**\
Displays the usage message.
\ **-v|--version**\
Displays the release version of the code.
\ **-V|--verbose**\
Displays verbose messages.
\ **-i|--initialinstall**\
The install option is normally run as a post operation from the rpm xCAT.spec file during the initial install of xCAT on the Management Node. It will setup the root ssh keys, ssh node keys, xCAT credentials, initialize the datebase, export directories, start syslog and other daemons as needed after the initial install of xCAT.
\ **-u|--updateinstall**\
The update install option is normally run as a post operation from the rpm xCAT.spec file during an update install of xCAT on the Management Node. It will check the setup the root ssh keys, ssh node keys, xCAT credentials, datebase, exported directories, syslog and the state of daemons needed by xCAT, after the updateinstall of xCAT. If setup is required, it will perform the operation. It will restart the necessary daemons.
\ **-k|--sshkeys**\
This option will remove and regenerate the root id_rsa keys. It should only be used, if the keys are deleted or corrupted. The keys must then be distribute to the nodes by installing, running updatenode -k, or using xdsh -K option, for root to be able to ssh to the nodes without being prompted for a password.
rspconfig will need to be run to distribute the key to the MM and HMCs. Any device, we need to ssh from the MN to the device will also have to be updated with the new ssh keys.
\ **-s|--sshnodehostkeys**\
This option will remove and regenerate the node host ssh keys. It should only be used, if the keys are deleted or are corrupted. The keys must then be redistribute to the nodes by installing, running updatenode -k or using xdcp or pcp to copy the keys from /etc/xcat/hostkeys directory to the /etc/ssh directory on the nodes.
\ **-c|--credentials**\
This option will remove all xcat credentials for root and any userids where credentials have been created. It will regenerate roots credentials, but the admin will have to add back all the userid credentials needed with the /opt/xcat/share/xcat/scripts/setup-local-client.sh <username> command. It should only be used, if they are deleted or become corrupted. The root credentials must be redistribed to the service nodes by installing the service node or using updatenode -k. makeconservercf must be rerun to pick up the new credentials, and conserver must be stop and started.
\ **-d|--database**\
This option will reinitialize the basic xCAT database table setup. It will not remove any new database entries that have been added, but it is strongly suggested that you backup you database (dumpxCATdb) before using it.
\ **-f|--force**\
The force option may be used after the install to reinitialize the Management Node. This option will regenerate keys, credential and reinititialize the site table. This option should be used, if keys or credentials become corrupt or lost.
Additional action must be taken after using the force options. ssh keys must be redistributed to the nodes, site table attributes might need to be restored, makeconservercf needs to be rerun to pick up the new credentials and conserver stoped and started, rspconfig needs to be rerun to distribute the new keys to the MM and the HMCs.
A new set of common ssh host keys will have been generated for the nodes. If you wish your nodes to be able to ssh to each other with out password intervention, then you should redistribute these new keys to the nodes. If the nodes hostkeys are updated then you will need to remove their entries from the known_hosts files on the management node before using ssh, xdsh, xdcp.
Redistribute credentials and ssh keys to the service nodes and ssh keys to the nodes by using the updatenode -k command.
\ **-m|--mgtnode**\
This option will add the Management Node to the database with the correct attributes set to be recognized by xCAT. This should be run after the hostname of the Management Node is set to the name that will resolve to the cluster-facing NIC.
\ **-t|--tunables**\
This option will set tunable parameters on the Management and Service nodes recommended for your Linux cluster. It will only set them during initial install, if you run xcatconfig -f or xcatconfig -t.
********
EXAMPLES
********
\*
To force regeneration of keys and credentials and reinitialize the site table:
\ **xcatconfig**\ \ *-f*\
\*
To regenerate root's ssh keys:
\ **xcatconfig**\ \ *-k*\
\*
To regenerate node host ssh keys:
\ **xcatconfig**\ \ *-s*\
\*
To regenerate node host ssh keys and credentials:
\ **xcatconfig**\ \ *-s*\ \ *-c*\
\*
To add the Management Node to the DB:
\ **xcatconfig**\ \ *-m*\

View File

@ -0,0 +1,90 @@
#######
xcatd.8
#######
.. highlight:: perl
****
NAME
****
\ **xcatd**\ - The xCAT daemon
********
SYNOPSIS
********
\ **xcatd**\
***********
DESCRIPTION
***********
The heart of the xCAT architecture is the xCAT daemon \ **xcatd**\ on the management node. This receives requests from the client, validates the requests, and then invokes the operation. The xcatd daemon also receives status and inventory info from the nodes as they are being discovered and installed/booted.
Errors and information are reported through syslog to the /var/log/messages file. You can search for xCAT in those messages.
For further information: See https://sourceforge.net/apps/mediawiki/xcat/index.php?title=XCAT_2_Architecture.
********
EXAMPLES
********
1.
To start/stop/restart xcatd on Linux, enter:
.. code-block:: perl
service xcatd start
service xcatd stop
service xcatd restart
2.
To start/stop/restart xcatd on AIX, enter:
.. code-block:: perl
restartxcatd
or
startsrc -s xcatd
stopsrc -s xcatd
*****
FILES
*****
/opt/xcat/sbin/xcatd
********
SEE ALSO
********

View File

@ -0,0 +1,190 @@
###########
xcatdebug.8
###########
.. highlight:: perl
****
NAME
****
\ **xcatdebug**\ - Enable or disable the trace facilities for xCAT. (Only supports Linux Operating System)
\ **xcatdebug**\ { [\ **-f enable|disable**\ [\ **-c configuration file | subroutine list**\ ]] | [ \ **-d enable |disable**\ ]}
***********
DESCRIPTION
***********
xCAT offers two trace facilities to debug the xCAT:
\*
\ **Subroutine calling trace**\
Display the calling trace for subroutine when it is called.
The trace message includes: The name of the called subroutine; The arguments which passed to the called subroutine; The calling stack of the subroutine. By default, the trace will be enabled to all the subroutines in the xcatd and plugin modules. The target subroutine can be configured by configuration file or through xcatdebug command line.
The flag \ **-c**\ is used to specify the subroutine list for \ **subroutine calling trace**\ , it can only work with \ **-f**\ . The value of \ **-c**\ can be a configuration file or a subroutine list.
\ **configuration file**\ : a file contains multiple lines of \ **SUBROUTINE_DEFINITION**\
\ **subroutine list**\ : \ **SUBROUTINE_DEFINITION**\ |\ **SUBROUTINE_DEFINITION**\ |...
\ **SUBROUTINE_DEFINITION**\ : is the element for the \ **-c**\ to specify the subroutine list.
The format of \ **SUBROUTINE_DEFINITION**\ : [plugin](subroutine1,subroutine2,...)
If ignoring the [plugin], the subroutines in the () should be defined in the xcatd.
e.g. (daemonize,do_installm_service,do_udp_service)
Otherwise, the package name of the plugin should be specified.
e.g. xCAT::Utils(isMN,Version)
e.g. xCAT_plugin::DBobjectdefs(defls,process_request)
The trace log will be written to /var/log/xcat/subcallingtrace. The log file subcallingtrace will be backed up for each running of the \ **xcatdebug -f enable**\ .
\*
\ **Commented trace log**\
The trace log code is presented as comments in the code of xCAT. In general mode, it will be kept as comments. But in debug mode, it will be commented back as common code to display the trace log.
NOTE: This facility can be enabled by pass the \ **ENABLE_TRACE_CODE=1**\ global variable when running the xcatd. e.g. ENABLE_TRACE_CODE=1 xcatd -f
This facility offers two formats for the trace log code:
\*
Trace section
## TRACE_BEGIN
# print "In the debug\n";
## TRACE_END
\*
Trace in a single line
## TRACE_LINE print "In the trace line\n";
The \ **commented trace log**\ can be added in xcatd and plugin modules. But following section has been added into the BEGIN {} section of the target plugin module to enable the facility.
.. code-block:: perl
if (defined $ENV{ENABLE_TRACE_CODE}) {
use xCAT::Enabletrace qw(loadtrace filter);
loadtrace();
}
*******
OPTIONS
*******
\ **-f**\
Enable or disable the \ **subroutine calling trace**\ .
For \ **enable**\ , if ignoring the \ **-c**\ flag, all the subroutines in the xcatd and plugin modules will be enabled.
For \ **disable**\ , all the subroutines which has been enabled by \ **-f enable**\ will be disabled. \ **-c**\ will be ignored.
\ **-c**\
Specify the configuration file or subroutine list.
\*
\ **configuration file**\ : a file contains multiple lines of \ **SUBROUTINE_DEFINITION**\
e.g.
(plugin_command)
xCAT_plugin::DBobjectdefs(defls,process_request)
xCAT::DBobjUtils(getobjdefs)
\* \ **subroutine list**\ : a string like \ **SUBROUTINE_DEFINITION**\ |\ **SUBROUTINE_DEFINITION**\ |...
e.g.
"(plugin_command)|xCAT_plugin::DBobjectdefs(defls,process_request)|xCAT::DBobjUtils(getobjdefs)"
\ **-d**\
Enable or disable the \ **commented trace log**\ .
Note: The xcatd will be restarted for the performing of \ **-d**\ .
********
EXAMPLES
********
1
Enable the \ **subroutine calling trace**\ for all the subroutines in the xcatd and plugin modules.
\ **xcatdebug**\ -f enable
2
Enable the \ **subroutine calling trace**\ for the subroutines configured in the /opt/xcat/share/xcat/samples/tracelevel0
\ **xcatdebug**\ -f enable -c /opt/xcat/share/xcat/samples/tracelevel0
3
Enable the \ **subroutine calling trace**\ for the plugin_command in xcatd and defls,process_request in the xCAT_plugin::DBobjectdefs module.
\ **xcatdebug**\ -f enable -c "xCAT_plugin::DBobjectdefs(defls,process_request)|(plugin_command)"
4
Disable the \ **subroutine calling trace**\ for all the subroutines which have been enabled by \ **xcatdebug -f enable**\ .
\ **xcatdebug**\ -f disable
5
Enable the \ **commented trace log**\
\ **xcatdebug**\ -d enable
6
Enable both the \ **subroutine calling trace**\ and \ **commented trace log**\
\ **xcatdebug**\ -f enable -c /opt/xcat/share/xcat/samples/tracelevel0 -d enable

View File

@ -0,0 +1,609 @@
###########
xcatsetup.8
###########
.. highlight:: perl
****
NAME
****
\ **xcatsetup**\ - Prime the xCAT database using naming conventions specified in a config file.
********
SYNOPSIS
********
\ **xcatsetup**\ [\ **-s|--stanzas**\ \ *stanza-list*\ ] [\ **--yesreallydeletenodes**\ ] \ *cluster-config-file*\
\ **xcatsetup**\ [\ **-?**\ | \ **-h**\ | \ **--help**\ | \ **-v**\ | \ **--version**\ ]
***********
DESCRIPTION
***********
The \ **xcatsetup**\ command reads the specified config file that contains general information about the cluster being set up,
and naming conventions and IP addresses that you want to use. It then defines the basic objects in the xCAT database
representing this cluster configuration. The \ **xcatsetup**\ command prepares the database for the step of discovering
the hardware that is connected to the service and cluster networks. The typical steps of setting up a system p cluster are:
\*
Install the xCAT software on the management node
\*
Create the cluster config file and run xcatsetup
\*
Put hardware control passwords in the ppchcp or ppcdirect database table
\*
Run makenetworks and makedhcp
\*
Run the discovery commands (lsslp, mkhwconn, rspconfig) as described in the System P Hardware Management cookbook.
\*
Configure and start services using makehosts, makedns, mkconserver.cf, etc.
\*
Create the images that should be installed or booted on the nodes
\*
Run nodeset and rpower/rnetboot to boot up the nodes.
The \ **xcatsetup**\ command is intended as a quick way to fill out the database for a cluster that has very regular
naming patterns. The only thing it does is fill in database attributes. If your cluster does not follow consistent
naming patterns, or has some other special configuration, you should define attribute values manually using mkdef(1)|mkdef.1, instead of using
\ **xcatsetup**\ . The cluster config file is meant to be an easy way to prime the database; it is not meant to be a
long living file that you update as the cluster changes. If you do want to run xcatsetup again at a later time,
because, for example, you added a lot of nodes, you should put the total list of nodes in the config file, not just
the new ones. This is because xcatsetup uses some regular expressions for groups (e.g. frame, cec, compute) that would
be calculated incorrectly if the config file told xcatsetup about only the new nodes.
Speaking of regular expressions, xcatsetup creates some pretty complicated regular expressions in the database.
These are useful because they keep most of the tables small, even for large clusters. But if you want to
tweak them, they may be hard to understand. If after running xcatsetup, you want to convert your database to
use individual rows for every node, you can do the following:
.. code-block:: perl
lsdef -z all >tmp.stanza
cat tmp.stanza | chdef -z
Many of the sections and attributes in the configuration file can be omitted, if you have a simple cluster, or if you want
to create just 1 or 2 of the object types at this time. See the section \ **A Simpler Configuration File**\ for an example of this.
If you want to delete all of the nodes that xcatsetup created, and start over, use the \ **--yesreallydeletenodes**\ option.
Restrictions
============
\*
The \ **xcatsetup**\ command has only been implemented and tested for system p servers so far.
Configuration File
==================
The \ **config file**\ is organized in stanza format and supports the keywords in the sample file below. Comment lines
begin with "#". Stanzas can be ommitted if you do not want to define that type of object.
The only hostname formats supported are those shown in this sample file, although you can change the base
text and the numbers. For example, hmc1-hmc3 could be changed to hwmgmt01-hwmgmt12.
The hostnames specified must sort correctly. I.e. use node01-node80, instead of node1-node80.
This sample configuration file is for a 2 building block cluster.
.. code-block:: perl
xcat-site:
domain = cluster.com
# currently only direct fsp control is supported
use-direct-fsp-control = 1
# ISR network topology. For example, one of the following: 128D, 64D, 32D, 16D, 8D, 4D, 2D, 1D
topology = 32D
# The nameservers in site table will be set with the value of master automatically.
xcat-service-lan:
# IP range used for DHCP. If you set the entry, the networks table will be filled
# automatically with this range and the dhcp interface will be set in the site table.
dhcp-dynamic-range = 50.0.0.0-50.0.0.200
xcat-hmcs:
hostname-range = hmc1-hmc2
starting-ip = 10.200.1.1
xcat-frames:
# these are the connections to the frames
hostname-range = frame[1-6]
num-frames-per-hmc = 3
# this lists which serial numbers go with which frame numbers
vpd-file = vpd2bb.stanza
# There are two rules of defining FSP/BPAs. The first defining the node's host name by increasing the last bit
# of IP address, while the second defining the node's name by varying the second bit and the third bit of IP.
# This assumes you have 2 service LANs: a primary service LAN 10.230.0.0/255.255.0.0 that all of the port 0's
# are connected to, and a backup service LAN 10.231.0.0/255.255.0.0 that all of the port 1's are connected to.
# bpa-a-0-starting-ip = 10.230.1.1
# bpa-b-0-starting-ip = 10.230.2.1
# bpa-a-1-starting-ip = 10.231.1.1
# bpa-b-1-starting-ip = 10.231.2.1
# This assumes you have 2 service LANs: a primary service LAN 40.x.y.z/255.0.0.0 that all of the port 0's
# are connected to, and a backup service LAN 41.x.y.z/255.0.0.0 that all of the port 1's are connected to.
# "x" is the frame number and "z" is the bpa/fsp id (1 for the first BPA/FSP in the Frame/CEC, 2 for the
# second BPA/FSP in the Frame/CEC). For BPAs "y" is always be 0 and for FSPs "y" is the cec id.
vlan-1 = 40
vlan-2 = 41
xcat-cecs:
# These are the connections to the CECs. Either form of hostname is supported.
#hostname-range = cec01-cec64
hostname-range = f[1-6]c[01-12]
# If you use the frame/cec hostname scheme above, but do not have a consistent
# number of cecs in each frame, xcat can delete the cecs that do not get
# supernode numbers assigned to them.
delete-unused-cecs = 1
# lists the HFI supernode numbers for each group of cecs in each frame
supernode-list = supernodelist2bb.txt
# If you do not want to specify the supernode-list at this time and you have a consistent
# number of cecs in each frame, you can instead just use this setting:
num-cecs-per-frame = 12
#fsp-a-0-starting-ip = 10.230.3.1
#fsp-b-0-starting-ip = 10.230.4.1
#fsp-a-1-starting-ip = 10.231.3.1
#fsp-b-1-starting-ip = 10.231.4.1
xcat-building-blocks:
num-frames-per-bb = 3
num-cecs-per-bb = 32
xcat-lpars:
num-lpars-per-cec = 8
# If you set these, then do not set the corresponding attributes in the other node stanzas below.
# Except you still need to set xcat-service-nodes:starting-ip (which is the ethernet adapter)
#hostname-range = f[1-6]c[01-12]p[1-8]
hostname-range = f[1-6]c[01-12]p[01,05,09,13,17,21,25,29]
starting-ip = 10.1.1.1
aliases = -hf0
# ml0 is for aix. For linux, use bond0 instead.
otherinterfaces = -hf1:11.1.1.1,-hf2:12.1.1.1,-hf3:13.1.1.1,-ml0:14.1.1.1
xcat-service-nodes:
num-service-nodes-per-bb = 2
# which cecs within the bldg block that the SNs are located in
cec-positions-in-bb = 1,32
# this is for the ethernet NIC on each SN
#hostname-range = sn1-sn4
starting-ip = 10.10.1.1
# this value is the same format as the hosts.otherinterfaces attribute except
# the IP addresses are starting IP addresses
#otherinterfaces = -hf0:10.10.1.1,-hf1:10.11.1.1,-hf2:10.12.1.1,-hf3:10.13.1.1,-ml0:10.14.1.1
xcat-storage-nodes:
num-storage-nodes-per-bb = 3
# which cecs within the bldg block that the storage nodes are located in
cec-positions-in-bb = 12,20,31
#hostname-range = stor1-stor6
#starting-ip = 10.20.1.1
#aliases = -hf0
#otherinterfaces = -hf1:10.21.1.1,-hf2:10.22.1.1,-hf3:10.23.1.1,-ml0:10.24.1.1
xcat-compute-nodes:
#hostname-range = n001-n502
#starting-ip = 10.30.1.1
#aliases = -hf0
# ml0 is for aix. For linux, use bond0 instead.
#otherinterfaces = -hf1:10.31.1.1,-hf2:10.32.1.1,-hf3:10.33.1.1,-ml0:10.34.1.1
VPD File for Frames
===================
The \ **vpd-file**\ specifies the following vpd table attributes for the frames: node,
serial, mtm, side. Use the same stanza format that accepted by the chdef(1)|chdef.1 command, as documented
in xcatstanzafile(5)|xcatstanzafile.5. The purpose of this file is to enable xCAT to match up frames found
through lsslp(1)|lsslp.1 discovery with the database objects created by \ **xcatsetup**\ . All of the frames
in the cluster must be specified.
Here is a sample file:
.. code-block:: perl
frame1:
objtype=node
serial=99200G1
mtm=9A00-100
frame2:
objtype=node
serial=99200D1
mtm=9A00-100
frame3:
objtype=node
serial=99200G1
mtm=9A00-100
frame4:
objtype=node
serial=99200D1
mtm=9A00-100
frame5:
objtype=node
serial=99200G1
mtm=9A00-100
frame6:
objtype=node
serial=99200D1
mtm=9A00-100
Supernode Numbers for CECs
==========================
The \ **supernode-list**\ file lists what supernode numbers should be given to each CEC in each frame.
Here is a sample file:
.. code-block:: perl
frame1: 0, 1, 16
frame2: 17, 32
frame3: 33, 48, 49
frame4: 64 , 65, 80
frame5: 81, 96
frame6: 97(1), 112(1), 113(1), 37(1), 55, 71
The name before the colon is the node name of the frame. The numbers after the colon are the supernode numbers
to assign to the groups of CECs in that frame from bottom to top. Each supernode contains 4 CECs, unless it is immediately
followed by "(#)", in which case the number in parenthesis indicates how many CECs are in this supernode.
A Simpler Configuration File
============================
This is an example of a simple cluster config file that just defines the frames and CECs for 2 frames, without specifying
VPD data or supernode numbers at this time.
.. code-block:: perl
xcat-site:
use-direct-fsp-control = 1
xcat-frames:
hostname-range = frame[1-2]
xcat-cecs:
#hostname-range = cec[01-24]
hostname-range = f[1-2]c[01-12]
num-cecs-per-frame = 12
xcat-lpars:
hostname-range = f[1-2]c[01-12]p[01,05,09,13,17,21,25,29]
Database Attributes Written
===========================
The following lists which database attributes are filled in as a result of each stanza. Note that depending on the values
in the stanza, some attributes might not be filled in.
\ **xcat-site**\
site table: domain, nameservers, topology
\ **xcat-hmcs**\
site table: ea_primary_hmc, ea_backup_hmc
nodelist table: node, groups (all HMCs (hmc) ), hidden
hosts table: node, ip
ppc table: node, comments
nodetype table: node, nodetype
\ **xcat-frames**\
nodelist table: node, groups (all frames (frame) ), hidden
ppc table: node, id, hcp, nodetype, sfp
nodetype table: node, nodetype
nodehm table: node, mgt
vpd table: node, serial, mtm, side
\ **xcat-bpas**\
nodelist table: node, groups (bpa,all) , hidden
ppc table: node, id, hcp, nodetype, parent
nodetype table: node, nodetype
nodehm table: node, mgt
vpd table: node, serial, mtm, side
\ **xcat-cecs**\
nodelist table: node, groups (all CECs (cec), all CECs in a frame (<frame>cec) ), hidden
ppc table: node, supernode, hcp, id, parent
nodetype table: node, nodetype
nodehm table: node, mgt
nodegroup table: groupname, grouptype, members, wherevals (all nodes in a CEC (<cec>nodes) )
nodepos: rack, u
\ **xcat-fsps**\
nodelist table: node, groups (fsp,all), hidden
ppc table: node, id, hcp, nodetype, parent
nodetype table: node, nodetype
nodehm table: node, mgt
vpd table: node, serial, mtm, side
\ **xcat-building-blocks**\
site table: sharedtftp, sshbetweennodes(service)
ppc table: node, parent (for frame)
\ **xcat-service-nodes**\
nodelist table: node, groups (all service nodes (service), all service nodes in a BB (bb<num>service) )
hosts table: node, ip, hostnames, otherinterfaces
ppc table: node, id, hcp, parent
nodetype table: node, nodetype, arch
nodehm table: node, mgt, cons
noderes table: netboot
servicenode table: node, nameserver, dhcpserver, tftpserver, nfsserver, conserver, monserver, ftpserver, nimserver, ipforward
nodegroup table: groupname, grouptype, members, wherevals (all nodes under a service node (<servicenode>nodes) )
nodepos: rack, u
\ **xcat-storage-nodes**\
nodelist table: node, groups (all storage nodes (storage), all storage nodes in a BB (bb<num>storage) )
hosts table: node, ip, hostnames, otherinterfaces
ppc table: node, id, hcp, parent
nodetype table: node, nodetype, arch
nodehm table: node, mgt, cons
noderes table: netboot, xcatmaster, servicenode
nodepos: rack, u
\ **xcat-compute-nodes**\
nodelist table: node, groups (all compute nodes (compute) )
hosts table: node, ip, hostnames, otherinterfaces
ppc table: node, id, hcp, parent
nodetype table: node, nodetype, arch
nodehm table: node, mgt, cons
noderes table: netboot, xcatmaster, servicenode
nodepos: rack, u
\ **ll-config**\
postscripts: postscripts
*******
OPTIONS
*******
\ **-s|--stanzas**\ \ *stanza-list*\
A comma-separated list of stanza names that \ **xcatsetup**\ should process in the configuration file. If not specified, it will process
all the stanzas that start with 'xcat' and some other stanzas that give xCAT hints about how to set up the HPC products.
This option should only be specified if you have already run \ **xcatsetup**\ earlier with the stanzas that occur before this in the
configuration file. Otherwise, objects will be created that refer back to other objects that do not exist in the database.
\ **-v|--version**\
Command Version.
\ **-?|-h|--help**\
Display usage message.
\ **--yesreallydeletenodes**\
Delete the nodes represented in the cluster config file, instead of creating them. This is useful if your first attempt with the cluster
config file wasn't quite right and you want to start over. But use this option with extreme caution, because it will potentially delete
a lot of nodes. If the only thing you have done so far in your database is add nodes by running \ **xcatsetup**\ , then it is safe to use this
option to start over. If you have made other changes to your database, you should first back it up using dumpxCATdb(1)|dumpxCATdb.1 before
using this option.
************
RETURN VALUE
************
0 The command completed successfully.
1 An error has occurred.
********
EXAMPLES
********
1.
Use the sample config.txt file at the beginning of this man page to create all the objects/nodes for a
2 building block cluster.
.. code-block:: perl
xcatsetup config.txt
The output:
.. code-block:: perl
Defining site attributes...
Defining HMCs...
Defining frames...
Defining CECs...
Defining building blocks...
Defining LPAR nodes...
2.
Use the simpler config file shown earlier in this man page to create just the frame and cec objects:
.. code-block:: perl
xcatsetup config-simple.txt
The output:
.. code-block:: perl
Defining frames...
Defining CECs...
*****
FILES
*****
/opt/xcat/sbin/xcatsetup
********
SEE ALSO
********
mkdef(1)|mkdef.1, chdef(1)|chdef.1, lsdef(1)|lsdef.1, xcatstanzafile(5)|xcatstanzafile.5, noderange(3)|noderange.3, nodeadd(8)|nodeadd.8

View File

@ -0,0 +1,93 @@
##########
xcatsnap.8
##########
.. highlight:: perl
****
NAME
****
\ **xcatsnap**\ - Gathers information for service about the current running xCAT environment.
\ **xcatsnap**\ {\ **-h**\ |\ **--help**\ }
\ **xcatsnap**\ {\ **-v**\ |\ **--version**\ }
\ **xcatsnap**\ {\ **-B**\ |\ **--BYPASS**\ }
\ **xcatsnap**\ {\ **-d**\ |\ **--dir**\ }
***********
DESCRIPTION
***********
\ **xcatsnap**\ - The xcatsnap command gathers configuration, log and trace information about the xCAT components that are installed. This command only collects the data on the local node on which this command is run. This command is typically executed when a problem is encountered with any of these components in order to provide service information to the IBM Support Center.
This command should only be executed at the instruction of the IBM Support Center.
*******
OPTIONS
*******
\ **-h|--help**\
Displays the usage message.
\ **-v|--version**\
Displays the release version of the code.
\ **-B|--bypass**\
Runs in bypass mode, use if the xcatd daemon is hung.
\ **-d|--dir**\
The directory to put the snap information. Default is /tmp/xcatsnap.
*********************
ENVIRONMENT VARIABLES
*********************
********
EXAMPLES
********
\*
Run the xcatsnap routine in bypass mode and put info in /tmp/mydir :
\ **xcatsnap**\ \ *-B*\ \ *-d*\ /tmp/mydir
\*
To run the xcatsnap routine and use default directory /tmp/xcatsnap :
\ **xcatsnap**\