mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-11-03 21:02:34 +00:00 
			
		
		
		
	man page for sinv
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@2232 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
		
							
								
								
									
										250
									
								
								xCAT-client/pods/man1/sinv.1.pod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										250
									
								
								xCAT-client/pods/man1/sinv.1.pod
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,250 @@
 | 
			
		||||
=head1 B<NAME>
 | 
			
		||||
 | 
			
		||||
B<sinv> - Checks the software configuration of the nodes in the cluster. 
 | 
			
		||||
 | 
			
		||||
=head1 B<SYNOPSIS>
 | 
			
		||||
 | 
			
		||||
B<sinv> I<noderange> [B<-o> I<output>] [B<-p> <template path>] [B<-t> I<template count>] [B<-s> I<seed node>] [B<-i>] [B<-e>] [B<-r>] [B<-V>] [[B<-f> I<xdsh command file>] | [B<-c> I<xdsh command>]]
 | 
			
		||||
 | 
			
		||||
B<sinv> [B<-h> | B<-v>]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
=head1 B<DESCRIPTION>
 | 
			
		||||
 | 
			
		||||
The B<sinv> command is designed to check the configuration of the nodes in a cluster.
 | 
			
		||||
The command takes as input command line flags, and one or more templates which will be compared against the output of the xdsh command, designated to be run by the -c or -f flag, on the nodes in the noderange. 
 | 
			
		||||
 | 
			
		||||
The nodes will then be grouped according to the template they match and a report returned to the administrator in the output file designated by the -o flag.  
 | 
			
		||||
 
 | 
			
		||||
The B<sinv> command is an xCAT Distributed Shell Utility.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
B<TARGET> B<SPECIFICATION>:
 | 
			
		||||
 | 
			
		||||
The target are node(s) where xdsh will be executed.  Node
 | 
			
		||||
targets are specified by the I<noderange>.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
B<COMMAND> B<SPECIFICATION>:
 | 
			
		||||
 | 
			
		||||
The xdsh command to execute on the remote targets is specified by the
 | 
			
		||||
 B<-c> flag, or by the B<-f> flag
 | 
			
		||||
which is followed by the fully qualified path to a file containing the command.
 | 
			
		||||
 | 
			
		||||
Note: do not add | xdshbak to the command on the command line or in the
 | 
			
		||||
command file, it is automatically added by sinv.
 | 
			
		||||
 | 
			
		||||
The syntax for the B<-c>  B<sinv> parameter is as follows:
 | 
			
		||||
 | 
			
		||||
"I<command>[; I<command>]..."
 | 
			
		||||
 | 
			
		||||
where I<command> is the command to run on the remote
 | 
			
		||||
target. Quotation marks are required to ensure that all commands in the
 | 
			
		||||
list are executed remotely, and that any special characters are interpreted
 | 
			
		||||
correctly on the remote target. 
 | 
			
		||||
 | 
			
		||||
The B<sinv> command does not work with any interactive commands, including
 | 
			
		||||
those that read from standard input.
 | 
			
		||||
 | 
			
		||||
B<REMOTE> B<SHELL> B<COMMAND>:
 | 
			
		||||
 | 
			
		||||
The  B<sinv>  command  uses B<xdsh> which uses a configurable remote shell command to execute
 | 
			
		||||
remote commands on the remote targets. Support is  explicitly  provided
 | 
			
		||||
for  AIX  Remote  Shell and OpenSSH, but any secure remote command that
 | 
			
		||||
conforms to the IETF (Internet Engineering Task  Force)  Secure  Remote
 | 
			
		||||
Command Protocol can be used. See man B<xdsh> for more details.
 | 
			
		||||
 | 
			
		||||
=head1 B<OPTIONS>
 | 
			
		||||
 | 
			
		||||
=over 5
 | 
			
		||||
 | 
			
		||||
=item B<-o>|B<--output> I<report output file>
 | 
			
		||||
 | 
			
		||||
This is the location of the file that will contain the report
 | 
			
		||||
of the nodes that match, and do not match, the input templates.
 | 
			
		||||
 | 
			
		||||
=item B<-p>|B<--tp> I<template path>
 | 
			
		||||
 | 
			
		||||
This is the path to the template file. The template contains the output
 | 
			
		||||
of xdsh command, that has been run against a "seed" node, a node 
 | 
			
		||||
that contains the configuration that you would like  
 | 
			
		||||
all nodes in your noderange to match. 
 | 
			
		||||
 | 
			
		||||
The admin can create the template by running the xdsh command on
 | 
			
		||||
the seed node, pipe to xdshbak ( required) and store the output
 | 
			
		||||
in the template path. See examples.
 | 
			
		||||
 | 
			
		||||
