In this example, all instances are running on the same node,
so balancing will always start migrating instances off this node.
Depending on the migrations are possible, others not.

Signed-off-by: Klaus Aehlig <[email protected]>
---
 Makefile.am                            |  4 ++++
 test/data/htools/hbal-migration-1.data | 15 +++++++++++++++
 test/data/htools/hbal-migration-2.data | 15 +++++++++++++++
 test/data/htools/hbal-migration-3.data | 16 ++++++++++++++++
 test/hs/shelltests/htools-hbal.test    | 28 ++++++++++++++++++++++++++++
 5 files changed, 78 insertions(+)
 create mode 100644 test/data/htools/hbal-migration-1.data
 create mode 100644 test/data/htools/hbal-migration-2.data
 create mode 100644 test/data/htools/hbal-migration-3.data
 create mode 100644 test/hs/shelltests/htools-hbal.test

diff --git a/Makefile.am b/Makefile.am
index 1f41f7a..b960e4b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1509,6 +1509,9 @@ TEST_FILES = \
        test/data/htools/hbal-dyn.data \
        test/data/htools/hbal-evac.data \
        test/data/htools/hbal-excl-tags.data \
+       test/data/htools/hbal-migration-1.data \
+       test/data/htools/hbal-migration-2.data \
+       test/data/htools/hbal-migration-3.data \
        test/data/htools/hbal-soft-errors.data \
        test/data/htools/hbal-split-insts.data \
        test/data/htools/hspace-groups-one.data \
@@ -1544,6 +1547,7 @@ TEST_FILES = \
        test/hs/shelltests/htools-excl.test \
        test/hs/shelltests/htools-hail.test \
        test/hs/shelltests/htools-hbal-evac.test \
+       test/hs/shelltests/htools-hbal.test \
        test/hs/shelltests/htools-hroller.test \
        test/hs/shelltests/htools-hspace.test \
        test/hs/shelltests/htools-hsqueeze.test \
diff --git a/test/data/htools/hbal-migration-1.data 
b/test/data/htools/hbal-migration-1.data
new file mode 100644
index 0000000..32a6ac7
--- /dev/null
+++ b/test/data/htools/hbal-migration-1.data
@@ -0,0 +1,15 @@
+group-01|fake-uuid-01|preferred||
+
+node-01|16384|0|12288|409600|204800|16|N|fake-uuid-01|1|hv:new
+node-02|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|
+node-03|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|hv:new
+node-04|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|
+
+inst121|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst122|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst131|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst132|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst141|1024|51200|1|running|Y|node-01|node-04|drbd||1
+inst142|1024|51200|1|running|Y|node-01|node-04|drbd||1
+
+htools:migration:hv
diff --git a/test/data/htools/hbal-migration-2.data 
b/test/data/htools/hbal-migration-2.data
new file mode 100644
index 0000000..10465b7
--- /dev/null
+++ b/test/data/htools/hbal-migration-2.data
@@ -0,0 +1,15 @@
+group-01|fake-uuid-01|preferred||
+
+node-01|16384|0|12288|409600|204800|16|N|fake-uuid-01|1|hv:new
+node-02|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|hv:new
+node-03|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|hv:new
+node-04|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|
+
+inst121|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst122|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst131|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst132|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst141|1024|51200|1|running|Y|node-01|node-04|drbd||1
+inst142|1024|51200|1|running|Y|node-01|node-04|drbd||1
+
+htools:migration:hv
diff --git a/test/data/htools/hbal-migration-3.data 
b/test/data/htools/hbal-migration-3.data
new file mode 100644
index 0000000..50be5b1
--- /dev/null
+++ b/test/data/htools/hbal-migration-3.data
@@ -0,0 +1,16 @@
+group-01|fake-uuid-01|preferred||
+
+node-01|16384|0|12288|409600|204800|16|N|fake-uuid-01|1|hv:old
+node-02|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|hv:old
+node-03|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|hv:new
+node-04|16384|0|16384|409600|306600|16|N|fake-uuid-01|1|
+
+inst121|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst122|1024|51200|1|running|Y|node-01|node-02|drbd||1
+inst131|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst132|1024|51200|1|running|Y|node-01|node-03|drbd||1
+inst141|1024|51200|1|running|Y|node-01|node-04|drbd||1
+inst142|1024|51200|1|running|Y|node-01|node-04|drbd||1
+
+htools:migration:hv
+htools:allowmigration:hv:old::hv:new
diff --git a/test/hs/shelltests/htools-hbal.test 
b/test/hs/shelltests/htools-hbal.test
new file mode 100644
index 0000000..c31f569
--- /dev/null
+++ b/test/hs/shelltests/htools-hbal.test
@@ -0,0 +1,28 @@
+./test/hs/hbal --print-nodes=name,pcnt -t $TESTDATA_DIR/hbal-migration-1.data
+>>>2/Final cluster status:
+ Name    pcnt
+ node-01    3
+ node-02    0
+ node-03    3
+ node-04    0/
+>>>= 0
+
+./test/hs/hbal --print-nodes=name,pcnt -t $TESTDATA_DIR/hbal-migration-2.data
+>>>2/Final cluster status:
+ Name    pcnt
+ node-01    2
+ node-02    2
+ node-03    2
+ node-04    0/
+>>>= 0
+
+./test/hs/hbal --print-nodes=name,pcnt -t $TESTDATA_DIR/hbal-migration-3.data
+>>>2/Final cluster status:
+ Name    pcnt
+ node-01    2
+ node-02    2
+ node-03    2
+ node-04    0/
+>>>= 0
+
+
-- 
2.1.0.rc2.206.gedb03e5

Reply via email to