1. 08 Jun, 2009 13 commits
  2. 04 Jun, 2009 2 commits
  3. 28 May, 2009 5 commits
  4. 27 May, 2009 1 commit
    • Iustin Pop's avatar
      Add a node powercycle command · f5118ade
      Iustin Pop authored
      This (somewhat big) patch adds support for remotely rebooting the nodes
      via whatever support the hypervisor has for such a concept.
      For KVM/fake (and containers in the future) this just uses sysrq plus a
      ‘reboot’ call if the sysrq method failed. For Xen, it first tries the
      above, and then Xen-hypervisor reboot (we first try sysrq since that
      just requires opening a file handle, whereas xen reboot means launching
      an external utility).
      The user interface is:
          # gnt-node powercycle node5
          Are you sure you want to hard powercycle node node5?
          y/[n]/?: y
          Reboot scheduled in 5 seconds
      The node reboots hopefully after sending the reply. In case the clock is
      broken, “time.sleep(5)” might take ages (but then I suspect SSL
      negotiation wouldn't work).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
  5. 26 May, 2009 1 commit
  6. 22 May, 2009 12 commits
  7. 21 May, 2009 2 commits
    • Iustin Pop's avatar
      Add a luxi call for multi-job submit · 2971c913
      Iustin Pop authored
      As a workaround for the job submit timeouts that we have, this patch
      adds a new luxi call for multi-job submit; the advantage is that all the
      jobs are added in the queue and only after the workers can start
      processing them.
      This is definitely faster than per-job submit, where the submission of
      new jobs competes with the workers processing jobs.
      On a pure no-op OpDelay opcode (not on master, not on nodes), we have:
        - 100 jobs:
          - individual: submit time ~21s, processing time ~21s
          - multiple:   submit time 7-9s, processing time ~22s
        - 250 jobs:
          - individual: submit time ~56s, processing time ~57s
                        run 2:      ~54s                  ~55s
          - multiple:   submit time ~20s, processing time ~51s
                        run 2:      ~17s                  ~52s
      which shows that we indeed gain on the client side, and maybe even on
      the total processing time for a high number of jobs. For just 10 or so I
      expect the difference to be just noise.
      This will probably require increasing the timeout a little when
      submitting too many jobs - 250 jobs at ~20 seconds is close to the
      current rw timeout of 60s.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
    • Iustin Pop's avatar
      Doc fixes for RAPI · c8e0a534
      Iustin Pop authored
      After moving the documentation from the .py files to .rst, we had some
      cleanups to do.
      This fixes the formatting of the comments, improves them a little, and
      removes deprecated info (DOC_URI) from the python source.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
  8. 20 May, 2009 2 commits
  9. 19 May, 2009 2 commits
    • Iustin Pop's avatar
      Move to data-based hvparam checks instead of code · 205ab586
      Iustin Pop authored
      Currently the hypervisor parameters are checked using hard-coded snippets in
      each hypervisor. However, most parameter checks fall into three cases:
        - file check
        - directory check
        - string value in a set
      And the remaining ones are checked using simple functions.
      This patch moves to a declarative-style for these parameter checks; in
      hv_base we add the necessary infrastructure for these checks, and the
      above common cases.
      This translates into complete removal of the Check/Verify functions for
      the Xen hypervisors, and a drastic reduction for the KVM one (which has
      inter-parameter dependencies and thus can't use a simple table).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
    • Iustin Pop's avatar
      Merge commit 'origin/next' into branch-2.1 · 622533d5
      Iustin Pop authored
      * commit 'origin/next': (25 commits)
        Move more hypervisor strings into constants
        Add -H/-B startup parameters to gnt-instance
        call_instance_start: add optional hv/be parameters
        Fix gnt-job list argument handling
        Instance reinstall: don't mix up errors
        Don't check memory at startup if instance is up
        gnt-cluster modify: fix --no-lvm-storage
        LUSetClusterParams: improve volume group removal
        gnt-cluster info: show more cluster parameters
        LUQueryClusterInfo: return a few more fields
        Add the new DRBD test files to the Makefile
        Remove some superfluous imports
        Make Python interpreter selectable for test scripts
        Pass optional arguments to the daemons
        ganeti.initd: include defaults file, if present
        Fix ;; indentation in the main initd loop
        Avoid DeprecationWarning on Python >= 2.6
        ganeti-noded: add bind address option
        Fix compatibility with DRBD 8.3
        Fix compatibility with DRBD 8.2