aboutsummaryrefslogtreecommitdiff
path: root/script/dev-cluster.sh
diff options
context:
space:
mode:
Diffstat (limited to 'script/dev-cluster.sh')
-rwxr-xr-xscript/dev-cluster.sh28
1 files changed, 20 insertions, 8 deletions
diff --git a/script/dev-cluster.sh b/script/dev-cluster.sh
index 0afdd97c..3ca3f74b 100755
--- a/script/dev-cluster.sh
+++ b/script/dev-cluster.sh
@@ -17,6 +17,10 @@ MAIN_LABEL="\e[${FANCYCOLORS[0]}[main]\e[49m"
WHICH_GARAGE=$(which garage || exit 1)
echo -en "${MAIN_LABEL} Found garage at: ${WHICH_GARAGE}\n"
+NETWORK_SECRET="$(openssl rand -hex 32)"
+
+
+# <<<<<<<<< BEGIN FOR LOOP ON NODES
for count in $(seq 1 3); do
CONF_PATH="/tmp/config.$count.toml"
LABEL="\e[${FANCYCOLORS[$count]}[$count]\e[49m"
@@ -26,13 +30,10 @@ block_size = 1048576 # objects are split in blocks of maximum this number of b
metadata_dir = "/tmp/garage-meta-$count"
data_dir = "/tmp/garage-data-$count"
rpc_bind_addr = "0.0.0.0:$((3900+$count))" # the port other Garage nodes will use to talk to this node
-bootstrap_peers = [
- "127.0.0.1:3901",
- "127.0.0.1:3902",
- "127.0.0.1:3903"
-]
-max_concurrent_rpc_requests = 12
+rpc_public_addr = "127.0.0.1:$((3900+$count))"
+bootstrap_peers = []
replication_mode = "3"
+rpc_secret = "$NETWORK_SECRET"
[s3_api]
api_bind_addr = "0.0.0.0:$((3910+$count))" # the S3 API port, HTTP without TLS. Add a reverse proxy for the TLS part.
@@ -61,11 +62,21 @@ if [ -z "$SKIP_HTTPS" ]; then
socat openssl-listen:4443,reuseaddr,fork,cert=/tmp/garagessl/test.pem,verify=0 tcp4-connect:localhost:3911 &
fi
-(garage server -c /tmp/config.$count.toml 2>&1|while read r; do echo -en "$LABEL $r\n"; done) &
+(garage -c /tmp/config.$count.toml server 2>&1|while read r; do echo -en "$LABEL $r\n"; done) &
+done
+# >>>>>>>>>>>>>>>> END FOR LOOP ON NODES
+
+sleep 3
+# Establish connections between nodes
+for count in $(seq 1 3); do
+ NODE=$(garage -c /tmp/config.$count.toml node-id -q)
+ for count2 in $(seq 1 3); do
+ garage -c /tmp/config.$count2.toml node connect $NODE
+ done
done
RETRY=120
-until garage status 2>&1|grep -q Healthy ; do
+until garage -c /tmp/config.1.toml status 2>&1|grep -q HEALTHY ; do
(( RETRY-- ))
if (( RETRY <= 0 )); then
echo -en "${MAIN_LABEL} Garage did not start"
@@ -74,6 +85,7 @@ until garage status 2>&1|grep -q Healthy ; do
echo -en "${MAIN_LABEL} cluster starting...\n"
sleep 1
done
+
echo -en "${MAIN_LABEL} cluster started\n"
wait