ctdb-scripts: Simplify "ctdb lvs ..." output
authorMartin Schwenke <martin@meltin.net>
Wed, 13 Apr 2016 07:47:45 +0000 (17:47 +1000)
committerAmitay Isaacs <amitay@samba.org>
Fri, 15 Apr 2016 03:57:18 +0000 (05:57 +0200)
For "master", if there is a master then print the PNN, otherwise print
nothing.

For "list", print the PNN and IP addresses without a colon in between.

Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
ctdb/config/events.d/91.lvs
ctdb/doc/ctdb.1.xml
ctdb/tests/eventscripts/stubs/ctdb_lvs
ctdb/tests/tool/stubby.lvs.001.sh
ctdb/tests/tool/stubby.lvs.002.sh
ctdb/tests/tool/stubby.lvs.003.sh
ctdb/tests/tool/stubby.lvs.004.sh
ctdb/tests/tool/stubby.lvs.005.sh
ctdb/tests/tool/stubby.lvs.006.sh
ctdb/tests/tool/stubby.lvs.007.sh
ctdb/tools/ctdb_lvs

index 528121ed44aebc75f993e62cd9264631cb1428ed..141f96458e0fd12ce795ff15a75cbb8c406af557 100755 (executable)
@@ -81,7 +81,7 @@ ipreallocated)
                "$CTDB_LVS_PUBLIC_IFACE" "$CTDB_LVS_PUBLIC_IP"
 
        ctdb_get_pnn
-       lvsmaster=$("${CTDB_HELPER_BINDIR}/ctdb_lvs" master | sed -n -e 's/Node \([0-9]*\) is LVS master/\1/p')
+       lvsmaster=$("${CTDB_HELPER_BINDIR}/ctdb_lvs" master)
        if [ "$pnn" != "$lvsmaster" ] ; then
            # This node is not the LVS master so change the IP address
            # to have scope "host" so this node won't respond to ARPs
@@ -99,7 +99,7 @@ ipreallocated)
 
        # Add all nodes (except this node) as LVS servers
        "${CTDB_HELPER_BINDIR}/ctdb_lvs" list |
-       awk -F: -v pnn="$pnn" '$1 != pnn { print $2 }' |
+       awk -v pnn="$pnn" '$1 != pnn { print $2 }' |
        while read ip ; do
                ipvsadm -a -t "$CTDB_LVS_PUBLIC_IP" -r $ip -g
                ipvsadm -a -u "$CTDB_LVS_PUBLIC_IP" -r $ip -g
index 326c69580a0c7a70bd796bb57bb1f6d0d79f1537..20dcba09e08e152eb0a650c44eb18be2e724d393 100644 (file)
@@ -743,7 +743,7 @@ MonitorInterval         = 15
        Example output:
       </para>
       <screen>
-Node 2 is LVS master
+2
       </screen>
          </listitem>
        </varlistentry>
@@ -757,8 +757,8 @@ Node 2 is LVS master
        Example output:
       </para>
       <screen>
-2:10.0.0.13
-3:10.0.0.14
+2 10.0.0.13
+3 10.0.0.14
       </screen>
          </listitem>
        </varlistentry>
index daca8e229fa29e8bc4c70c7ee6b75a8e1db40eee..5dfb24901e3457c68dfd553fc03e6f7644360f45 100755 (executable)
@@ -27,10 +27,9 @@ not_implemented ()
 ctdb_lvs_master ()
 {
        if [ -n "$FAKE_CTDB_LVS_MASTER" ] ; then
-               echo "Node ${FAKE_CTDB_LVS_MASTER} is LVS master"
+               echo "$FAKE_CTDB_LVS_MASTER"
                return 0
        else
-               echo "This is no LVS master"
                return 255
        fi
 }
@@ -39,7 +38,7 @@ ctdb_lvs_list ()
 {
        _pnn=0
        while read _ip _opts ; do
-               echo "${_pnn}:${_ip}"
+               echo "${_pnn} ${_ip}"
                _pnn=$(($_pnn + 1))
        done <"$CTDB_LVS_NODES"
 }
index 46fbef55feab89a0320315adb592407b3b674fef..3e864625e23c519a64d40cb0d2814f8e2795e850 100755 (executable)
@@ -28,7 +28,6 @@ VNNMAP
 #####
 
 required_result 255 <<EOF
-There is no LVS master
 EOF
 
 simple_test master <<EOF
index eb6ee56a19e144789c33145f6e4bf254c8fdfd67..ed9f450aee63852624e967b315f036077cf9013b 100755 (executable)
@@ -31,7 +31,7 @@ VNNMAP
 #####
 
 required_result 0 <<EOF
