.
ctys-vdbgen - generates databases of VMs and PMs
ctys-vdbgen
[--append] [--base=<base-path-list>] [--cacheDB=<output-db-directory-path>] [--filecontext] [--no-splitted] [--progress] [--progressall] [--replace] [--scan-all-states] [--splitted] [--splitted-keep-files] [--stdio] [--threads=<#max-number-of-parallel-scans>] [-b] [-c] [-C] [-d <debug-level>] [-h] [-H <help-options>] [-t] [-T] [-V] [-X] -- <target-list>
ctys-vdbgen generates databases containing inventory data and static generic address mapping for VMs and PMs.
The data is collectred from configuration files with additional data from prorietary vendor interfaces and stored
for usage by ctys-vhosts
(Address-Resolution).
The collection of the inventory data is perfomed by scanning local and remote machines.
The scan could be applied with by pre-defined constraints for scope and performance variation such as the operational
states of the VMs and the specific assigned hypervisors, or restrictions on the search scope for filesystem locations
limited to specific partitions or directory-subtrees.
The scan once started is executed fully automated, just an operational installation of the UnifiedSessionsManager
and access privileges for the scan-operator has to be pre-assured.
The scanned database could be shared and utilized by numerous runtime components, e.g. virtual nameservices
and graphical starters.
The facilities scale up to thousands of entries even by the usage of a spreadsheet compatible file database.
Dynamic entities without persistent data are not scanned into the database and are handled by their dynamic data only.
Dynamic entities are for now CLI, RDP, VNC, and X11 instances.
The whole automated initial creation of the cacheDB takes some Minutes for scanning filesystems
and presents than the actually available stock of VMs and PMs. The contained entities could be
addressed from than on by various attributes.
The call interfaces of all components provide for the option '-p' for the selection of alternative databases,
e.g. for specific views or pre-validation of test-scans without influence on the production environment.
The common database is shared by the whole set of utilities including commandline tools and graphical applications.
Database creation and application |
---|
The database contains the hypervisors KVM, QEMU, VBOX, VMW, and XEN, additionally PMs. For each entry also default login desktops or commandline applications are stored for automation of console interconnection as well as native logins - based on CLI, X11, VNC, and RDP.
ctys-vdbgen itself is a wrapper for ctys -a ENUMERATE=machine....
The output of the ENUMERATE action for a given list is stored into one file contained in the given <output-db-directory-path>, or "$HOME/.ctys/db/default" respectively.
The mapping contains available VMs for a given list of PMs as well as
the PMs. Multiple databases could be generated as specific access-groups which
could be selected by the standard parameter
-p
for all ctys utilities with
"cacheDB" access.
The scanned entities rely either on proprietary vendor files or interfaces, and/or
on ctys specific configuration files containing extended GuestOS information.
These documented ctys configuration files could be created by the utility
ctys-createConfVM
automatic, or interactive. Alternatively manual creation could be proceeded.
These stored configuration could be in general imported into the UnifiedSessionsManager
by the ENUMERATE action for dynamic runtime purposes as well as for storage within the database.
REMARKS:
Due to the defaults described in the following subsection for options, the call
ctys-vdbgen <host1> <host2> ...
leads to the default call
${HOME}/bin/ctys -a enumerate=machine,b:\$HOME >\ ${HOME}/.ctys/db/default/enum.fdb <host1> <host2> ...
Where the PM plugin by default additionaly checks for the PM configuration which is located in
/etc/ctys.d/pm.conf
For additional information refer to GENMCONF.
A special append-mode is supported for addition of data. This mode does a pure concatenation only, redundancy of added data is not tested. Therefore the user should be aware, when calling append mode, whether he already updated the data of that node.
The deletion of data has to be performed manually for now, a simple
ASC-II editor, MS-Excel, or the spreadsheet application of OpenOffice
could be used for this task.
The data format is described in the appendix of the ctys manual.
ATTENTION:
When debian is accessed with an automounted filesystem the internal call of
'find' command does not force the mount including recognition of the complete
contained filesystem, even worse, does this different call-by-call!
So the work-around for now is either a fixed mount, or a 'ls -R' before the scan.
.
ATTENTION:
The following options are case sensitive, thus are required literally. If not printed properly, word-options have 2 leading hyphens '-'+'-'="--".
<srcpathlst>= "${BASEPATHLST:-$DEFAULT_ENUM_BASE}\ ${BASEAPPENDLST:+%$BASEAPPENDLST}"which expands by default to
"ctys -a enumerate=machine,b:$DEFAULT_ENUM_BASE ..."All context options and suboptions will be passed through, so apply same as for ENUMERATE action.
This activates the append mode, just appending data to present fdb or creating a new if missing. The modes append, replace, and stdio are exclusive and could not be combined.
This is foreseen for addition of minor changes and avoiding
a long running recollection of each data set from each target.
Background mode, refer to common options
-b
A <base-path-list> to be scanned exclusively. This can be combined
with multiple targets and the "--append" mode for quick addition of
specific new VMs.
The path could be the contianing directory for a single VM only.
Nameservice caching mode, refer to common options
-c
Result data caching mode, refer to common options
-C
Pathname for directory containing DB file to be created. This file stores the mapping records generated from ctys-ENUMERATE literally.
The evaluation order priority and predefined default values for the directory is defined as follows:
This switches off several defaults and assumes that a configuration file with a complete CONTEXT is provided.
The explicit suppression of defaults is required, due to the addition
of chained context options for dialogue based entries from right to
left.
The evaluation of superposing options is proceeded from-left-to-right.
Thus the last wins, so the last dialogue entries have the highest
priority.
Print help, refer to "-H" for additional information.
The extended help option is based on system interfaces for display of manpages, PDF and HTML documents. This comprises the man pages and installed manuals.
For additional help refer to the documents or type ctys -H help.
This deactivates the splitted mode and passes the whole parallel operations
control to ctys controlled by the parameter
-b
This activates the formatted table output, therefore some traces are filtered and displayed in a compact overview, indicating the progress and required processing time.
For the application of the "--progress" option additionally the appropriate trace switches for the target has to be set. This is due to the required activation of the appropriate trace output for post-filtering on local machine. In case of usage of MACROS or GROUPS these could be stored permanenetly as required.
E.g. the following -d context options for the target of enumeration required to be present.
ctys-vdbgen \ --cacheDB=/home/tstusr/.ctys/db/tmp \ --append \ --base=qemu \ -- \ lab00'(-d 2,s:16,w:0,p)'
When "progress" choosen the data for each displayed instance is a
post-result, calculated as a sumup after finished processing.
For continuous display refer to "progressall".
This activates the formatted table output with continuous display,
where the data is filtered as well, but any relevant entity with an
intermidiate result is displayed.
The final sum-up data is additionally displayed as soon as the
somplete set of results for the current entity is available.
This activates the explicit replace mode, which is required when a
"enum.fdb" alread exists.
Choosing this will delete the present "enum.fdb", when the data has
to be kept, make a backup before activating this option.
The modes append, replace, and stdio are exclusive and could not be
combined.
This option ignores the actual avaiability of an appropriate hypervisor
and scans all present configurations.
This is particularly helpful for test environments, where the hypervisor
on a machine might be changed frequently.
This provides for the by-target-and-by-session splitted parallel operations.
This option utilizes the
-b seq,ser
option and establishes it's own
background and parallel operations control.
The number of parallel tasks is controlled by the environment variable
CTYS_VDBGEN_PARTARGETS which is set to DEFAULT=10.
In addition for each task a temporary cache file is created within the
cacheDB directory and kept for later analysis.
Thus e.g. in case of machine and plugin specific bug-tracing the specific
results are availabel for fast analysis.
Keeps temporary files when in 'splitted' mode.
These have to be removed manually once kept.
Writes it's output to STDOUT only.
The modes append, replace, and stdio are exclusive and could not be
combined.
Number of tasks to be scanned in parallel,
applicable for 'splitted' mode only.
Default is CTYS_VDBGEN_PARTARGETS=10.
Session type, refer to common options
-t
.
Preload of session type plugins, refer to common options
-T
Version.
Terse output format, effects "-V" when set left-of.
.
Any target to be enumerated, could be hosts and nested groups. Additional context arguments are supported, but should be added carefully, e.g. a non-applicable action like '-a CREATE' will lead to misfunction.
Current version supports lists of one or more intermixed host and groups
without suboptions.
Suboptions are provided as pre-positioned common options for all, or within
group files as CONTEXT.
The default scan options for the '--progress' indicator are set implicitly, when the option is
selected.
.
Written and maintained by Arno-Can Uestuensoez:
Maintenance: | <<acue_sf1 (a) users sourceforge net>> |
Homepage: | <https://arnocan.wordpress.com> |
Sourceforge.net: | <http://sourceforge.net/projects/ctys> |
Project moved from Berlios.de to OSDN.net: | <https://osdn.net/projects/ctys> |
Commercial: | <https://arnocan.wordpress.com> |
Copyright (C) 2008, 2009, 2010, 2011 Ingenieurbuero Arno-Can Uestuensoez
For BASE package following licenses apply,
This document is part of the DOC package,
For additional information refer to enclosed Releasenotes and License files.