Name
rcmdmgnt - Parallel Remote Command Configuration Manager
Description
This tools was created to configure, manage users tags and system
attributes for the 'rcmd tools'.
The RCMD now is based SQL database and this module was created to manage
the catalog in the database.
Usage
# rcmdmgnt
[ -add | -delete | -list ] ... [nodelist]
[ -assign | -unassign ] [ -option ] ... [nodelist]
[ -disable | -enable ] ... [nodelist]
[ -probe ] ... [nodelist]
[ -plugin ] ...
[ -sqlcreds ] ...
Commands
-add add new node
-assign assign users or system tags
-delete delete node
-disable disable node
-enable enable node
-list list cataloged nodes
-plugin run plugins
-probe update node's system informantion
-sqlcreds configure sql credentials
-unassign unassign users or system tags
Options
The options depend on the command operation. They can be:
-attempts [value]
number of retry until abort
default: 3 (run, test and probe) or 1 (ping)
-config [fullpath-config-file]
config file
default: /etc/rcmd.d/rcmd.conf
db [value]
database name.
default: rcmd
dbfile [fullpath-file-name]
database filename for SQLite engine only.
default: /var/lib/rcmd/db/rcmd.db
-debug [module1]:[level1],[module2]:[level2],...
enable debug mode
default: no debug enabled
module description
------ ---------------------------------------------------
all debug all levels (note recommeded)
cmd action to do
lib external functions
call callback functions
plugin plugin calls
sql commands
------ ---------------------------------------------------
level tracking description
----- ----------------------------------------------------
1 module start/completed
2 module stage1
3 module stage2
4 module stage3
5 module stage4 or sql callbacks
6 module stage5 or sql where
7 module stage6 or sql command
8 inputs
9 returns
----- ----------------------------------------------------
CAUTION: The tracking sql module or inputs or returns may expore
Login/Passord SQL
-description
show default help information
-detail
show node fields split into rows
driver [driver-name]
database connector drive.
must be: sqlite, mariadb, mysql, postgres
-examples
show examples in help context
-fields [field1,field2,...]
show specific node's fields.
------- --------------------------------------------------
node node name
status last probe status
tags users tags
probe last probe time
created created time
_system last probe system attributes
updated last update time
------- --------------------------------------------------
-help|?
this help
-inactive
action in inactive nodes.
Default: active nodes (enabled or errors state).
NOTE: inactive nodes are deprecated in the system. Use inactive
status to keep the nodes as history information.
NOTE: You can switch any status node to inactive. Enabling inactive
node will put as disable status and new enable or probe is required.
-license
show license aggrement.
-maxthreads [value]
number of concurrent threads
beware: a large number of threads may cause DoS on your client.
default: 64
-noheaders
suppress headers summaries and briefings
-nop|non-iteractive
Non iteractive execution command and supress approve question.
Disables approval requests befofe each updates.
CAUTION: This option disable the confirmation requests and all
updates will be done. Use wisely.
-notitle
suppress title text, only results will be sent
-options [option1,option2,...]
defines specifics or specials options to connect on the node.
-read [login:password:confirm]
SQL read login credential, used for 'rcmd' command.
The 'colon' is required between the values.
If the 'read' and/or 'update' option are omitted, they will be prompted.
-refresh
Force refresh in '/etc/rcmd.d/rcmd.conf' file, otherwise,
changes will be sent in stdout (copy/paste is required)
-schema [schema-name]
SQL schema name in database configuration, required in postgres engine.
default: no defaults.
-server [ip-or-hostname]
SQL server name, you can use IP or hostname.
-showconfig
Config 'rcmd.conf' file in mapped in memory.
-show-disabled|sd
Show disabled nodes.
-show-enable|se
Show enabled nodes.
-show-erros|any-errors|show-any|sa
Show errors messages.
-show-nonprobe
show non-probe message sent by the node
-show-noresponse
show no response nodes messages
NOTE: The 'no_response' cannot be an error. If the commands sent
complete without STDOUT messages, it will give the status
'no_response'.
-show-options
show extended node options.
-show-plugin|sp
Show plugin configuration
show-system|ss
Show node's probe system information.
show-tags|st
Show node's user information.
-ssh-cipher|sc [specs]
Selects the cipher specification for encrypting the session.
cipher_spec is a comma-separated list of ciphers listed in order of preference.
See the Ciphers keyword in "man ssh_config" for more information.
-ssh-command [fullpath-ssh-command]
ssh fulpath command
default: /usr/bin/ssh
-ssh-enable-tty
Enable pseudo-terminal allocation.
Defaults: is disabled, see '-T' option in "man ssh"
-ssh-login [default-user-login]
default ssh user connection
default: current user login session
-ssh-logwarn
show ssh warn messages
default: only error messages
-ssh-options|so [ssh-option] ...
additional ssh option (ssh option '-o')
default: no additional options will be used
-ssh-port [value]
TCPIP port number
default: 22
-ssh-private-key|ssh-key [ssh-key]
private ssh keys
default: current users '.ssh' folder
-system [item=value]
define system tag information
-table [table-name]
SQL table name in database.
default: node
-tags [tag-value]
define users tag information.
-test-only
do not send any remote command, only test the context and syntax.
-time-grace [value]
sets the maximum waiting time for the abortion process to complete.
defaults: 5 seconds
NOTE: The abort process has already been submitted and cannot be interrupted.
-time-probe [value]
forced command abort due to probe execution timeout.
sets the maximum time in seconds to execute the probe.
defaults: 10 secondes
BEWARE: Forced abort is local and may causes broken pipe connection
where remote commands can continue to execute without returning any results.
-timeout [value]
number of seconds on the timeout option
default: 10
-update [login:password:confirm]
SQL update login credential, used for 'rcmd' and 'rcmdmgnt' command.
The 'colon' is required between the values.
If the 'read' and/or 'update' option are omitted, they will be prompted.
-use-sudo
enforce SUDO command, required for 'probe' process without 'root login'.
NOTE: The SUDO command is auto detect for non-users, is not required.
NOTE: See: 'rcmd -help -probe'
-version
show current command verion
-with-enabled|we
select node enabled in 'probe' process.
Default: only non-enabled nodes will be selected.
-with-node-options
enable node options feature
default: disabled
You can add on /etc/rcmd.d/rcmd.conf to enable by default
set NODE_OPTIONS 1
see: -without-node-options
-without-noanswer-notify
suppresses the 'noanswer' notification sent at the end of the rcmd process.
no_match
no_response
-without-node-options
disable node options feature
default: enabled
You can add on /etc/rcmd.d/rcmd.conf to disable by default
set NODE_OPTIONS 0
see: -with-node-options
Nodelist
The 'nodelist' consists of the list of nodes that will be affected, it
can be in the following format:
1) Nodes separed by spaces.
# rcmdmgnt ... node1 node2 node3
2) Nodes separed by comma.
# rcmdmgnt ... node1,node2,node3
3) Nodes separed by spaces and/or comma.
# rcmdmgnt ... node1,node2 node3,node
4) Nodes by match mask (not valid for 'add' command).
# rcmdmgnt ... node* *node no*de
node* prefixed
*node sufixed
no*de middle
The match mask can be applied on 'users tags' and 'system tags' options.
, =head3 Users Tags
This options can be used to manipulate the nodes commands (add, delete,
assign, unassign, enable, disable, probe):
The users tags can be add and/or removed using the assign/unassign
function. They are of great help to associate identifications of groups,
application tools, specific characteristics of a node or application.
We highly recommended assigning user's tags to create affinity node
groups.
System Attributes
The system tags (or system attributes) cannot be changed, they are
automatically mapped from probe command.
The probe will run in the clients to take the system attributes. The
mapped data will be loaded into the database for queris or can be used
by 'system' operation. the process will map the following information:
system-id description
------------- --------------------------------------------
hostname: hostname information
arch: HW Archtecture
class: unix, windows, etc
cpu: Total core
core: Number of core per socket
dist: Distribution name
hardware: bare, vmware, kvm, etc
kernel: Kernel version
machineid: Machineid
manufactor: HW Vendor
memory: RAM in KB
product: HW Product
platform: 32 or 64 bit
sn: SerialNumber
socket: Number of sockets
system: AIX, Solaris, Linux, etc
threads: Number of threads per core
update: Kernel level
vendor: Distribution vendor
version: Distribution version
------------- --------------------------------------------
NOTE: The Linux Distribuitions will be classified as 'class=unix' and
'system=linux' and the distribuition name will be sets on the
'dist=distname'.
NOTE: The field 'sn' (serial number) is user-defined information. The
system operation receives this information based on the BIOS and/or
platform initialization. In most scenarios, this information must be
normalized by customers to establish the real value.
ENDED