[Groonga-commit] droonga/wikipedia-search.wiki at 3707420 [master] Updated ノンストップでノードを追加する場面の検証手順 (markdown)

Back to archive index

YUKI Piro Hiroshi null+****@clear*****
Wed Apr 1 13:29:28 JST 2015


YUKI "Piro" Hiroshi	2015-04-01 13:29:28 +0900 (Wed, 01 Apr 2015)

  New Revision: 3707420a710aea40c813bbcbb3697d2ed0daa566
  https://github.com/droonga/wikipedia-search/wiki/%E3%83%8E%E3%83%B3%E3%82%B9%E3%83%88%E3%83%83%E3%83%97%E3%81%A7%E3%83%8E%E3%83%BC%E3%83%89%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B%E5%A0%B4%E9%9D%A2%E3%81%AE%E6%A4%9C%E8%A8%BC%E6%89%8B%E9%A0%86/3707420a710aea40c813bbcbb3697d2ed0daa566

  Message:
    Updated ノンストップでノードを追加する場面の検証手順 (markdown)

  Modified files:
    ノンストップでノードを追加する場面の検証手順.md

  Modified: ノンストップでノードを追加する場面の検証手順.md (+43 -18)
===================================================================
--- ノンストップでノードを追加する場面の検証手順.md    2015-04-01 13:06:32 +0900 (c146afa)
+++ ノンストップでノードを追加する場面の検証手順.md    2015-04-01 13:29:28 +0900 (5ac03c2)
@@ -76,40 +76,65 @@ NODE0_SUDO="vagrant ssh node0 -- sudo"
 NODE1_SUDO="vagrant ssh node1 -- sudo"
 NODE2_SUDO="vagrant ssh node2 -- sudo"
 
+wait_all() {
+  wait $NODE0_PID
+  wait $NODE1_PID
+  wait $NODE2_PID
+}
+
+node0_async_sudo() {
+  $NODE0_SUDO "$@" &
+  NODE0_PID=$!
+}
+node1_async_sudo() {
+  $NODE1_SUDO "$@" &
+  NODE1_PID=$!
+}
+node2_async_sudo() {
+  $NODE2_SUDO "$@" &
+  NODE2_PID=$!
+}
+
 echo "stopping services..."
 $NODE0_SUDO service droonga-http-server stop
 
-$NODE0_SUDO service droonga-engine stop
-$NODE1_SUDO service droonga-engine stop
-$NODE2_SUDO service droonga-engine stop
+node0_async_sudo service droonga-engine stop
+node1_async_sudo service droonga-engine stop
+node2_async_sudo service droonga-engine stop
+wait_all
 
 echo "regenerating cluster informations..."
-$NODE0_SUDO droonga-engine-catalog-generate --hosts=node0,node1
-$NODE1_SUDO droonga-engine-catalog-generate --hosts=node0,node1
-$NODE2_SUDO droonga-engine-catalog-generate --hosts=node2
+node0_async_sudo droonga-engine-catalog-generate --hosts=node0,node1
+node0_async_sudo droonga-engine-catalog-generate --hosts=node0,node1
+node0_async_sudo droonga-engine-catalog-generate --hosts=node2
+wait_all
 
 echo "deleting old data..."
-$NODE0_SUDO rm -rf ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
-$NODE1_SUDO rm -rf ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
-$NODE2_SUDO rm -rf ~droonga-engine/droonga/databases ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
+node0_async_sudo rm -rf ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
+node0_async_sudo rm -rf ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
+node0_async_sudo rm -rf ~droonga-engine/droonga/databases ~droonga-engine/droonga/state ~droonga-engine/droonga/*.log
+wait_all
 
 if [ "$1" = "update" ]
 then
   SCRIPT_URL="https://raw.githubusercontent.com/droonga/droonga-engine/master/install.sh"
-  $NODE0_SUDO curl -s -o /tmp/install.sh $SCRIPT_URL
-  $NODE0_SUDO env VERSION=master bash /tmp/install.sh
-  $NODE1_SUDO curl -s -o /tmp/install.sh $SCRIPT_URL
-  $NODE1_SUDO env VERSION=master bash /tmp/install.sh
-  $NODE2_SUDO curl -s -o /tmp/install.sh $SCRIPT_URL
-  $NODE2_SUDO env VERSION=master bash /tmp/install.sh
+  node0_async_sudo curl -s -o /tmp/install.sh $SCRIPT_URL
+  node1_async_sudo curl -s -o /tmp/install.sh $SCRIPT_URL
+  node2_async_sudo curl -s -o /tmp/install.sh $SCRIPT_URL
+  wait_all
+  node0_async_sudo env VERSION=master bash /tmp/install.sh
+  node1_async_sudo env VERSION=master bash /tmp/install.sh
+  node2_async_sudo env VERSION=master bash /tmp/install.sh
+  wait_all
 fi
 
 ./copy-db.sh node0 node1
 
 echo "restarting services..."
-$NODE0_SUDO service droonga-engine start
-$NODE1_SUDO service droonga-engine start
-$NODE2_SUDO service droonga-engine start
+node0_async_sudo service droonga-engine start
+node1_async_sudo service droonga-engine start
+node2_async_sudo service droonga-engine start
+wait_all
 
 $NODE0_SUDO service droonga-http-server start
 
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index