Skip to content
Snippets Groups Projects
  1. Sep 29, 2008
    • Iustin Pop's avatar
      Add opcode execution log in job info · 5b23c34c
      Iustin Pop authored
      This patch adds the job execution log in “gnt-job info” and also allows
      its selection in “gnt-job list” (however here it's not very useful as
      it's not easy to parse). It does this by adding a new field in the query
      job call, named ‘oplog’.
      
      With this, one can get a very clear examination of the job. What remains
      to be added would be timestamps for start/stop of the processing for the
      job itself and its opcodes.
      
      Reviewed-by: imsnah
      5b23c34c
    • Iustin Pop's avatar
      Add a info subcommand to gnt-job · 191712c0
      Iustin Pop authored
      Currently, it is hard to examine a job in detail; the output of ‘gnt-job
      list’ is not easy to parse.
      
      The patch adds a ‘gnt-job info’ command that is (vaguely) similar to
      ‘gnt-instance info’ in that it shows in a somewhat easy to understand
      format the details of a job.
      
      The result formatter is the most complicated part, since the results are
      not standardized; the code attempts to format nicely the most common
      result types (as taken from a random job list), via a generic algorithm.
      
      Reviewed-by: imsnah
      191712c0
    • Iustin Pop's avatar
      Implement job summary in gnt-job list · 60dd1473
      Iustin Pop authored
      It is not currently possibly to show a summary of the job in the output
      of “gnt-job list”. The closes is listing the whole opcode(s), but that
      is too verbose. Also, the default output (id, status) is not very
      useful, unless one looks for (and knows about) an exact job ID.
      
      The patch adds a “summary” description of a job composed of the list of
      OP_ID of the individual opcodes. Moreover, if an opcode has a ‘logical’
      target in a certain opcode field (e.g. start instance has the instance
      name as the target), then it is included in the formatting also. It's
      easier to explain via a sample output:
      
      gnt-job list
      ID Status  Summary
      1  error   NODE_QUERY
      2  success NODE_ADD(gnta2)
      3  success CLUSTER_QUERY
      4  success NODE_REMOVE(gnta2.example.com)
      5  error   NODE_QUERY
      6  success NODE_ADD(gnta2)
      7  success NODE_QUERY
      8  success OS_DIAGNOSE
      9  success INSTANCE_CREATE(instance1.example.com)
      10 success INSTANCE_REMOVE(instance1.example.com)
      11 error   INSTANCE_CREATE(instance1.example.com)
      12 success INSTANCE_CREATE(instance1.example.com)
      13 success INSTANCE_SHUTDOWN(instance1.example.com)
      14 success INSTANCE_ACTIVATE_DISKS(instance1.example.com)
      15 error   INSTANCE_CREATE(instance2.example.com)
      16 error   INSTANCE_CREATE(instance2.example.com)
      17 success INSTANCE_CREATE(instance2.example.com)
      18 success INSTANCE_ACTIVATE_DISKS(instance1.example.com)
      19 success INSTANCE_ACTIVATE_DISKS(instance2.example.com)
      20 success INSTANCE_SHUTDOWN(instance1.example.com)
      21 success INSTANCE_SHUTDOWN(instance2.example.com)
      
      This is done by a simple change to the opcode classes, which allows an
      opcode to format itself. The additional function is small enough that it
      can go in opcodes.py, where it could also be used by a client if needed.
      
      Reviewed-by: imsnah
      60dd1473
  2. Sep 27, 2008
  3. Sep 11, 2008
  4. Sep 10, 2008
  5. Sep 08, 2008
  6. Sep 02, 2008
  7. Sep 01, 2008
  8. Aug 29, 2008
  9. Aug 18, 2008
  10. Aug 15, 2008
  11. Aug 13, 2008
  12. Aug 08, 2008
  13. Aug 06, 2008
  14. Aug 04, 2008
    • Iustin Pop's avatar
      Implement job submission for scripts · 94428652
      Iustin Pop authored
      This patch adds the infrastructure for executing a job in background,
      instead of foreground, via a new “--submit” option. The behaviour is
      that the job ID is printed and the script will immediately exit.
      
      The patch also converts gnt-node list to this model (yes, this will be a
      query in the future).
      
      Reviewed-by: imsnah
      94428652
  15. Jul 30, 2008
    • Iustin Pop's avatar
      Fix cluster destroy · 140aa4a8
      Iustin Pop authored
      With the recent startup/shutdown changes (and with the master daemon in
      place), the cluster destroy needs some fixing.
      
      This patch moves the finalization of the destroy out from cmdlib into
      bootstrap, so we can nicely shutdown the rapi and master daemons.
      
      Reviewed-by: ultrotter
      140aa4a8
    • Iustin Pop's avatar
      Fix gnt-cluster getmaster · ce7151ae
      Iustin Pop authored
      This is special in the sense that it can run on any node. As such, we
      just instantiate ssconf and read the data from it.
      
      Reviewed-by: ultrotter
      ce7151ae
    • Iustin Pop's avatar
      Rework master startup/shutdown/failover · b1b6ea87
      Iustin Pop authored
      This (big) patch reworks the master startup/shutdown and the fixes the
      master failover.
      
      What does the patch do?
      
      For master start/stop:
        - remove the old ganeti-master script and its associated man page
        - moves the ip start/stop directly into the backend.(Start|Stop)Master
        - adds start/stop of the master/rapi daemon into these functions,
          selectively based on the start/stop arguments
        - makes the master call via rpc StartMaster(start_daemons=False) to
          the local node so that the master IP is started
        - and finally changes the example init.d script to directly start and
          stop all three daemons, since they do the right thing (depending on
          master/not master role)
      
      For master failover:
        - moves the code from LUMasterFailover into bootstrap.MasterFailover,
          since we need to start/stop the master during this operation and
          thus it can't be executed from the master
        - removes the LUMasterFailover and its associated opcode
      
      Notes: ubuntu's /etc/lsb-base-logging.sh is dumb, so the messages 'not
      master' are not seen during startup on non-master nodes.
      
      Reviewed-by: ultrotter
      b1b6ea87
  16. Jul 28, 2008
  17. Jul 24, 2008
  18. Jul 23, 2008
  19. Jul 14, 2008
  20. Jul 11, 2008
  21. Jul 03, 2008
  22. Jul 01, 2008
  23. Jun 27, 2008
    • Guido Trotter's avatar
      AddNode: move the initial setup to boostrap · 827f753e
      Guido Trotter authored
      From the master node we can't start ssh and connect to the remote node,
      nor we can do it from ganeti-noded as this ssh section will possibly ask
      for key confirmation and password. So the code to copy the ganeti-noded
      password and SSL key has been moved to bootstrap.py, and it's called by
      gnt-node before the AddNode opcode.
      
      Reviewed-by: iustinp
      827f753e
    • Guido Trotter's avatar
      AddNode: Check for node existance · 05ccd983
      Guido Trotter authored
      In the "new world" we'll need to setup ganeti-noded via ssh on the node
      before calling the AddNode opcode. Before doing it we'll check that the
      node is not already in the cluster, if --readd was not passed. This
      guarantees we're not going to restart ganeti-noded on a running node.
      
      This patch also incidentally fixes a non-style-guide conformant
      docstring.
      
      Reviewed-by: iustinp
      05ccd983
  24. Jun 25, 2008
    • Michael Hanselmann's avatar
      Cleanup old DRBD 0.7.x code · 00fb8246
      Michael Hanselmann authored
      Apparently there were still some leftovers. While removing an instance,
      I got the message "unhandled exception 'module' object has no attribute
      'LD_MD_R1'".
      
      Reviewed-by: iustinp
      00fb8246
  25. Jun 23, 2008
    • Iustin Pop's avatar
      Fix gnt-cluster “command” and “copyfile” · b3989551
      Iustin Pop authored
      Since the disabling of forking in the master daemon, the two ssh-based
      subcommands were not working anymore. However, there is no need at all
      for the commands to be run from the master daemon (permissions to read
      the cluster private ssh key notwithstanding), they can be run directly
      from the command line utilities.
      
      The patch removes the two opcodes OpRunClusterCommand and
      OpClusterCopyFile (and their associated LUs) and changes the code in
      ‘gnt-cluster’ to query the list of nodes and run directly the SshRunner
      over the list. As such, all forking is done from the gnt-cluster script,
      and the commands are working again.
      
      Reviewed-by: imsnah
      b3989551
  26. Jun 22, 2008
    • Iustin Pop's avatar
      Add a ‘tags’ field to instance and node listing · 130a6a6f
      Iustin Pop authored
      Currently there isn't any easy way to list all nodes or instance and
      their tags; you have to query each node in turn, or list all the tags
      via something like “gnt-cluster search-tags '.*'”. Of course, this is
      not optimal.
      
      The patch adds a new fields to “gnt-instance list” and “gnt-node list”
      called ‘tags’, that will list the tags of the object in comma-separated
      form. This field will be empty if there are no tags (when using a
      separator this output can still be parsed by other scripts).
      
      At opcode level, there is a new fields called ‘tags’ that returns a
      (python) list of the object tags.
      
      Reviewed-by: ultrotter
      130a6a6f
Loading