B<Note:> The admin can also edit the
 | 
			
		||||
template to remove any lines that they do not want checked.  
 | 
			
		||||
 | 
			
		||||
An alternative method is to use the [B<-s> I<seed node>] parameter, 
 | 
			
		||||
which will automatically build the template for you from the 
 | 
			
		||||
seed node named.
 | 
			
		||||
 | 
			
		||||
If a template path file does not exist, and a seed node is not input,
 | 
			
		||||
then sinv will automatically use the first node in the noderange as
 | 
			
		||||
the seed node and build the template.  
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
=item B<-t>|B<--tc> I<template count>
 | 
			
		||||
 | 
			
		||||
This count is the number of templates that the command will use
 | 
			
		||||
to check for nodes matches.  If the template in the template path does not
 | 
			
		||||
match a node, the B<sinv> will check additional templates  up 
 | 
			
		||||
to the template count.
 | 
			
		||||
  
 | 
			
		||||
For each node, it will compare the node against each template to see if 
 | 
			
		||||
there is a match.  
 | 
			
		||||
If there is no match, and we are not over the template count,
 | 
			
		||||
then a new template will be created from the node output. 
 | 
			
		||||
This will result in having all nodes that match a given template reported in
 | 
			
		||||
their group at the end of the run in the output file. 
 | 
			
		||||
If no template count is specified,  0 is the default, and all nodes will
 | 
			
		||||
be compared against the first template.
 | 
			
		||||
 | 
			
		||||
=item B<-s>|B<--seed> I<seed node>
 | 
			
		||||
 | 
			
		||||
This is the node that will be used to build the first template
 | 
			
		||||
that is stored in template path.  You can use this parameter instead of running
 | 
			
		||||
the xdsh command yourself to build the template.
 | 
			
		||||
 | 
			
		||||
B<Note:> If no template path file exists, and no seed node is supplied,
 | 
			
		||||
the seed node automatically is the first node from the
 | 
			
		||||
noderange.
 | 
			
		||||
 | 
			
		||||
=item B<-i>|B<--ignorefirst>
 | 
			
		||||
 | 
			
		||||
This flag suppresses the reporting of the nodes matching the first
 | 
			
		||||
template. In very large systems, you may not want to show the nodes that
 | 
			
		||||
have the correct configuration, since the list could contain thousands of nodes.
 | 
			
		||||
This allows you to only report the nodes that do not match the required 
 | 
			
		||||
configuration. 
 | 
			
		||||
 | 
			
		||||
=item B<-e>|B<--exactmatch>
 | 
			
		||||
 | 
			
		||||
This requires the check of node output against template to be an exact match.
 | 
			
		||||
If this flag is not set, B<sinv> checks to see if the return from the 
 | 
			
		||||
xdsh command to the nodes contain a match for each line in the input 
 | 
			
		||||
template (except for xdshbak header and comments). If not in exactmatch mode,
 | 
			
		||||
there can exist more lines in the xdsh return from the nodes.
 | 
			
		||||
 | 
			
		||||
For example, if running a "rpm -qa | grep xCAT" command, without exactmatch 
 | 
			
		||||
set, if the node containes more xCAT rpms that listed in the template,
 | 
			
		||||
it would be considered a match, as long as all rpms listed in the template
 | 
			
		||||
were on the node. With exactmatch set, the output must be identical 
 | 
			
		||||
to the template. 
 | 
			
		||||
 | 
			
		||||
=item B<-c>|B<--command>
 | 
			
		||||
 | 
			
		||||
The command that will be run by xdsh. The command should be enclosed in 
 | 
			
		||||
double quotes to insure correct shell interpretation.
 | 
			
		||||
 | 
			
		||||
B<Note:> do not add the | xdshbak to the command,
 | 
			
		||||
it is automatically added by sinv.
 | 
			
		||||
 | 
			
		||||
=item B<-f>|B<--file>
 | 
			
		||||
 | 
			
		||||
The file containing the command that will be run by xdsh  
 | 
			
		||||
This should be the fully qualified name of the file. 
 | 
			
		||||
 | 
			
		||||
B<Note:> do not add the | xdshbak to the command in the file,
 | 
			
		||||
it is automatically added by sinv.
 | 
			
		||||
 | 
			
		||||
=item B<-r>|B<--remove>
 | 
			
		||||
 | 
			
		||||
This flag indicates that generated templates should be removed at the
 | 
			
		||||
at the end of the B<sinv> command execution. 
 | 
			
		||||
 | 
			
		||||
If the flag is input, then all templates that are generated by the B<sinv>
 | 
			
		||||
command, will be removed. If the first template is created by the admin,
 | 
			
		||||
it will not be removed.
 | 
			
		||||
 | 
			
		||||