-Node 0 is LVS master
+0
 EOF
 
 simple_test master <<EOF
@@ -41,9 +41,9 @@ EOF
 #####
 
 required_result 0 <<EOF
-0:192.168.20.41
-1:192.168.20.42
-2:192.168.20.43
+0 192.168.20.41
+1 192.168.20.42
+2 192.168.20.43
 EOF
 
 simple_test list <<EOF
index a5155a919d4b9112e3a21d714650d33370ece946..54f8f17d14cfe322708e7a8e92e716563d162d21 100755 (executable)
@@ -29,7 +29,7 @@ VNNMAP
 #####
 
 required_result 0 <<EOF
-Node 0 is LVS master
+0
 EOF
 
 simple_test master <<EOF
@@ -39,8 +39,8 @@ EOF
 #####
 
 required_result 0 <<EOF
-0:192.168.20.41
-2:192.168.20.43
+0 192.168.20.41
+2 192.168.20.43
 EOF
 
 simple_test list <<EOF
index 1db4f9ee1a7b5d7d589164889e5f6646cd6245b3..8f43936bcafc4adb3f0129a83e8d10d28adb38e8 100755 (executable)
@@ -31,7 +31,7 @@ VNNMAP
 #####
 
 required_result 0 <<EOF
-Node 1 is LVS master
+1
 EOF
 
 simple_test master <<EOF
@@ -41,8 +41,8 @@ EOF
 #####
 
 required_result 0 <<EOF
-1:192.168.20.42
-2:192.168.20.43
+1 192.168.20.42
+2 192.168.20.43
 EOF
 
 simple_test list <<EOF
index c866555d5ecad583b4639d4262ba5f7671fc3d13..65a39d55bf72e4c31f9ae4d5cd0a9a713b9ccc65 100755 (executable)
@@ -31,7 +31,7 @@ VNNMAP
 #####
 
 required_result 0 <<EOF
-Node 0 is LVS master
+0
 EOF
 
 simple_test master <<EOF
@@ -41,9 +41,9 @@ EOF
 #####
 
 required_result 0 <<EOF
-0:192.168.20.41
-1:192.168.20.42
-2:192.168.20.43
+0 192.168.20.41
+1 192.168.20.42
+2 192.168.20.43
 EOF
 
 simple_test list <<EOF
index 3767acdff5471667b50706a04d81ebd6a3f561e2..f6ff2b988c923ce3af80eaf06bedc91299418ddc 100755 (executable)
@@ -31,7 +31,7 @@ VNNMAP
 #####
 
 required_result 0 <<EOF
-Node 2 is LVS master
+2
 EOF
 
 simple_test master <<EOF
@@ -41,7 +41,7 @@ EOF
 #####
 
 required_result 0 <<EOF
-2:192.168.20.43
+2 192.168.20.43
 EOF
 
 simple_test list <<EOF
index 0e0addd82524e3667d459b4b8c13978b26206a59..6951283571b3cd78a737f769fe322246f48a55f5 100755 (executable)
@@ -31,7 +31,6 @@ VNNMAP
 #####
 
 required_result 255 <<EOF
-There is no LVS master
 EOF
 
 simple_test master <<EOF
index b71a3d47df807ae757d8dc2fc4310eb3d92d4bc7..999154245eccbaff65c1ddfbe10da641b1c8d91e 100755 (executable)
@@ -141,25 +141,6 @@ EOF
        echo "${_master_candidates%% *}"
 }
 
-# Print the PNN of the LVS master node, verbose version
-show_master ()
-{
-       _master_pnn=$(find_master)
-       case "$?" in
-       0)
-               echo "Node ${_master_pnn} is LVS master"
-               exit 0
-               ;;
-       255)
-               echo "There is no LVS master"
-               exit 255
-               ;;
-       *)
-               exit 10
-               ;;
-       esac
-}
-
 # List all usable nodes in the LVS group
 nodes_list ()
 {
@@ -181,7 +162,7 @@ EOF
        *)   exit 10 ;;
        esac
 
-       awk '{ print $1 ":" $2 }'<<EOF
+       awk '{ print $1, $2 }'<<EOF
 $_usable_nodes
 EOF
 }
@@ -213,7 +194,7 @@ prog=$(basename "$0")
 cmd="$1"
 
 case "$cmd" in
-master) show_master ;;
+master) find_master ;;
 list)   nodes_list ;;
 status) nodes_status ;;
 *)      usage ;;