Skip to content
Snippets Groups Projects
  1. Oct 10, 2007
    • Iustin Pop's avatar
      Implement gnt-node evacuate · a5bc662a
      Iustin Pop authored
      This patch adds a new 'evacuate' subcommand to gnt-node. The command
      will do a replace disks for all instances having that node as secondary
      with the new target being the new node given.
      
      The syntax is:
        gnt-node evacuate src_node target_node
      
      The command by itself doesn't do any resource checks, and instead relies
      on the LUFailoverInstance code to do that.
      
      Reviewed-by: imsnah
      a5bc662a
  2. Oct 09, 2007
    • Iustin Pop's avatar
      Implement node failover · c450e9b0
      Iustin Pop authored
      This patch implements a simple failover command for failing over all
      primary instances. This is just a batched form of gnt-instance failover.
      
      Reviewed-by: imsnah
      c450e9b0
    • Guido Trotter's avatar
      Refactor DiagnoseOS · b07a9f05
      Guido Trotter authored
      The new version debugs Hidden OSes as well.
      
      
      Reviewed-by: iustinp
      
      b07a9f05
  3. Oct 08, 2007
  4. Oct 04, 2007
  5. Oct 02, 2007
    • Guido Trotter's avatar
      Add warning on gnt-node add operation. · 99e8bbde
      Guido Trotter authored
      People might not have read all the documentation and might not expect their ssh configuration
      and specially keys to be changed. Adding this warning will inform them before it happens.
      
      Reviewed-by: iustinp
      
      99e8bbde
  6. Sep 27, 2007
  7. Sep 20, 2007
    • Iustin Pop's avatar
      Ask for confirmation when touching multiple instances · 804a1e8e
      Iustin Pop authored
      This patch makes the new startup/shutdown multi-instance operations to
      ask for confirmation when touching more than one instance (and unless
      --force-multi is given).
      
      The code is not very short, but it does present a nice (IMO) user
      interface.
      
      Reviewed-by: ultrotter
      804a1e8e
  8. Sep 19, 2007
    • Iustin Pop's avatar
      Improve the cli.AskUser() function · 47988778
      Iustin Pop authored
      This patch improves the AskUser function by allowing it to:
       - choose from multiple choices (instead of only y/n)
       - give help to the user
       - preserve line breaks and whitespace formatting in the message
      
      With this patch, an instance removal looks like this:
      root@xen-test1-4:~# gnt-instance remove tsetest1
      This will remove the volumes of the instance tsetest1 (including
      mirrors), thus removing all the data of the instance. Continue?
      y/[n]/?: ?
       y - Perform the operation
       n - Do not perform the operation
      
      This will remove the volumes of the instance tsetest1 (including
      mirrors), thus removing all the data of the instance. Continue?
      y/[n]/?: y
      
      The patch also removed the _ask_user member of the opts argument, since
      external code was using it (and thus it makes no sense for it to be a
      private member); now gnt-* scripts are using the AskUser function
      directly.
      
      Reviewed-by: ultrotter
      47988778
    • Iustin Pop's avatar
      Allow 'add instance' to not start the new instance · bdd55f71
      Iustin Pop authored
      This patch allows 'gnt-instance add' to not start the newly-created
      instance. It also allow 'gnt-instance add' and 'gnt-backup import' to
      not check for IP conflicts (only when not starting the instance).
      
      Reviewed-by: ultrotter
      bdd55f71
  9. Sep 18, 2007
    • Iustin Pop's avatar
      Implement cluster rename operation · 07bd8a51
      Iustin Pop authored
      This patch adds a new OpCode (and corresponding LU) that implements the
      cluster rename functionality.
      
      This is done by shutting down the master role, making the needed sstore
      modifications and distributing the changed files to all nodes, and then
      re-enabling the master role.
      
      The modification to the man page of gnt-cluster also moves the section
      on gnt-cluster destroy in order to correct alphabetical ordering.
      
      Reviewed-by: imsnah
      07bd8a51
    • Guido Trotter's avatar
      Fix a docstring · 4ab0b9e3
      Guido Trotter authored
      Reviewed-by: iustinp
      4ab0b9e3
  10. Sep 17, 2007
    • Iustin Pop's avatar
      Implement instance rename operation · decd5f45
      Iustin Pop authored
      This patch adds support for instance rename operation at all remaining
      layers: RPC, OpCode/LU and CLI.
      
      Reviewed-by: imsnah
      decd5f45
    • Iustin Pop's avatar
      Allow start/stop of multiple instances at once · 312ac745
      Iustin Pop authored
      This is an initial version of the multi-instance start/stop, which
      allows the gnt-instance startup and shutdown subcommands to work on
      multiple instances at once.
      
      The available selections are:
        - "gnt-instance startup --instance name..." which is the default, and
          if passed only one argument it behaves like the original command)
        - "gnt-instance startup --node name..." will work on all instances
          having either primary or secondary one of the passed names
        - "gnt-instance startup --primary name..." will work on all instances
          having primary node one of the passed names
        - "gnt-instance startup --secondary name..." will work on all
          instances having as secondary node one of the passed names
        - "gnt-instance startup --all" will work on all instances
      
      This allows a simple cluster-wide shutdown or node shutdown (or
      startup).
      
      Note that this version stops at the first error - it will not try to
      start the 2nd instance selected if there is a critical error with the
      1st one.
      
      Also note that this version is not faster than simply running manually
      "gnt-instance shutdown NAME", because it doesn't parallelize the
      shutdown/startup actions.
      
      Reviewed-by: imsnah,roman.marxer
      312ac745
  11. Sep 14, 2007
    • Iustin Pop's avatar
      Change OpQueryNodes nodes attribute to names · 246e180a
      Iustin Pop authored
      Change this to have the exact same parameters as OpQueryInstances.
      
      Also fix burnin which is broken since r146.
      
      Reviewed-by: imsnah
      246e180a
    • Iustin Pop's avatar
      Enable LUQueryInstances to work with a given list of instances · 069dcc86
      Iustin Pop authored
      As per the changes to LUQueryNodes, the QueryInstances LU is modified to
      accept a list of instances for which to compute and return information.
      
      Reviewed-by: imsnah
      069dcc86
    • Iustin Pop's avatar
      Remove OpQueryNodeData and LUQueryNodeData · 4a72cc75
      Iustin Pop authored
      Now that LUQueryNodes supports all the functionality of LUQueryNodeData,
      let's migrate gnt-node.ShowNodeConfig to use it and remove all traces of
      OpQueryNodeData and LUQueryNodeData.
      
      Reviewed-by: imsnah
      4a72cc75
    • Iustin Pop's avatar
      Change LUQueryNodes to return raw values and support selective listing · ec223efb
      Iustin Pop authored
      LUQueryNodes it's very similar to LUQueryNodeData, but it lacks two
      features:
        - instance list (it has count though), both primary and secondary
        - selective node listing
      
      In order to support these features, we change it to return raw values
      instead of stringified ones (like the recent change to LUQueryInstances)
      and to support query-ing of a restricted set of nodes.
      
      This CL also modifies the gnt-node script to conform to the new protocol
      and the opcode OpQueryNodes to support the new "nodes" attribute.
      
      Reviewed-by: imsnah
      ec223efb
  12. Sep 13, 2007
    • Iustin Pop's avatar
      Move string formatting out of LUQueryInstances · 8a23d2d3
      Iustin Pop authored
      Currently, LUQueryInstances will provide strings for its results. This makes it
      hard for other consumers than "gnt-instance list" to use the OpQueryInstances
      opcode for whatever they wish to.
      
      The change moves the formatting in five of the six cases where this happens to
      the actual gnt-instance.ListInstances procedure and removes the unconditional
      convert to string in LUQueryInstances.Exec()
      
      Reviewed-by: imsnah
      8a23d2d3
  13. Aug 30, 2007
    • Iustin Pop's avatar
      Fix the manpage gnt-instance w.r.t. units · b9ac33e9
      Iustin Pop authored
      The manpage wrongly states that the default unit for disk sizes is
      gibibytes, whereas currently it's mebibytes. Fix that and also update
      the '--help' output to display the default unit.
      
      Reviewed-by: roman.marxer
      b9ac33e9
  14. Aug 24, 2007
    • Iustin Pop's avatar
      Rework ssh known-hosts handling. · 82122173
      Iustin Pop authored
      This changes:
        - cluster setup, we no longer edit /etc/ssh/ssh_known_hosts but our
          own file
        - node add, we no longer remove root's known_hosts (twice)
        - gnt-instance console, both the LU and the script: since now the ssh
          setup is not standard, we need to build the ssh cmdline in the LU
          (instead of manually building it in the script) with the correct
          parameters and use the command line as returned in the script
        - ssh.py, many changes, split options in module-level constants so
          that building the command line in different places is easier/more
          logical
        - backend.py, we no longer remove root's known_hosts in Add node, and
          we allow our own known_hosts file to be uploaded
      
      Reviewed-by: imsnah
      82122173
  15. Aug 23, 2007
    • Iustin Pop's avatar
      Improve LURunClusterCommand · 02715459
      Iustin Pop authored
      This function used a hand-coded ssh call to remote nodes. Fix it to use the
      ssh.SSHCall function, and in the process drop the command field from the
      results, as it's too verbose and we can use (in gnt-cluster) what we passed in.
      
      Reviewed-by: schreiberal
      02715459
  16. Aug 20, 2007
  17. Aug 17, 2007
    • Iustin Pop's avatar
      Change cli.OutputTable to cli.GenerateTable · 16be8703
      Iustin Pop authored
      Since the table generation might be useful elsewhere, let's change it to
      return the data instead of directly printing it.
      
      Its callers have also been updated.
      
      Reviewed-by: imsnah
      16be8703
  18. Aug 14, 2007
    • Iustin Pop's avatar
      Style changes for pep-8 and python-3000 compliance. · 3ecf6786
      Iustin Pop authored
      This changes the raising of exceptions from:
        raise Exception, value
      to
        raise Exception(value)
      
      as the first form will be removed in python-3000 and the second form is
      preferred now.
      
      The changes also involve a few cases of changing from raising standard
      exceptions and use our own ones.
      
      The new version also fixes many pylint-generated warnings, especially in
      ganeti-noded where I changed many methods to @staticmethod.
      
      There is no functionality changed (barring any bugs).
      3ecf6786
  19. Aug 03, 2007
  20. Aug 02, 2007
  21. Jul 27, 2007
  22. Jul 26, 2007
  23. Jul 24, 2007
  24. Jul 23, 2007
    • Iustin Pop's avatar
      Big change/cleanup in relation to the master startup: · 880478f8
      Iustin Pop authored
        - move the master node name from the ConfigWriter to SimpleStore (all
          nodes need this, and it was the only thing pulled in from the
          ConfigWriter on nodes)
        - fix mcpu.py and the testing w.r.t. this change; for testing, rename
          the fake_config.py to mocks.py and add a FakeSStore object
        - then add a ganeti-master script which can be run on any node at boot
          and which will not do anything if not master on start (on stop it
          will still try to remove the ip address)
        - also add a new cluster-wide variable (master_netdev) that determines
          on which interface we add this ip address; it's customizable at
          cluster init time
        - also remove the cluster name file which was separately handled from
          ssconf (not needed anymore)
        - remove the master init.d links from the list of config files as this
          is not our responsibility now
      
      880478f8
Loading