[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-grid5k] 88/141: use wallet as a service
From: |
gnunet |
Subject: |
[taler-grid5k] 88/141: use wallet as a service |
Date: |
Thu, 18 Nov 2021 14:50:29 +0100 |
This is an automated email from the git hooks/post-receive script.
marco-boss pushed a commit to branch master
in repository grid5k.
commit bc0ef1545ca1e14fd8c1d129747a704c40d64cfa
Author: Boss Marco <bossm8@bfh.ch>
AuthorDate: Tue Nov 2 13:21:43 2021 +0100
use wallet as a service
---
configs/usr/lib/systemd/system/taler-wallet@.service | 16 ++++++++++++++++
experiment/scripts/database.sh | 19 +++++++++++++------
experiment/scripts/test1.sh | 2 +-
experiment/scripts/wallet.sh | 13 ++++++++++---
experiment/taler-perf-minimal.rspec | 7 +++++--
5 files changed, 45 insertions(+), 12 deletions(-)
diff --git a/configs/usr/lib/systemd/system/taler-wallet@.service
b/configs/usr/lib/systemd/system/taler-wallet@.service
new file mode 100755
index 0000000..0055982
--- /dev/null
+++ b/configs/usr/lib/systemd/system/taler-wallet@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=GNU Taler wallet benchmark
+StartLimitIntervalSec=0
+
+[Service]
+Type=simple
+Restart=always
+RestartSec=1
+EnvironmentFile=/etc/environment
+ExecStart=/root/scripts/test1.sh %I
+
+StandardOutput=journal
+StandardError=journal
+
+[Install]
+WantedBy=multi-user.target
diff --git a/experiment/scripts/database.sh b/experiment/scripts/database.sh
index 2879781..1668c39 100755
--- a/experiment/scripts/database.sh
+++ b/experiment/scripts/database.sh
@@ -13,7 +13,7 @@ echo "
listen_addresses='*'
log_destination=syslog
syslog_ident='taler-database'
-log_min_duration_statement=600
+log_min_duration_statement=500
shared_preload_libraries='pg_stat_statements,auto_explain'
" >> /etc/postgresql/13/main/postgresql.conf
@@ -27,16 +27,23 @@ host all postgres 172.16.0.0/12 trust
systemctl restart postgresql
su postgres << EOF
-createuser taler-exchange-httpd
-createdb -O taler-exchange-httpd "${DB_NAME}"
+psql postgres -tAc "SELECT 1 FROM pg_roles WHERE
rolname='taler-exchange-httpd'" | \
+ grep -q 1 || \
+ createuser taler-exchange-httpd
+psql -tAc "SELECT 1 FROM pg_database WHERE datname='${DB_NAME}'" | \
+ grep -q 1 || \
+ createdb -O taler-exchange-httpd "${DB_NAME}"
EOF
sudo -u taler-exchange-httpd taler-exchange-dbinit
su postgres << EOF
-psql
-CREATE USER "${DB_USER}" with encrypted password '${DB_PASSWORD}';
-CREATE EXTENSION pg_stat_statements;
+psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='USR_NAME'" | \
+ grep -q 1 \
+ || psql << END
+ CREATE USER "${DB_USER}" with encrypted password '${DB_PASSWORD}';
+ CREATE EXTENSION pg_stat_statements;
+ END
EOF
su taler-exchange-httpd -s /bin/bash << EOF
diff --git a/experiment/scripts/test1.sh b/experiment/scripts/test1.sh
index 606d288..1c3a993 100755
--- a/experiment/scripts/test1.sh
+++ b/experiment/scripts/test1.sh
@@ -1,7 +1,7 @@
#!/bin/bash
case $1 in
- "*logging*")
+ *logging*)
echo "enable logging of wallet here"
;;
esac
diff --git a/experiment/scripts/wallet.sh b/experiment/scripts/wallet.sh
index de10037..204afd9 100755
--- a/experiment/scripts/wallet.sh
+++ b/experiment/scripts/wallet.sh
@@ -2,7 +2,7 @@
NUM_PROCESSES=${NUM_WALLET_PROCESSES:-10}
-if [[ "$1" == "init" ]];
+if [[ "$1" == "init" ]] && [ "$NUM_PROCESSES" -gt "0" ];
then
source ~/scripts/helpers.sh
wait_for_keys "${PROXY_DOMAIN}"
@@ -10,7 +10,14 @@ then
# Start one process with logging enabled
let "NUM_PROCESSES-=1"
- ~/scripts/test1.sh --with-logging &
+ systemctl restart taler-wallet@logging.service
fi
-parallel -j ${NUM_PROCESSES} ~/scripts/test1.sh ::: $(seq ${NUM_PROCESSES})
+# count the running wallets
+RUNNING=$(ps -aux | grep "[wallet]-cli" | wc -l)
+
+for i in $(seq ${NUM_PROCESSES})
+do
+ let "i+=${RUNNING}"
+ systemctl restart taler-wallet@${i}.service
+done
diff --git a/experiment/taler-perf-minimal.rspec
b/experiment/taler-perf-minimal.rspec
index 54d3ad3..1ea30e5 100644
--- a/experiment/taler-perf-minimal.rspec
+++ b/experiment/taler-perf-minimal.rspec
@@ -1,15 +1,17 @@
<?xml version='1.0'?>
-<rspec xmlns="http://www.geni.net/resources/rspec/3" type="request"
generated_by="jFed RSpec Editor" generated="2021-10-27T14:07:31.511+02:00"
xmlns:emulab="http://www.protogeni.net/resources/rspec/ext/emulab/1"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:jfed-command="http://jfed.iminds.be/rspec/ext/jfed-command/1"
xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1"
xmlns:jfed-ssh-keys="http://jfed.iminds.be/rspec/ext/jfed-ssh-keys/1" xmlns:
[...]
+<rspec xmlns="http://www.geni.net/resources/rspec/3" type="request"
generated_by="jFed RSpec Editor" generated="2021-10-31T14:07:06.369+01:00"
xmlns:emulab="http://www.protogeni.net/resources/rspec/ext/emulab/1"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:jfed-command="http://jfed.iminds.be/rspec/ext/jfed-command/1"
xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1"
xmlns:jfed-ssh-keys="http://jfed.iminds.be/rspec/ext/jfed-ssh-keys/1" xmlns:
[...]
<node client_id="DB" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
+ <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="155.12048192771084" y="35.85234899328859"/>
</node>
<node client_id="Exchange" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
+ <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="300.18072289156623" y="202.25503355704694"/>
</node>
<node client_id="Wallet-0" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
@@ -28,7 +30,8 @@
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="304.3975903614458" y="278.2214765100671"/>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="300.5"
y="256.5"/>
</node>
<node client_id="Monitor" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-grid5k] 139/141: remove sanitizer, (continued)
- [taler-grid5k] 139/141: remove sanitizer, gnunet, 2021/11/18
- [taler-grid5k] 86/141: update scripts, gnunet, 2021/11/18
- [taler-grid5k] 104/141: update scripts and docker build, gnunet, 2021/11/18
- [taler-grid5k] 93/141: image build back to apt, gnunet, 2021/11/18
- [taler-grid5k] 75/141: add benchmark run for wallet, gnunet, 2021/11/18
- [taler-grid5k] 98/141: add missing package for merchant build, gnunet, 2021/11/18
- [taler-grid5k] 94/141: add merchant configuration, gnunet, 2021/11/18
- [taler-grid5k] 135/141: remove sanitizer again, gnunet, 2021/11/18
- [taler-grid5k] 83/141: update image - set install path to /usr instead of /usr/local, gnunet, 2021/11/18
- [taler-grid5k] 105/141: more wallet hosts, gnunet, 2021/11/18
- [taler-grid5k] 88/141: use wallet as a service,
gnunet <=
- [taler-grid5k] 107/141: fix image config, gnunet, 2021/11/18
- [taler-grid5k] 110/141: add no-copy flag, gnunet, 2021/11/18
- [taler-grid5k] 80/141: add dist builds, gnunet, 2021/11/18
- [taler-grid5k] 85/141: fix createuser script, gnunet, 2021/11/18
- [taler-grid5k] 137/141: add possibility for more than 100 exchanges, gnunet, 2021/11/18
- [taler-grid5k] 90/141: change number of iterations to 10 - bigger values slow down wallets over time, gnunet, 2021/11/18
- [taler-grid5k] 120/141: remove log levels for pipeline output, gnunet, 2021/11/18
- [taler-grid5k] 78/141: add jinja, gnunet, 2021/11/18