1. 17 Oct, 2008 6 commits
  2. 16 Oct, 2008 8 commits
    • Iustin Pop's avatar
      Enable gnt-cluster modify to hv/beparams · 779c15bb
      Iustin Pop authored
      This patch enables the cluster modify to change:
        - enabled hypervisor list
        - hvparams (per hypervisor)
        - beparams (only the default group)
      
      Syntax:
        gnt-cluster modify -B vcpus=3 -H xen-pvm:no_initrd_path
      
      Validation for parameters is somewhat missing - the individual
      hypervisors will be checked for syntax and validation, but beparams
      doesn't have validation yes (nowhere), it should be added here once we
      have a global method (will come soon).
      
      Reviewed-by: imsnah
      779c15bb
    • Michael Hanselmann's avatar
      rapi: Convert to new HTTP server class · 16a8967d
      Michael Hanselmann authored
      Requests are no longer logged to a separate file.
      
      Reviewed-by: amishchenko
      16a8967d
    • Iustin Pop's avatar
      Show the cluster parametrs in gnt-cluster info · 469f88e1
      Iustin Pop authored
      This is just a raw update without any special formatting.
      
      Reviewed-by: imsnah
      469f88e1
    • Oleksiy Mishchenko's avatar
      RAPI: Instance add/delete implementation. · 2f7635f4
      Oleksiy Mishchenko authored
      Reviewed-by: iustinp
      2f7635f4
    • Iustin Pop's avatar
      Fix job queue behaviour when loading jobs · 94ed59a5
      Iustin Pop authored
      Currently, if loading a job fails, the job queue code raises an
      exception and prevents the proper processing of the jobs in the queue.
      We change this so that unparseable jobs are instead archived (if not
      already).
      
      Reviewed-by: imsnah
      94ed59a5
    • Iustin Pop's avatar
      Prevent master failover if we have wrong data · d5927e48
      Iustin Pop authored
      If we don't actually know the current master (as determined via voting),
      we prevent the failover.
      
      The patch also changes some messages (capitalization, typos).
      
      Reviewed-by: ultrotter
      d5927e48
    • Iustin Pop's avatar
      Improvements to the master startup checks · d7cdb55d
      Iustin Pop authored
      In order to account for future improvements to master failover, we move
      the actual data gathering capabilities from ganeti-masterd into
      bootstrap.py, and we leave only the verification into masterd.
      
      The verification procedure is then changed to retry multiple times (up
      to one minute) in case most nodes do not respond, and also the algorithm
      is changed to require at least half (but not half+1) votes, since our
      vote also should count (and we vote for ourselves).
      
      Example for consistent (config-wise) cluster:
        - 5 node cluster, 2 nodes down: still start
        - 4 node cluster, 2 nodes down: retry for one minute, abort
      
      Reviewed-by: ultrotter
      d7cdb55d
    • Iustin Pop's avatar
      Add an interface for the drain flag changes/query · 3ccafd0e
      Iustin Pop authored
      This adds the set/reset in the jqueue and luxi modules, and a way to
      query it in OpQueryConfigValues, and also the comand line interface for
      it:
      $ gnt-cluster queue info
      The drain flag is unset
      $ gnt-cluster queue drain
      $ gnt-cluster queue info
      The drain flag is set
      $ gnt-cluster queue undrain
      $ gnt-cluster queue info
      The drain flag is unset
      
      The choice of making the setting via luxi and not an opcode is that
      opcodes can't be executed when drained, but we don't query via luxi
      since in the future it might become a cluster property as opposed to a
      node one.
      
      Reviewed-by: imsnah
      3ccafd0e
  3. 15 Oct, 2008 6 commits
  4. 14 Oct, 2008 20 commits
    • Iustin Pop's avatar
      grow-disk: wait until resync is completed · 6605411d
      Iustin Pop authored
      The patch adds a new ‘--no-wait-for-sync’ parameter to grow-disk similar
      to the one in instance add, and changes the default to wait.
      
      This is cleaner as at the moment when the command returns, we either
      have a fully synced disk or there is an error.
      
      This is a forward-port of rev 1183 on the 1.2 branch.
      
      Reviewed-by: ultrotter
      6605411d
    • Iustin Pop's avatar
      Convert the KVM hypervisor to hvparams · 6b5605e8
      Iustin Pop authored
      I'm not sure which parameters it should use, I took all I saw in the
      code. Update: ultrotter says the list is OK for now.
      
      Reviewed-by: ultrotter
      6b5605e8
    • Iustin Pop's avatar
      Some fixes related to auto_balance · c0f2b229
      Iustin Pop authored
      Change the constant name to match the value (autobalance ->
      auto_balance).
      
      Also add the auto_balance header so that gnt-instance can list it.
      
      Reviewed-by: ultrotter
      c0f2b229
    • Iustin Pop's avatar
      Fix auto_balance and memory modification · 647a5d80
      Iustin Pop authored
      The secondary nodes should not be checked for free memory in case of non
      auto-balanced instances.
      
      This is a forward-port from rev 1567 on the 1.2 branch.
      
      Reviewed-by: ultrotter
      647a5d80
    • Iustin Pop's avatar
      Use the auto_balance in cluster verify · 3924700f
      Iustin Pop authored
      This patch changes the cluster verify in two ways:
        - do not use instances marked with auto_balance=False in N+1 memory
          checks
        - report, if any, the number of instances with auto_balance=False
      
      Forward port from rev 1562 on the 1.2 branch.
      
      Reviewed-by: ultrotter
      3924700f
    • Iustin Pop's avatar
      Fix ordering of instance/nodes · c1f1cbb2
      Iustin Pop authored
      After the locking changes, and the partial locking of nodes, the
      instance/node list is not ordered anymore. Reorder so that it behaves as
      before.
      
      Reviewed-by: ultrotter
      c1f1cbb2
    • Iustin Pop's avatar
      Remove old instance attributes · bf766476
      Iustin Pop authored
      Reviewed-by: ultrotter
      bf766476
    • Iustin Pop's avatar
      Change over to beparams · 338e51e8
      Iustin Pop authored
      This big patch changes the master code to use the beparams. Errors might
      have crept in, but it passes a small burnin.
      
      Reviewed-by: ultrotter
      338e51e8
    • Iustin Pop's avatar
      Change the backend to use the beparams · 51de46bf
      Iustin Pop authored
      The backend.FinalizeExport function is changed to use the beparams
      instead of the instance attributes. Future enhancements should be done
      in order to export and import/reuse the whole be/hv params.
      
      Reviewed-by: ultrotter
      51de46bf
    • Iustin Pop's avatar
      Change hypervisors to use the beparams · 8b3fd458
      Iustin Pop authored
      This patch changes the hypervisor functions to use the beparams dict
      instead of the instance attributes.
      
      Reviewed-by: ultrotter
      8b3fd458
    • Iustin Pop's avatar
      Correctly fill the beparams too over RPC · 5b442704
      Iustin Pop authored
      As for the hvparams, we need to replace the sent instance beparams.
      
      Reviewed-by: ultrotter
      5b442704
    • Iustin Pop's avatar
      Add cli function for beparams validation · a604f165
      Iustin Pop authored
      This is used to validate the parameters in both “gnt-instance add” and
      “gnt-backup import”.
      
      Reviewed-by: ultrotter
      a604f165
    • Iustin Pop's avatar
      Modify the beparams constants · cd3ab26e
      Iustin Pop authored
      Memory is renamed for easier use.
      
      Reviewed-by: ultrotter
      cd3ab26e
    • Iustin Pop's avatar
      Fix a bug with instance creation and hvparameters · 8705eb96
      Iustin Pop authored
      When creating an instance, we need to check not the opcode hvparams, but
      the final, filled hvparams against validity. While we do this for the
      remote node calls (i.e. ValidateParams), we didn't do this for
      CheckParameterSyntax.
      
      Reviewed-by: imsnah
      8705eb96
    • Iustin Pop's avatar
      Allow instance info to only query the config file · 57821cac
      Iustin Pop authored
      This patch adds a new '-s' parameter to ‘gnt-instance info’ that makes
      it return only 'static' information. This is much faster, especially for
      drbd instances.
      
      This is a forward-port of rev 1570 on the ganeti-1.2 branch, resending
      due to some conflicts.
      
      Reviewed-by: imsnah
      57821cac
    • Iustin Pop's avatar
      Convert gnt-instance info to the hvparams model · 24838135
      Iustin Pop authored
      Some informations are not printed nicely (e.g. “virtual CDROM: False”),
      but this is the first step.
      
      Reviewed-by: imsnah
      24838135
    • Iustin Pop's avatar
      Change gnt-instance modify to the hvparams model · 74409b12
      Iustin Pop authored
      Reviewed-by: imsnah
      74409b12
    • Iustin Pop's avatar
      Change gnt-instance list to the hvparams model · 5018a335
      Iustin Pop authored
      This is just a change of the various hvm_ and pvm parameters to the hv
      model. Parameters are queried via hv/$name or via the whole dict as
      returned by hvparams.
      
      Reviewed-by: ultrotter,imsnah
      5018a335
    • Iustin Pop's avatar
      Switch instance hypervisor parameters to hvparams · 6785674e
      Iustin Pop authored
      This big patch changes instance create to the new hvparams structure.
      Old parameters are removed, so old jobs or old instances file will break
      current clusters.
      
      Reviewed-by: ultrotter
      6785674e
    • Iustin Pop's avatar
      Temporary fix for dual hvm/pvm instances · f23b5ae8
      Iustin Pop authored
      We have a problem with the current model of combining instance lists
      from multiple hypervisors: we don't allow duplicates, but "xm list"
      gives the same output for both pvm and hvm. This is a lack in the actual
      xen hypervisor implementation/split between pvm and hvm, but for now we
      implement a weak workaround: identical instance params will be allowed,
      and merged. This breaks because there is a delta in listing, and should
      be treated as temporary workaround only.
      
      Note that there are two cases for duplicate instance: the above one (xen
      is the same, whether pvm or hvm), and the other case, the real error,
      when we have two different hypervisors reporting the same instance name.
      The latter case needs to be handled better (not by refusing to list the
      instances in the backend).
      
      Reviewed-by: ultrotter
      f23b5ae8