1. 28 Apr, 2014 1 commit
    • Apollon Oikonomopoulos's avatar
      daemon-util: support for daemons loaded on demand · 324cd7bf
      Apollon Oikonomopoulos authored
      
      
      We add a second category of daemons in daemon-util, those that are
      started on demand and should not be started by the start_all action, but
      should be stopped during service shutdown. This category currently
      includes metad and kvmd.
      
      To this end we introduce two more array variables:
      
       - ON_DEMAND_DAEMONS: currently holds kvmd and metad, which should only
         be stopped during stop-all.
      
       - ALL_DAEMONS: is the union of DAEMONS and ON_DEMAND_DAEMONS, i.e. the
         list of all known daemons.
      
      We also change the daemon-util test to expect kvmd and metad in the stop
      daemon list.
      Signed-off-by: default avatarApollon Oikonomopoulos <apoikos@gmail.com>
      Reviewed-by: default avatarJose A. Lopes <jabolopes@google.com>
      324cd7bf
  2. 02 Apr, 2014 1 commit
  3. 27 Feb, 2014 1 commit
  4. 14 Feb, 2014 1 commit
  5. 12 Feb, 2014 1 commit
  6. 05 Feb, 2014 1 commit
  7. 20 Jan, 2014 1 commit
  8. 16 Oct, 2013 1 commit
  9. 24 Jul, 2013 1 commit
    • Apollon Oikonomopoulos's avatar
      daemon-util: pass --oknodo at rotate_logs · 9a8e4b73
      Apollon Oikonomopoulos authored
      
      
      daemon-util's rotate_logs() did not pass --oknodo to start-stop-daemon while
      HUPing the daemon processes. As a result, rotate_logs would fail for a
      non-running daemon causing rotate_all_logs to exit prematurely.
      
      We can fix this by either passing --oknodo to start-stop-daemon, or have
      rotate_all_logs ignore any errors. The former is probably a safer approach - as
      it doesn't mask any potential coding errors in rotate_logs - and is also
      semantically correct (we only care about log rotation if a daemon is actually
      running).
      Signed-off-by: default avatarApollon Oikonomopoulos <apoikos@gmail.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      9a8e4b73
  10. 23 Jul, 2013 1 commit
  11. 18 Jul, 2013 1 commit
  12. 17 Jul, 2013 2 commits
  13. 11 Jul, 2013 1 commit
  14. 29 May, 2013 1 commit
  15. 21 Mar, 2013 1 commit
  16. 20 Nov, 2012 1 commit
  17. 08 Oct, 2012 1 commit
    • Iustin Pop's avatar
      Merge ganeti-master-cleaner back into ganeti-cleaner · 46118ed2
      Iustin Pop authored
      As I wrote during/after the review on commit 2958c56e
      
      , “ganeti-cleaner:
      Separate queue cleaning code”, while I appreciated the permission
      separation, I didn't like too much the file-based approach:
      
      - it is a very simple script, and lots of the code is duplicated
        between the two; I wouldn't like to see "ganeti-vmcapable-cleaner",
        "ganeti-master-candidate-cleaner", etc. in the future
      - ganeti-master-cleaner "pollutes" the namespace, creating
        tab-completion conflicts with ganeti-masterd
      
      This patch simply merges the master-cleaner back into cleaner, while
      keeping the separate user permissions scheme, separate log files, etc.
      
      Additionally, it fixes two bugs in the unit-test (not run with set -u
      and wrong path in the master-cleaner log files test; yay for even
      worse safety than Python?).
      
      And finally, since we have now support for --help-completion, it adds
      bash completion support for this script :) (needs to be applied on top
      of my argument support patch series).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      46118ed2
  18. 28 Sep, 2012 1 commit
  19. 27 Sep, 2012 2 commits
  20. 21 Sep, 2012 1 commit
  21. 12 Jun, 2012 1 commit
    • Iustin Pop's avatar
      Fix daemon-util with non-root user models · 3c29e49d
      Iustin Pop authored
      Commit 4b42c3d6
      
       broke non-root user mode since, while trying to do a
      cleanup a move all local variable definitions to the start of the
      function; however, the plain_name var is only defined later, so this
      actually doesn't work.
      
      Note that enabling set -u doesn't _directly_ work, since we rely on
      some variables which are usually undefined (EXTRA_*_ARGS, etc.). It
      can be fixed, but in a later patch.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      3c29e49d
  22. 23 May, 2012 1 commit
  23. 21 May, 2012 1 commit
  24. 28 Mar, 2012 1 commit
    • Michael Hanselmann's avatar
      ganeti.initd: Add “status” action · 8e2ed2e8
      Michael Hanselmann authored
      
      
      Eric Rostetter sent a patch adding a “status” action, but unfortunately
      his code was apparently specific to Red Hat. I hope this implementation
      is more distribution-agnostic; after all “status_of_proc” is part of
      LSB. Example output:
      
      $ /etc/init.d/ganeti status
      ganeti-noded is not running ... failed!
      ganeti-masterd is running.
      ganeti-rapi is running.
      ganeti-confd is running.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      8e2ed2e8
  25. 21 Dec, 2011 1 commit
    • Michael Hanselmann's avatar
      serializer: Remove JSON indentation and dict key sorting · a182a3ed
      Michael Hanselmann authored
      
      
      Serializing to JSON using “simplejson” is significantly slower when
      indentation and/or sorting of dictionary keys is used. In simplejson 1.x
      the difference isn't that big, but with simplejson 2.x the difference
      can be up to a factor of 7.5. The reason is that the latter no longer
      uses C functions when sorting or indentation is used.
      
      With this patch we revert everything to simplejson's defaults, which
      should provide us with the best performance available.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      a182a3ed
  26. 17 Nov, 2011 1 commit
  27. 30 Aug, 2011 1 commit
  28. 25 Aug, 2011 1 commit
  29. 19 Aug, 2011 1 commit
  30. 05 Aug, 2011 1 commit
  31. 04 Aug, 2011 1 commit
  32. 24 Mar, 2011 1 commit
  33. 06 Jan, 2011 1 commit
  34. 16 Dec, 2010 1 commit
    • Michael Hanselmann's avatar
      ensure-dirs: Speed up when using big queues · 196d70fa
      Michael Hanselmann authored
      
      
      The “ensure-dirs” script as included in Ganeti 2.3 is very slow when
      working with big queues requiring a change of permissions on many or all
      files.
      
      $ find /var/lib/ganeti/queue/ | wc -l
      52354
      
      Before this change:
      $ time /usr/local/lib/ganeti/ensure-dirs -f
      real    16m4.739s
      
      While not adressed in this patch, I'd like to record the overall
      ineffiency of the “ensure-dirs” script, even after this change:
      
      $ time /usr/local/lib/ganeti/ensure-dirs -f
      real    5m57.362s
      […]
      $ strace -e clone,execve -f -c /usr/local/lib/ganeti/ensure-dirs -f
      % time     seconds  usecs/call     calls    errors syscall
      ------ ----------- ----------- --------- --------- ----------------
       50.08    5.147090          49    104774           clone
       49.92    5.131094          49    104739           execve
      
      More changes will be needed. Just for comparision, a small Python
      snippet changing permissions on all files (“ensure-dirs” changes the
      owner too):
      
      $ time python -c 'import os; from ganeti import utils;
      [os.chmod(i, 0644) for i in
      utils.ListVisibleFiles("/var/lib/ganeti/queue/archive/big")]'
      real    0m0.605s
      […]
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      196d70fa
  35. 29 Nov, 2010 2 commits
  36. 19 Nov, 2010 1 commit
  37. 16 Nov, 2010 1 commit