1. 09 Mar, 2009 3 commits
    • Iustin Pop's avatar
      hbal: allow, but warn on, N+1 failed clusters · d6109e64
      Iustin Pop authored
      Based on the node changes, we remove the N+1 check and only show a
      warning instead.
      d6109e64
    • Iustin Pop's avatar
      Change the node N+1 check model · d10b27ef
      Iustin Pop authored
      Currently, we fail a new instance placement if the new node status is
      not N+1 compliant. This means that an allocation on an already N+1
      failed node still fails, even though (conceptually) we're not worse than
      before.
      
      This patch changes this model to fail the allocation *only* if the node
      was N+1 compliant before. This allows balancing to work on non-N+1 happy
      clusters, with the caveat that they probably won't be N+1 happy at the
      end.
      
      Since we skip N+1 check in some cases, we add a new “failHealth” check
      that verifies the node still has strict positive free memory and disk
      space.
      d10b27ef
    • Iustin Pop's avatar
      Show which nodes are not N+1 compliant in output · 2cf878a5
      Iustin Pop authored
      This patch adds a '*' character to nodes which are not N+1 compliant to
      the output, to help with understanding pre- and post-changes cluster
      status.
      2cf878a5
  2. 22 Feb, 2009 4 commits
    • Iustin Pop's avatar
      Don't build documentation for the Main modules · 8df5db55
      Iustin Pop authored
      This fixes the doc issue which exists since the addition of hbal. Now
      make doc makes sense again.
      8df5db55
    • Iustin Pop's avatar
      Change the total disk/mem to Double · 38f63ae6
      Iustin Pop authored
      Since we only use the totals for computations, and we always convert
      them via fromIntegral, let's just store them directly as Doubles.
      38f63ae6
    • Iustin Pop's avatar
      A no-code change s/disk/dsk/ · 962367fe
      Iustin Pop authored
      This just makes indendation nicer in many expressions.
      962367fe
    • Iustin Pop's avatar
      Compute the p_mem / p_dsk statically · 0335fe4a
      Iustin Pop authored
      This patch changes the computation of p_mem / p_dsk from on-demand
      (whenever the cluster stats are computed) to after-modify (after a node
      is modified, we update its stats). This brings a god speed-up as only
      one node or two are usually changed between cluster-wide stats are
      computed.
      0335fe4a
  3. 15 Feb, 2009 7 commits
    • Iustin Pop's avatar
      Documentation updates · d53264c0
      Iustin Pop authored
      d53264c0
    • Iustin Pop's avatar
      Simplify the checkInstanceMove function · 9dc6023f
      Iustin Pop authored
      This patch flattens the two folds into one, by simply building the whole
      list of moves instead  of the double recursion (nodes and the each
      node's moves). This has no functional change, but it's much cleaner.
      9dc6023f
    • Iustin Pop's avatar
      A small optimization in node computation · 256810de
      Iustin Pop authored
      Currently we always compute the available node list for moves (for an
      instances) based on the nodes of the initial table. This works find,
      however is a repeated calculation.
      
      We optimize this by passing a node list (of indexes, not full objects),
      which helps in two ways:
        - faster to filter later
        - allows restriction of target nodes by enforcing only this subset as
          target for moves
      256810de
    • Iustin Pop's avatar
      Container: add a 'keys' function · 1fd47ca2
      Iustin Pop authored
      1fd47ca2
    • Iustin Pop's avatar
      Replace a foldl by foldl' · d4f62d4e
      Iustin Pop authored
      d4f62d4e
    • Iustin Pop's avatar
      Split checkMove into two · 4e25d1c2
      Iustin Pop authored
      This cleans up and splits the individual instance move into a separate function.
      4e25d1c2
    • Iustin Pop's avatar
      Change the balancing algorithm · aaaa0e43
      Iustin Pop authored
      This patch changes the balancing algorithm to not iterate linearly over
      the instances (in a random, but fixed order), instead selecting at each
      step the best next move. This should allow a better score (most of the
      time), and usually also a shorter solution.
      aaaa0e43
  4. 14 Feb, 2009 4 commits
  5. 13 Feb, 2009 4 commits
  6. 12 Feb, 2009 2 commits
    • Iustin Pop's avatar
      Make RAPI return the same data format as gnt-* · b8b9a53c
      Iustin Pop authored
      This patch changes the RAPI endpoint return the same data format as the
      input files. This will allow using it instead of the files.
      b8b9a53c
    • Iustin Pop's avatar
      Change the input file formats · 01f6a5d2
      Iustin Pop authored
      This patch changes the format of the input node and instance lists. It
      removes the list of primary and secondary instances from the nodes, and
      adds the primary and secondary nodes to the instance list.
      
      This is done so that we can have the same input data from commands as
      from the RAPI.
      01f6a5d2
  7. 11 Feb, 2009 1 commit
  8. 28 Jan, 2009 1 commit