Skip to content
Snippets Groups Projects
  1. Jan 23, 2009
    • Iustin Pop's avatar
      Make iallocator work with offline nodes · 1325da74
      Iustin Pop authored
      This patch changes the iallocator framework to work with and properly
      export to plugins offline nodes. It does this by only exporting the
      static configuration data for those nodes, and not attempting to parse
      the runtime data.
      
      The patch also fixes bugs in iallocator related to the RpcResult
      conversion, changes the should_run to admin_up attribute name (as per
      the internals change), and adds “-I” as a short option for
      “--iallocator” in gnt-instance, gnt-backup and burnin.
      
      Reviewed-by: ultrotter
      1325da74
    • Iustin Pop's avatar
      Rework the execution model in burnin · c723c163
      Iustin Pop authored
      This patch changes (significantly) the execution model in burnin:
        - for all runs, (almost) all instance mods in a single Burn* procedure
          are done as part of a job; so for example add disk, stop, remove
          disk, start are no longer done as separate jobs but as a single job
          consisting of four opcodes
        - for parallel runs, all Burn* procedures except the rename (which
          uses a single target name) run in parallel; before, only the
          creation was done in parallel
        - due to the single-job execution and also parallel execution, the
          logging messages are no longer happening synchronously with the
          execution, so they are more informative than an actual execution log
      
      The end result is that burnin now tests properly multi-opcode jobs and
      also tests all opcodes (except rename) for parallel execution.
      
      Note: On a test cluster, parallelization reduces burnin time from 23m to
      15m.
      
      Reviewed-by: ultrotter
      c723c163
  2. Jan 20, 2009
    • Iustin Pop's avatar
      Fix burnin problems when using http checks · 5dc626fd
      Iustin Pop authored
      The urllib2 module has very bad error handling. This patch changes to urllib
      which is simpler, and we derive a custom class from the FancyURLopener. Burning
      is no longer keeping sockets in CLOSE_WAIT state with this patch.
      
      Reviewed-by: ultrotter
      5dc626fd
  3. Jan 16, 2009
    • Iustin Pop's avatar
      burnin: only call self.GrowDisks() if needed · aa089b65
      Iustin Pop authored
      In case we pass --disk-grow 0[,0..] then we should not call GrowDisks as it
      prints confusing log lines.
      
      Reviewed-by: imsnah
      aa089b65
    • Iustin Pop's avatar
      burnin: add option to not remove instances · 320eda24
      Iustin Pop authored
      This patch adds a burnin option to keep instances at the end, so that
      debugging after a burnin failure is easier.
      
      Also, we reorder the command line parsing and client query so that one
      can use ./tools/burnin --help even on non-ganeti machines.
      
      Reviewed-by: ultrotter
      320eda24
  4. Jan 14, 2009
  5. Jan 13, 2009
    • Iustin Pop's avatar
      Forward port of the burnin migration · 99bdd139
      Iustin Pop authored
      This is again a copy of the latest 1.2 burnin code related to migration.
      
      Reviewed-by: ultrotter
      99bdd139
    • Iustin Pop's avatar
      burnin: redo the output formatting · 836d59d7
      Iustin Pop authored
      Since we added many more tests in burnin, the output became almost
      unreadable. This patch changes the output to an indented one, so that
      the different phases and operations of burnin are more easily
      understood.
      
      Reviwed-by: ultrotter
      836d59d7
    • Iustin Pop's avatar
      burnin: move start_stop at the end · eb61f8d3
      Iustin Pop authored
      Traditionally the start/stop test was the last, so move it back to there
      (added as last option in commit 854).
      
      Reviewed-by: amishchenko
      eb61f8d3
    • Iustin Pop's avatar
      burnin: introduce instance alive checks · 5178f1bc
      Iustin Pop authored
      This patch adds instance alive checks after most start operations. The
      check is done in a custom way:
        - the instance is expected to have an http server up and running
        - and it should server the '/hostname.txt' resource containing the
          hostname of the instance
      
      This allows checking that:
        - creation is working OK
        - start after failover (and in the future migrate) is ok
        - rename works correctly
      
      By default, the check is disabled since one needs a custom OS for this
      check.
      
      The patch also fixes a wrong variable name from a previous burnin patch.
      
      Reviewed-by: ultrotter
      5178f1bc
  6. Jan 12, 2009
  7. Jan 09, 2009
  8. Dec 02, 2008
  9. Nov 24, 2008
    • Guido Trotter's avatar
      Burner: fix ImportExport · 0ca35d45
      Guido Trotter authored
      Update the call to CreateInstance used in ImportExport to the new API for
      multidisk/nic.
      
      Reviewed-by: iustinp
      0ca35d45
  10. Nov 21, 2008
  11. Nov 20, 2008
    • Iustin Pop's avatar
      Initial multi-disk/multi-nic support · 08db7c5c
      Iustin Pop authored
      This patch adds support for mult-disk/multi-nic in:
        - instance add
        - burnin
      
      The start/stop/failover/cluster verify work as expected. Replace disk
      and grow disk are TODO.
      
      There's also a change gnt-job to allow dictionaries to be listed in
      gnt-job info.
      
      Reviewed-by: imsnah
      08db7c5c
  12. Oct 20, 2008
    • Iustin Pop's avatar
      Remove the logger.py module · 82d9caef
      Iustin Pop authored
      Since now we use only one function from the logger module
      (SetupLogging), we move it to utils.py (which is already imported by all
      users of this function), and we remove the module.
      
      Reviewed-by: imsnah
      82d9caef
  13. Oct 14, 2008
    • 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
      Burnin OpGrowDisk · 659712c8
      Iustin Pop authored
      With this patch both the os and the swap disk are grown during
      burnin. You can pass an increase size of 0 to skip this operation.
      
      and:
      
      burnin: don't try to grow diskless instances
      
          When burnin is run on a diskless instance, it fails when trying
          GrowDisk, because a non-existant disk cannot be grown. This patch
          disables the test for that disk template.
      
      This is a forward-port of revisions 1181 and 1606 on the 1.2 branch.
      
      Original author: ultrotter
      Reviewed-by: ultrotter
      659712c8
    • 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
  14. Oct 06, 2008
    • Iustin Pop's avatar
      Disable re-reading of config file · 3d3a04bc
      Iustin Pop authored
      Since the objects read from the config file are passed to the various
      threads, it's unsafe to re-read the config file (and throw away
      ConfigWriter._config_data). As such, we disable the re-reading of the
      file (since now the master is the owner the file, it makes not sense to
      re-read it), and any modifications to the file must be done offline,
      otherwise they will be overwritten.
      
      Reviewed-by: imsnah
      3d3a04bc
    • Iustin Pop's avatar
      Start implementation of parallel burnin · ec5c88dc
      Iustin Pop authored
      This patch introduces a simple framework for executing jobs in parallel
      in burnin (the ExecJobSet function) and the "--parallel" command line
      flag.
      
      The patch also changes the instance creation to run in parallel when the
      above flag is given. Error handling/instance removal is currently flacky
      with this options if there are errors in the instance creation.
      
      We also modify burnin to reuse a single client.
      
      Reviewed-by: imsnah
      ec5c88dc
  15. Sep 18, 2008
  16. Sep 12, 2008
  17. Aug 27, 2008
  18. Jul 30, 2008
    • Iustin Pop's avatar
      Unify SetupDaemon/SetupLogging · 59f187eb
      Iustin Pop authored
      The 'old-style' info, error, debug logs do not make much sense. This
      patch unifies the SetupLogging and SetupDaemon functions. As a result,
      all the commands logs to a 'commands.log' file.
      
      The patch also changes the log setup to keep going if there's an error
      in setting up the file logging but we're logging to stderr.
      
      Also, burnin now logs to its own file (burnin.log).
      
      Reviewed-by: ultrotter
      59f187eb
  19. Jul 14, 2008
    • Iustin Pop's avatar
      Improve cli.SubmitOpCode · e2212007
      Iustin Pop authored
      Currently, the feedback_fn argument to SubmitOpCode is no longer used.
      We still need it in burnin, so we re-enable it by making the code call
      that function with the msg argument in case feedback_fn is callable. The
      patch also modifies burnin to accept the new argument format (msg is not
      a triple instead of a string).
      
      The patch also removes the ‘proc’ argument as it's obsolete; instead we
      can accept a luxi.Client instance (noone uses this right now).
      
      Reviewed-by: ultrotter
      e2212007
  20. Jul 01, 2008
    • Guido Trotter's avatar
      Burnin doesn't need a Processor · 2da55f7c
      Guido Trotter authored
      In 2.0 burnin submits job to the master daemon, so it doesn't need to
      create an internal Processor anymore. Even if the processor is not used
      anywhere in the burnin code it was still initialized as a leftover of
      how burnin used to work. Fixing this.
      
      Reviewed-by: iustinp
      2da55f7c
  21. Jun 23, 2008
  22. Jun 19, 2008
  23. Jun 15, 2008
    • Guido Trotter's avatar
      Burnin: Use iallocator in import/export · f9af35c8
      Guido Trotter authored
      Currently the iallocator option is ignored by burnin at import/export
      time even if passed in. With this patch it becomes used. The log message
      used by the importer is also changed to reflect this.
      
      This patch also improves import/export on the non-iallocator case:
        - The secondary node is not passed anymore on non-mirrored templates
        - On mirrored templates the secondary node is logged
      
      Reviewed-by: imsnah
      
      f9af35c8
  24. Jun 13, 2008
  25. May 30, 2008
    • Iustin Pop's avatar
      LURemoveInstance: fix op.ignore_failures usage · 5c54b832
      Iustin Pop authored
      Currently: the LURemoveInstance.Exec() method uses the ignore_failures
      attribute of the OpRemoveInstance opcode, but it doesn't check for its
      existence. The patch adds this attribute to _OP_REQP and to all the
      places where this opcode was created.
      
      This attributes is always passed by gnt-instance, but burnin didn't pass
      it so it can fail if it enters the 'fail to remove disks' branch of the
      method (which is why it was not triggered until now).
      
      Reviewed-by: ultrotter, imsnah
      5c54b832
Loading