xenial (8) gnt-debug.8.gz

Provided by: ganeti-2.15_2.15.2-3_all bug

Name

       gnt-debug - Debug commands

Synopsis

       gnt-debug {command} [arguments...]

DESCRIPTION

       The gnt-debug is used for debugging the Ganeti system.

COMMANDS

   IALLOCATOR
       iallocator  [--debug]  [--dir  DIRECTION]  {--algorithm ALLOCATOR } [--mode MODE] [--mem MEMORY] [--disks
       DISKS] [--disk-template TEMPLATE] [--nics NICS] [--os-type OS] [--vcpus VCPUS] [--tags TAGS] {instance}

       Executes a test run of the iallocator framework.

       The command will build input for a given iallocator script  (named  with  the  --algorithm  option),  and
       either  show  this  input  data (if DIRECTION is in) or run the iallocator script and show its output (if
       DIRECTION is out).

       If the MODE is allocate, then an instance definition is built from the other arguments and  sent  to  the
       script, otherwise (MODE is relocate) an existing instance name must be passed as the first argument.

       This   build   of   Ganeti   will   look   for   iallocator   scripts   in   the  following  directories:
       /usr/local/lib/ganeti/iallocators,/usr/lib/ganeti/iallocators; for more details about this framework, see
       the HTML or PDF documentation.

   DELAY
       delay [--debug] [--no-master] [--interruptible] [-n NODE...] {duration}

       Run  a test opcode (a sleep) on the master and on selected nodes (via an RPC call).  This serves no other
       purpose but to execute a test operation.

       The -n option can be given multiple times to select the nodes for the RPC call.  By  default,  the  delay
       will also be executed on the master, unless the --no-master option is passed.

       The  --interruptible  option  allows  a  running  delay  opcode to be interrupted by communicating with a
       special domain socket.  If any data is sent to the socket, the delay opcode terminates.  If  this  option
       is used, no RPCs are performed, but locks are still acquired.

       The delay argument will be interpreted as a floating point number.

   SUBMIT-JOB
       submit-job [--verbose] [--timing-stats] [--job-repeat N] [--op-repeat N] [--each] {opcodes_file...}

       This  command builds a list of opcodes from files in JSON format and submits a job per file to the master
       daemon.  It can be used to test options that are not available via command line.

       The verbose option will additionally display the corresponding job IDs and the progress  in  waiting  for
       the jobs; the timing-stats option will show some overall statistics inluding the number of total opcodes,
       jobs submitted and time spent in each stage (submit, exec, total).

       The job-repeat and op-repeat options allow to submit multiple copies of the passed arguments;  job-repeat
       will  cause  N  copies  of  each  job (input file) to be submitted (equivalent to passing the arguments N
       times) while op-repeat will cause N copies of each of the opcodes in the file to be executed  (equivalent
       to each file containing N copies of the opcodes).

       The  each  option  allow  to  submit  each job separately (using N SubmitJob LUXI requests instead of one
       SubmitManyJobs request).

   TEST-JOBQUEUE
       test-jobqueue

       Executes a few tests on the job queue.  This command might generate failed jobs deliberately.

   LOCKS
       locks [--no-headers] [--separator=*SEPARATOR*] [-v]
       [-o [+]FIELD,...] [--interval=*SECONDS*]

       Shows a list of locks in the master daemon.

       The --no-headers option will skip the initial header line.  The  --separator  option  takes  an  argument
       which denotes what will be used between the output fields.  Both these options are to help scripting.

       The -v option activates verbose mode, which changes the display of special field states (see ganeti(7)).

       The -o option takes a comma-separated list of output fields.  The available fields and their meaning are:

       mode   Mode in which the lock is currently acquired (exclusive or shared)

       name   Lock name

       owner  Current lock owner(s)

       pending
              Threads waiting for the lock

       If the value of the option starts with the character +, the new fields will be added to the default list.
       This allows one to quickly see the default list plus a few other fields, instead of retyping  the  entire
       list of fields.

       Use --interval to repeat the listing.  A delay specified by the option value in seconds is inserted.

   METAD
       metad echo text

       Tests the WConf daemon by invoking its echo function.

       A given text is sent to Metad through RPC, echoed back by Metad and printed to the console.

   WCONFD
       wconfd echo text

       Tests the WConf daemon by invoking its echo function.

       A given text is sent to WConfd through RPC, echoed back by WConfd and printed to the console.

       wconfd cleanuplocks

       A request to clean up all stale locks is sent to WConfd.

       wconfd listlocks jid

       A request to list the locks owned by the given job id is sent to WConfd and the answer is displayed.

       wconfd listalllocks

       A  request  to  list  all  locks  in  use,  directly  or  indirectly, is sent to WConfd and the answer is
       displayed.

       wconfd listalllocks

       A request to list all locks in use, directly or indirectly, together with their respective direct  owners
       is sent to WConfd and the answer is displayed.

       wconfd flushconfig

       A request to ensure that the configuration is fully distributed to the master candidates.

REPORTING BUGS

       Report  bugs  to  project  website (http://code.google.com/p/ganeti/) or contact the developers using the
       Ganeti mailing list (ganeti@googlegroups.com).

SEE ALSO

       Ganeti overview and  specifications:  ganeti(7)  (general  overview),  ganeti-os-interface(7)  (guest  OS
       definitions), ganeti-extstorage-interface(7) (external storage providers).

       Ganeti  commands:  gnt-cluster(8) (cluster-wide commands), gnt-job(8) (job-related commands), gnt-node(8)
       (node-related  commands),  gnt-instance(8)  (instance   commands),   gnt-os(8)   (guest   OS   commands),
       gnt-storage(8)   (storage   commands),   gnt-group(8)  (node  group  commands),  gnt-backup(8)  (instance
       import/export commands), gnt-debug(8) (debug commands).

       Ganeti daemons: ganeti-watcher(8) (automatic instance restarter), ganeti-cleaner(8) (job queue  cleaner),
       ganeti-noded(8) (node daemon), ganeti-rapi(8) (remote API daemon).

       Ganeti  htools: htools(1) (generic binary), hbal(1) (cluster balancer), hspace(1) (capacity calculation),
       hail(1) (IAllocator plugin), hscan(1) (data gatherer from remote clusters), hinfo(1) (cluster information
       printer), mon-collector(7) (data collectors interface).

       Copyright (C) 2006-2015 Google Inc.  All rights reserved.

       Redistribution  and  use in source and binary forms, with or without modification, are permitted provided
       that the following conditions are met:

       1.  Redistributions of source code must retain the above copyright notice, this list  of  conditions  and
       the following disclaimer.

       2.  Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
       the following disclaimer in the documentation and/or other materials provided with the distribution.

       THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY  EXPRESS  OR  IMPLIED
       WARRANTIES,  INCLUDING,  BUT  NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
       PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE  FOR
       ANY  DIRECT,  INDIRECT,  INCIDENTAL,  SPECIAL,  EXEMPLARY,  OR  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
       LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF  USE,  DATA,  OR  PROFITS;  OR  BUSINESS
       INTERRUPTION)  HOWEVER  CAUSED  AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
       TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE  OF  THIS  SOFTWARE,  EVEN  IF
       ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.