If the flag is not input, no
 | 
			
		||||
templates will be removed. It is up to the admin to cleanup templates.
 | 
			
		||||
 | 
			
		||||
=item B<-h>|B<--help>
 | 
			
		||||
 | 
			
		||||
Displays usage information.
 | 
			
		||||
 | 
			
		||||
=item B<-v>|B<--version>
 | 
			
		||||
 | 
			
		||||
Displays xCAT release version.
 | 
			
		||||
 | 
			
		||||
=item B<-V>|B<--Verbose>
 | 
			
		||||
 | 
			
		||||
Verbose mode.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
=back
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
=head1 B<Examples>
 | 
			
		||||
 | 
			
		||||
=over 3
 | 
			
		||||
 | 
			
		||||
=item *
 | 
			
		||||
 | 
			
		||||
To setup sinv.template for input to the B<sinv> command , enter:
 | 
			
		||||
 | 
			
		||||
B<xdsh> I<node1,node2 "rpm -qa | grep xCAT | xdshbak "> /tmp/sinv.template>
 | 
			
		||||
 | 
			
		||||
Note: when setting up the template the output of xdsh must be piped
 | 
			
		||||
	  to xdshbak, sinv processing depends on it.
 | 
			
		||||
 | 
			
		||||
=item *
 | 
			
		||||
 | 
			
		||||
To execute B<sinv> using the sinv.template generated above
 | 
			
		||||
on the nodegroup, B<testnodes> ,possibly generating up to two
 | 
			
		||||
new templates, and removing all generated templates in the end, and writing
 | 
			
		||||
output report to /tmp/sinv.output, enter:
 | 
			
		||||
 | 
			
		||||
B<sinv> I<testnodes -c "rpm -qa | grep xCAT" -p /tmp/sinv.template -t 2 -r -o /tmp/sinv.output>
 | 
			
		||||
 | 
			
		||||
Note: do not add the pipe to xdshbak on the -c flag, it is automatically
 | 
			
		||||
added by the sinv routine.
 | 
			
		||||
 | 
			
		||||
=item *
 | 
			
		||||
 | 
			
		||||
To execute B<sinv> on noderange, node1-node4, using the seed node, node8,
 | 
			
		||||
to generate the first template, using the xdsh command (-c),
 | 
			
		||||
possibly generating up to two additional
 | 
			
		||||
templates and not removing any templates at the end, enter:
 | 
			
		||||
 | 
			
		||||
B<xsinv> I<node1-node4 -c "lslpp -l | grep bos.adt" -s node8 -p /tmp/sinv.template -t 2 -o /tmp/sinv.output> 
 | 
			
		||||
 | 
			
		||||
=item *
 | 
			
		||||
 | 
			
		||||
To execute B<sinv> on noderange, node1-node4, automatically using node1 as
 | 
			
		||||
the seed node, to generate the sinv.template from the xdsh command (-c),
 | 
			
		||||
using the exact match option, generating no additional templates, enter:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
B<xsinv> I<node1-node4 -c "lslpp -l | grep bos.adt"  -e -p /tmp/sinv.template  -o /tmp/sinv.output> 
 | 
			
		||||
 | 
			
		||||
Note: the /tmp/sinv.template file must be empty, otherwise it will be used
 | 
			
		||||
as an admin generated template.
 | 
			
		||||
 | 
			
		||||
=item *
 | 
			
		||||
 | 
			
		||||
To execute B<sinv> on noderange, node1-node4, automatically using node1 as
 | 
			
		||||
the seed node, to generate the sinv.template from the command input (-c),
 | 
			
		||||
using the exact match option, generating no additional templates, and 
 | 
			
		||||
reporting only nodes that do not match enter:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
B<xsinv> I<node1-node4 -c "lslpp -l | grep bos.adt"  -e -i -p /tmp/sinv.template  -o /tmp/sinv.output> 
 | 
			
		||||
 | 
			
		||||
Note: the /tmp/sinv.template file must be empty, otherwise it will be used
 | 
			
		||||
as an admin generated template.
 | 
			
		||||
 | 
			
		||||
=back
 | 
			
		||||
 | 
			
		||||
=head1 B<Files>
 | 
			
		||||
 | 
			
		||||
B</opt/xcat/bin/sinv/>
 | 
			
		||||
 | 
			
		||||
Location of the sinv command.
 | 
			
		||||
 | 
			
		||||
=head1 B<SEE ALSO>
 | 
			
		||||
 | 
			
		||||
L <xdsh(1)|xdsh.1>, L<xdshbak(1)|xdshbak.1>, L<noderange(3)|noderange.3>
 | 
			
		||||
		Reference in New Issue
	
	Block a user