From b38e38a0bd0c65e030a73e9f531ce4137524e460 Mon Sep 17 00:00:00 2001 From: stubbsta Date: Wed, 9 Oct 2024 10:17:19 +0200 Subject: [PATCH] Update run_nwaku script to handle either container name format --- docker-compose.yml | 2 +- monitoring/prometheus-config.yml | 400 +++++++++++++++---------------- run_nwaku.sh | 13 +- src/deploy-waku-network.md | 6 +- src/inject-traffic.md | 2 +- 5 files changed, 208 insertions(+), 215 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index d15b013..7c23824 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -100,7 +100,7 @@ services: rest-traffic: image: alrevuelta/rest-traffic:6992bb5 command: - --multiple-nodes=http://waku-simulator_nwaku_[1..${NUM_NWAKU_NODES:-5}]:8645 + --multiple-nodes=http://waku-simulator-nwaku-[1..${NUM_NWAKU_NODES:-5}]:8645 --msg-size-kbytes=${MSG_SIZE_KBYTES:-10} --delay-seconds=${TRAFFIC_DELAY_SECONDS:-15} networks: diff --git a/monitoring/prometheus-config.yml b/monitoring/prometheus-config.yml index 69102ab..033f8d0 100644 --- a/monitoring/prometheus-config.yml +++ b/monitoring/prometheus-config.yml @@ -14,203 +14,203 @@ scrape_configs: static_configs: - targets: - bootstrap:8008 - - waku-simulator_nwaku_1:8008 - - waku-simulator_nwaku_2:8008 - - waku-simulator_nwaku_3:8008 - - waku-simulator_nwaku_4:8008 - - waku-simulator_nwaku_5:8008 - - waku-simulator_nwaku_6:8008 - - waku-simulator_nwaku_7:8008 - - waku-simulator_nwaku_8:8008 - - waku-simulator_nwaku_9:8008 - - waku-simulator_nwaku_10:8008 - - waku-simulator_nwaku_11:8008 - - waku-simulator_nwaku_12:8008 - - waku-simulator_nwaku_13:8008 - - waku-simulator_nwaku_14:8008 - - waku-simulator_nwaku_15:8008 - - waku-simulator_nwaku_16:8008 - - waku-simulator_nwaku_17:8008 - - waku-simulator_nwaku_18:8008 - - waku-simulator_nwaku_19:8008 - - waku-simulator_nwaku_20:8008 - - waku-simulator_nwaku_21:8008 - - waku-simulator_nwaku_22:8008 - - waku-simulator_nwaku_23:8008 - - waku-simulator_nwaku_24:8008 - - waku-simulator_nwaku_25:8008 - - waku-simulator_nwaku_26:8008 - - waku-simulator_nwaku_27:8008 - - waku-simulator_nwaku_28:8008 - - waku-simulator_nwaku_29:8008 - - waku-simulator_nwaku_30:8008 - - waku-simulator_nwaku_31:8008 - - waku-simulator_nwaku_32:8008 - - waku-simulator_nwaku_33:8008 - - waku-simulator_nwaku_34:8008 - - waku-simulator_nwaku_35:8008 - - waku-simulator_nwaku_36:8008 - - waku-simulator_nwaku_37:8008 - - waku-simulator_nwaku_38:8008 - - waku-simulator_nwaku_39:8008 - - waku-simulator_nwaku_40:8008 - - waku-simulator_nwaku_41:8008 - - waku-simulator_nwaku_42:8008 - - waku-simulator_nwaku_43:8008 - - waku-simulator_nwaku_44:8008 - - waku-simulator_nwaku_45:8008 - - waku-simulator_nwaku_46:8008 - - waku-simulator_nwaku_47:8008 - - waku-simulator_nwaku_48:8008 - - waku-simulator_nwaku_49:8008 - - waku-simulator_nwaku_50:8008 - - waku-simulator_nwaku_51:8008 - - waku-simulator_nwaku_52:8008 - - waku-simulator_nwaku_53:8008 - - waku-simulator_nwaku_54:8008 - - waku-simulator_nwaku_55:8008 - - waku-simulator_nwaku_56:8008 - - waku-simulator_nwaku_57:8008 - - waku-simulator_nwaku_58:8008 - - waku-simulator_nwaku_59:8008 - - waku-simulator_nwaku_60:8008 - - waku-simulator_nwaku_61:8008 - - waku-simulator_nwaku_62:8008 - - waku-simulator_nwaku_63:8008 - - waku-simulator_nwaku_64:8008 - - waku-simulator_nwaku_65:8008 - - waku-simulator_nwaku_66:8008 - - waku-simulator_nwaku_67:8008 - - waku-simulator_nwaku_68:8008 - - waku-simulator_nwaku_69:8008 - - waku-simulator_nwaku_70:8008 - - waku-simulator_nwaku_71:8008 - - waku-simulator_nwaku_72:8008 - - waku-simulator_nwaku_73:8008 - - waku-simulator_nwaku_74:8008 - - waku-simulator_nwaku_75:8008 - - waku-simulator_nwaku_76:8008 - - waku-simulator_nwaku_77:8008 - - waku-simulator_nwaku_78:8008 - - waku-simulator_nwaku_79:8008 - - waku-simulator_nwaku_80:8008 - - waku-simulator_nwaku_81:8008 - - waku-simulator_nwaku_82:8008 - - waku-simulator_nwaku_83:8008 - - waku-simulator_nwaku_84:8008 - - waku-simulator_nwaku_85:8008 - - waku-simulator_nwaku_86:8008 - - waku-simulator_nwaku_87:8008 - - waku-simulator_nwaku_88:8008 - - waku-simulator_nwaku_89:8008 - - waku-simulator_nwaku_90:8008 - - waku-simulator_nwaku_91:8008 - - waku-simulator_nwaku_92:8008 - - waku-simulator_nwaku_93:8008 - - waku-simulator_nwaku_94:8008 - - waku-simulator_nwaku_95:8008 - - waku-simulator_nwaku_96:8008 - - waku-simulator_nwaku_97:8008 - - waku-simulator_nwaku_98:8008 - - waku-simulator_nwaku_99:8008 - - waku-simulator_nwaku_100:8008 - - waku-simulator_nwaku_101:8008 - - waku-simulator_nwaku_102:8008 - - waku-simulator_nwaku_103:8008 - - waku-simulator_nwaku_104:8008 - - waku-simulator_nwaku_105:8008 - - waku-simulator_nwaku_106:8008 - - waku-simulator_nwaku_107:8008 - - waku-simulator_nwaku_108:8008 - - waku-simulator_nwaku_109:8008 - - waku-simulator_nwaku_110:8008 - - waku-simulator_nwaku_111:8008 - - waku-simulator_nwaku_112:8008 - - waku-simulator_nwaku_113:8008 - - waku-simulator_nwaku_114:8008 - - waku-simulator_nwaku_115:8008 - - waku-simulator_nwaku_116:8008 - - waku-simulator_nwaku_117:8008 - - waku-simulator_nwaku_118:8008 - - waku-simulator_nwaku_119:8008 - - waku-simulator_nwaku_120:8008 - - waku-simulator_nwaku_121:8008 - - waku-simulator_nwaku_122:8008 - - waku-simulator_nwaku_123:8008 - - waku-simulator_nwaku_124:8008 - - waku-simulator_nwaku_125:8008 - - waku-simulator_nwaku_126:8008 - - waku-simulator_nwaku_127:8008 - - waku-simulator_nwaku_128:8008 - - waku-simulator_nwaku_129:8008 - - waku-simulator_nwaku_130:8008 - - waku-simulator_nwaku_131:8008 - - waku-simulator_nwaku_132:8008 - - waku-simulator_nwaku_133:8008 - - waku-simulator_nwaku_134:8008 - - waku-simulator_nwaku_135:8008 - - waku-simulator_nwaku_136:8008 - - waku-simulator_nwaku_137:8008 - - waku-simulator_nwaku_138:8008 - - waku-simulator_nwaku_139:8008 - - waku-simulator_nwaku_140:8008 - - waku-simulator_nwaku_141:8008 - - waku-simulator_nwaku_142:8008 - - waku-simulator_nwaku_143:8008 - - waku-simulator_nwaku_144:8008 - - waku-simulator_nwaku_145:8008 - - waku-simulator_nwaku_146:8008 - - waku-simulator_nwaku_147:8008 - - waku-simulator_nwaku_148:8008 - - waku-simulator_nwaku_149:8008 - - waku-simulator_nwaku_150:8008 - - waku-simulator_nwaku_151:8008 - - waku-simulator_nwaku_152:8008 - - waku-simulator_nwaku_153:8008 - - waku-simulator_nwaku_154:8008 - - waku-simulator_nwaku_155:8008 - - waku-simulator_nwaku_156:8008 - - waku-simulator_nwaku_157:8008 - - waku-simulator_nwaku_158:8008 - - waku-simulator_nwaku_159:8008 - - waku-simulator_nwaku_160:8008 - - waku-simulator_nwaku_161:8008 - - waku-simulator_nwaku_162:8008 - - waku-simulator_nwaku_163:8008 - - waku-simulator_nwaku_164:8008 - - waku-simulator_nwaku_165:8008 - - waku-simulator_nwaku_166:8008 - - waku-simulator_nwaku_167:8008 - - waku-simulator_nwaku_168:8008 - - waku-simulator_nwaku_169:8008 - - waku-simulator_nwaku_170:8008 - - waku-simulator_nwaku_171:8008 - - waku-simulator_nwaku_172:8008 - - waku-simulator_nwaku_173:8008 - - waku-simulator_nwaku_174:8008 - - waku-simulator_nwaku_175:8008 - - waku-simulator_nwaku_176:8008 - - waku-simulator_nwaku_177:8008 - - waku-simulator_nwaku_178:8008 - - waku-simulator_nwaku_179:8008 - - waku-simulator_nwaku_180:8008 - - waku-simulator_nwaku_181:8008 - - waku-simulator_nwaku_182:8008 - - waku-simulator_nwaku_183:8008 - - waku-simulator_nwaku_184:8008 - - waku-simulator_nwaku_185:8008 - - waku-simulator_nwaku_186:8008 - - waku-simulator_nwaku_187:8008 - - waku-simulator_nwaku_188:8008 - - waku-simulator_nwaku_189:8008 - - waku-simulator_nwaku_190:8008 - - waku-simulator_nwaku_191:8008 - - waku-simulator_nwaku_192:8008 - - waku-simulator_nwaku_193:8008 - - waku-simulator_nwaku_194:8008 - - waku-simulator_nwaku_195:8008 - - waku-simulator_nwaku_196:8008 - - waku-simulator_nwaku_197:8008 - - waku-simulator_nwaku_198:8008 - - waku-simulator_nwaku_199:8008 - - waku-simulator_nwaku_200:8008 \ No newline at end of file + - waku-simulator-nwaku-1:8008 + - waku-simulator-nwaku-2:8008 + - waku-simulator-nwaku-3:8008 + - waku-simulator-nwaku-4:8008 + - waku-simulator-nwaku-5:8008 + - waku-simulator-nwaku-6:8008 + - waku-simulator-nwaku-7:8008 + - waku-simulator-nwaku-8:8008 + - waku-simulator-nwaku-9:8008 + - waku-simulator-nwaku-10:8008 + - waku-simulator-nwaku-11:8008 + - waku-simulator-nwaku-12:8008 + - waku-simulator-nwaku-13:8008 + - waku-simulator-nwaku-14:8008 + - waku-simulator-nwaku-15:8008 + - waku-simulator-nwaku-16:8008 + - waku-simulator-nwaku-17:8008 + - waku-simulator-nwaku-18:8008 + - waku-simulator-nwaku-19:8008 + - waku-simulator-nwaku-20:8008 + - waku-simulator-nwaku-21:8008 + - waku-simulator-nwaku-22:8008 + - waku-simulator-nwaku-23:8008 + - waku-simulator-nwaku-24:8008 + - waku-simulator-nwaku-25:8008 + - waku-simulator-nwaku-26:8008 + - waku-simulator-nwaku-27:8008 + - waku-simulator-nwaku-28:8008 + - waku-simulator-nwaku-29:8008 + - waku-simulator-nwaku-30:8008 + - waku-simulator-nwaku-31:8008 + - waku-simulator-nwaku-32:8008 + - waku-simulator-nwaku-33:8008 + - waku-simulator-nwaku-34:8008 + - waku-simulator-nwaku-35:8008 + - waku-simulator-nwaku-36:8008 + - waku-simulator-nwaku-37:8008 + - waku-simulator-nwaku-38:8008 + - waku-simulator-nwaku-39:8008 + - waku-simulator-nwaku-40:8008 + - waku-simulator-nwaku-41:8008 + - waku-simulator-nwaku-42:8008 + - waku-simulator-nwaku-43:8008 + - waku-simulator-nwaku-44:8008 + - waku-simulator-nwaku-45:8008 + - waku-simulator-nwaku-46:8008 + - waku-simulator-nwaku-47:8008 + - waku-simulator-nwaku-48:8008 + - waku-simulator-nwaku-49:8008 + - waku-simulator-nwaku-50:8008 + - waku-simulator-nwaku-51:8008 + - waku-simulator-nwaku-52:8008 + - waku-simulator-nwaku-53:8008 + - waku-simulator-nwaku-54:8008 + - waku-simulator-nwaku-55:8008 + - waku-simulator-nwaku-56:8008 + - waku-simulator-nwaku-57:8008 + - waku-simulator-nwaku-58:8008 + - waku-simulator-nwaku-59:8008 + - waku-simulator-nwaku-60:8008 + - waku-simulator-nwaku-61:8008 + - waku-simulator-nwaku-62:8008 + - waku-simulator-nwaku-63:8008 + - waku-simulator-nwaku-64:8008 + - waku-simulator-nwaku-65:8008 + - waku-simulator-nwaku-66:8008 + - waku-simulator-nwaku-67:8008 + - waku-simulator-nwaku-68:8008 + - waku-simulator-nwaku-69:8008 + - waku-simulator-nwaku-70:8008 + - waku-simulator-nwaku-71:8008 + - waku-simulator-nwaku-72:8008 + - waku-simulator-nwaku-73:8008 + - waku-simulator-nwaku-74:8008 + - waku-simulator-nwaku-75:8008 + - waku-simulator-nwaku-76:8008 + - waku-simulator-nwaku-77:8008 + - waku-simulator-nwaku-78:8008 + - waku-simulator-nwaku-79:8008 + - waku-simulator-nwaku-80:8008 + - waku-simulator-nwaku-81:8008 + - waku-simulator-nwaku-82:8008 + - waku-simulator-nwaku-83:8008 + - waku-simulator-nwaku-84:8008 + - waku-simulator-nwaku-85:8008 + - waku-simulator-nwaku-86:8008 + - waku-simulator-nwaku-87:8008 + - waku-simulator-nwaku-88:8008 + - waku-simulator-nwaku-89:8008 + - waku-simulator-nwaku-90:8008 + - waku-simulator-nwaku-91:8008 + - waku-simulator-nwaku-92:8008 + - waku-simulator-nwaku-93:8008 + - waku-simulator-nwaku-94:8008 + - waku-simulator-nwaku-95:8008 + - waku-simulator-nwaku-96:8008 + - waku-simulator-nwaku-97:8008 + - waku-simulator-nwaku-98:8008 + - waku-simulator-nwaku-99:8008 + - waku-simulator-nwaku-100:8008 + - waku-simulator-nwaku-101:8008 + - waku-simulator-nwaku-102:8008 + - waku-simulator-nwaku-103:8008 + - waku-simulator-nwaku-104:8008 + - waku-simulator-nwaku-105:8008 + - waku-simulator-nwaku-106:8008 + - waku-simulator-nwaku-107:8008 + - waku-simulator-nwaku-108:8008 + - waku-simulator-nwaku-109:8008 + - waku-simulator-nwaku-110:8008 + - waku-simulator-nwaku-111:8008 + - waku-simulator-nwaku-112:8008 + - waku-simulator-nwaku-113:8008 + - waku-simulator-nwaku-114:8008 + - waku-simulator-nwaku-115:8008 + - waku-simulator-nwaku-116:8008 + - waku-simulator-nwaku-117:8008 + - waku-simulator-nwaku-118:8008 + - waku-simulator-nwaku-119:8008 + - waku-simulator-nwaku-120:8008 + - waku-simulator-nwaku-121:8008 + - waku-simulator-nwaku-122:8008 + - waku-simulator-nwaku-123:8008 + - waku-simulator-nwaku-124:8008 + - waku-simulator-nwaku-125:8008 + - waku-simulator-nwaku-126:8008 + - waku-simulator-nwaku-127:8008 + - waku-simulator-nwaku-128:8008 + - waku-simulator-nwaku-129:8008 + - waku-simulator-nwaku-130:8008 + - waku-simulator-nwaku-131:8008 + - waku-simulator-nwaku-132:8008 + - waku-simulator-nwaku-133:8008 + - waku-simulator-nwaku-134:8008 + - waku-simulator-nwaku-135:8008 + - waku-simulator-nwaku-136:8008 + - waku-simulator-nwaku-137:8008 + - waku-simulator-nwaku-138:8008 + - waku-simulator-nwaku-139:8008 + - waku-simulator-nwaku-140:8008 + - waku-simulator-nwaku-141:8008 + - waku-simulator-nwaku-142:8008 + - waku-simulator-nwaku-143:8008 + - waku-simulator-nwaku-144:8008 + - waku-simulator-nwaku-145:8008 + - waku-simulator-nwaku-146:8008 + - waku-simulator-nwaku-147:8008 + - waku-simulator-nwaku-148:8008 + - waku-simulator-nwaku-149:8008 + - waku-simulator-nwaku-150:8008 + - waku-simulator-nwaku-151:8008 + - waku-simulator-nwaku-152:8008 + - waku-simulator-nwaku-153:8008 + - waku-simulator-nwaku-154:8008 + - waku-simulator-nwaku-155:8008 + - waku-simulator-nwaku-156:8008 + - waku-simulator-nwaku-157:8008 + - waku-simulator-nwaku-158:8008 + - waku-simulator-nwaku-159:8008 + - waku-simulator-nwaku-160:8008 + - waku-simulator-nwaku-161:8008 + - waku-simulator-nwaku-162:8008 + - waku-simulator-nwaku-163:8008 + - waku-simulator-nwaku-164:8008 + - waku-simulator-nwaku-165:8008 + - waku-simulator-nwaku-166:8008 + - waku-simulator-nwaku-167:8008 + - waku-simulator-nwaku-168:8008 + - waku-simulator-nwaku-169:8008 + - waku-simulator-nwaku-170:8008 + - waku-simulator-nwaku-171:8008 + - waku-simulator-nwaku-172:8008 + - waku-simulator-nwaku-173:8008 + - waku-simulator-nwaku-174:8008 + - waku-simulator-nwaku-175:8008 + - waku-simulator-nwaku-176:8008 + - waku-simulator-nwaku-177:8008 + - waku-simulator-nwaku-178:8008 + - waku-simulator-nwaku-179:8008 + - waku-simulator-nwaku-180:8008 + - waku-simulator-nwaku-181:8008 + - waku-simulator-nwaku-182:8008 + - waku-simulator-nwaku-183:8008 + - waku-simulator-nwaku-184:8008 + - waku-simulator-nwaku-185:8008 + - waku-simulator-nwaku-186:8008 + - waku-simulator-nwaku-187:8008 + - waku-simulator-nwaku-188:8008 + - waku-simulator-nwaku-189:8008 + - waku-simulator-nwaku-190:8008 + - waku-simulator-nwaku-191:8008 + - waku-simulator-nwaku-192:8008 + - waku-simulator-nwaku-193:8008 + - waku-simulator-nwaku-194:8008 + - waku-simulator-nwaku-195:8008 + - waku-simulator-nwaku-196:8008 + - waku-simulator-nwaku-197:8008 + - waku-simulator-nwaku-198:8008 + - waku-simulator-nwaku-199:8008 + - waku-simulator-nwaku-200:8008 \ No newline at end of file diff --git a/run_nwaku.sh b/run_nwaku.sh index 8f6fecf..f1563ca 100755 --- a/run_nwaku.sh +++ b/run_nwaku.sh @@ -45,7 +45,7 @@ else fi fi -#Function to get the index of the container and use it to retrieve a private key to be used to generate the keystore +#Function to get the index of the container and use it to retrieve a private key to be used to generate the keystore, allowing for either dash or underscore container name format (for docker-compose backward compatibility) get_private_key(){ # Read the JSON file @@ -60,16 +60,9 @@ get_private_key(){ # Extract private_keys json array using jq private_keys=$(echo "$json_content" | jq -r '.private_keys[]') - # get the service specified in the docker-compose.yml - # by a reverse DNS lookup on the IP - SERVICE=`dig -x $IP +short | cut -d'_' -f2` + CNTR=`dig -x $IP +short | cut -d'.' -f1` + INDEX=`echo $CNTR | sed 's/.*[-_]\([0-9]*\)/\1/'` - # the number of replicas is equal to the A records - # associated with the service name - COUNT=`dig $SERVICE +short | wc -l` - - # extract the replica number from the same PTR entry - INDEX=`dig -x $IP +short | sed 's/.*_\([0-9]*\)\..*/\1/'` if [ $? -ne 0 ] || [ -z "$INDEX" ]; then echo "Error: Failed to determine the replica index from IP." >&2 return 1 diff --git a/src/deploy-waku-network.md b/src/deploy-waku-network.md index 24b8f64..314d4f8 100644 --- a/src/deploy-waku-network.md +++ b/src/deploy-waku-network.md @@ -36,14 +36,14 @@ After a couple of minutes, everything should be running at: For greater observability, one can access each node logs as follows: ```bash -docker logs waku-simulator_nwaku_1 -docker logs waku-simulator_nwaku_2 +docker logs waku-simulator-nwaku-1 +docker logs waku-simulator-nwaku-2 ``` Or if you want to follow the logs ```bash -docker logs waku-simulator_nwaku_1 --follow +docker logs waku-simulator-nwaku-1 --follow ``` Once the network of nwaku nodes is up and running we can use it to perform different tests, connecting other nodes that we fully control with some specific characteristics. This ranges from connecting spammer nodes, light clients, and in the future unsynced nodes, etc. diff --git a/src/inject-traffic.md b/src/inject-traffic.md index 4d5740e..715d6f1 100644 --- a/src/inject-traffic.md +++ b/src/inject-traffic.md @@ -8,7 +8,7 @@ docker run -it --network waku-simulator_simulation alrevuelta/rest-traffic:d9364 --delay-seconds=10 \ --msg-size-kbytes=5 \ --pubsub-topic=/waku/2/rs/66/0 \ ---multiple-nodes="http://waku-simulator_nwaku_[1..5]:8645" +--multiple-nodes="http://waku-simulator-nwaku-[1..5]:8645" ``` Note that the REST API doesn’t allow to publish messages exceeding the rate limit, so this tool can’t be used to test beyond the rate limits.