[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-grid5k] 46/141: mulitple exch processes possible - syslog configu
From: |
gnunet |
Subject: |
[taler-grid5k] 46/141: mulitple exch processes possible - syslog configuredwq |
Date: |
Thu, 18 Nov 2021 14:49:47 +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 f83ab80253f51bf7139a2b67828a8e8d85cd55f8
Author: Boss Marco <bossm8@bfh.ch>
AuthorDate: Thu Oct 14 16:09:54 2021 +0200
mulitple exch processes possible - syslog configuredwq
---
configs/etc/monitor/promtail.yaml | 22 +++++++++++++++-------
configs/etc/nginx/sites-available/proxy | 13 +++++++++----
configs/etc/rsyslog.d/taler.conf | 17 ++++++++++++++---
.../systemd/system/taler-exchange-httpd@.service | 3 +--
.../systemd/system/taler-exchange-httpd@.socket | 6 +++---
experiment/env | 2 ++
experiment/scripts/exchange.sh | 7 +++++--
experiment/scripts/monitor.sh | 3 ++-
experiment/scripts/proxy.sh | 7 +++++++
experiment/setup.sh | 4 ++++
notes.txt | 6 ++++++
11 files changed, 68 insertions(+), 22 deletions(-)
diff --git a/configs/etc/monitor/promtail.yaml
b/configs/etc/monitor/promtail.yaml
index 231d5b6..4cabeb1 100644
--- a/configs/etc/monitor/promtail.yaml
+++ b/configs/etc/monitor/promtail.yaml
@@ -6,13 +6,21 @@ positions:
filename: /tmp/positions.yaml
clients:
- - url: http://monitor.perf.taler/loki/api/v1/push
+ - url: http://localhost/loki/api/v1/push
scrape_configs:
-- job_name: system
- static_configs:
- - targets:
- - localhost
+- job_name: taler
+ syslog:
+ listen_address: 127.0.0.1:1514
labels:
- job: varlogs
- __path__: /var/log/*log
+ job: taler
+ relabel_configs:
+ - source_labels: [__syslog_message_severity]
+ target_label: severity
+ - source_labels: [__syslog_message_app_name]
+ target_label: app
+ - source_labels: [__syslog_message_proc_id]
+ target_label: proc_id
+ - source_labels: [__syslog_message_hostname]
+ target_label: host
+
diff --git a/configs/etc/nginx/sites-available/proxy
b/configs/etc/nginx/sites-available/proxy
index 487418e..a7e3978 100644
--- a/configs/etc/nginx/sites-available/proxy
+++ b/configs/etc/nginx/sites-available/proxy
@@ -1,3 +1,11 @@
+upstream exchange {
+ least_conn;
+ # EXCHANGE_PROCESSES e.g.
+ # server exch.perf.taler:8080;
+ # server exch.perf.taler:80;
+ # <SERVERS_HERE>
+}
+
server {
listen 80;
listen [::]:80;
@@ -8,17 +16,14 @@ server {
deny all;
location / {
- proxy_pass <EXCHANGE_URL_HERE>;
+ proxy_pass http://exchange;
proxy_redirect off;
proxy_set_header Host $host;
- #proxy_set_header X-Forwarded-Host "example.com";
- #proxy_set_header X-Forwarded-Proto "https";
}
location /stub_status {
stub_status;
access_log off;
}
-
}
diff --git a/configs/etc/rsyslog.d/taler.conf b/configs/etc/rsyslog.d/taler.conf
index 78ad873..a3bf562 100644
--- a/configs/etc/rsyslog.d/taler.conf
+++ b/configs/etc/rsyslog.d/taler.conf
@@ -1,4 +1,15 @@
-$template TALER_LOGS,"/var/log/%programname%.log"
+module(load="omprog")
+# Need to load due to parser error https://github.com/grafana/loki/issues/1783
+module(load="mmutf8fix")
+if $programname startswith 'taler' then {
+ action(type="mmutf8fix" replacementChar="?")
+ action(type="omfwd"
+ protocol="tcp"
+ target="<MONITOR_DOMAIN_HERE>"
+ port="1514"
+ Template="RSYSLOG_SyslogProtocol23Format"
+ TCP_Framing="octet-counted"
+ KeepAlive="on")
+ & stop
+}
-if $programname startswith 'taler' then ?TALER_LOGS
-& stop
diff --git a/configs/usr/lib/systemd/system/taler-exchange-httpd@.service
b/configs/usr/lib/systemd/system/taler-exchange-httpd@.service
index de5acde..c9d372e 100755
--- a/configs/usr/lib/systemd/system/taler-exchange-httpd@.service
+++ b/configs/usr/lib/systemd/system/taler-exchange-httpd@.service
@@ -1,7 +1,7 @@
[Unit]
Description=GNU Taler payment system exchange REST API at %I
AssertPathExists=/run/taler/exchange-httpd
-Requires=taler-exchange-httpd@%I.socket taler-exchange-secmod-rsa.service
taler-exchange-secmod-eddsa.service
+Requires=taler-exchange-httpd@%i.socket taler-exchange-secmod-rsa.service
taler-exchange-secmod-eddsa.service
After=postgres.service network.target taler-exchange-secmod-rsa.service
taler-exchange-secmod-eddsa.service
PartOf=taler-exchange.target
@@ -19,4 +19,3 @@ ProtectSystem=full
[Install]
WantedBy=multi-user.target
-
diff --git a/configs/usr/lib/systemd/system/taler-exchange-httpd@.socket
b/configs/usr/lib/systemd/system/taler-exchange-httpd@.socket
index 79e3100..3f25eb3 100755
--- a/configs/usr/lib/systemd/system/taler-exchange-httpd@.socket
+++ b/configs/usr/lib/systemd/system/taler-exchange-httpd@.socket
@@ -1,11 +1,11 @@
[Unit]
Description=Taler Exchange Socket at %I
-PartOf=taler-exchange-httpd.service
+PartOf=taler-exchange-httpd@%i.service
[Socket]
-ListenStream=%I
+ListenStream=%i
Accept=no
-Service=taler-exchange-httpd.service
+Service=taler-exchange-httpd@%i.service
SocketUser=taler-exchange-httpd
SocketGroup=www-data
SocketMode=0660
diff --git a/experiment/env b/experiment/env
index d8c6ced..cdb0dd5 100755
--- a/experiment/env
+++ b/experiment/env
@@ -24,5 +24,7 @@ DB_NAME=taler-exchange
DB_USER=taler
DB_PASSWORD=
+NUM_EXCHANGE_PROCESSES=1
+
DYNDNS_KEY=
GRAFANA_API_KEY=
diff --git a/experiment/scripts/exchange.sh b/experiment/scripts/exchange.sh
index 8871721..45489ed 100755
--- a/experiment/scripts/exchange.sh
+++ b/experiment/scripts/exchange.sh
@@ -1,8 +1,6 @@
#!/bin/bash
set -eux
-systemctl restart promtail
-
sed -i
"s\<DB_URL_HERE>\postgresql://${DB_USER}:${DB_PASSWORD}@${DATABASE_DOMAIN}/${DB_NAME}\g"
\
/etc/taler/secrets/exchange-db.secret.conf
@@ -34,6 +32,11 @@ sleep 1
systemctl restart taler-exchange.target
+for i in {0..${NUM_EXCHANGE_PROCESSES}} ;
+do
+ systemctl restart taler-exchange-httpd@808${i}.socket
taler-exchange-httpd@808${i}.service
+done
+
until wget http://${EXCHANGE_DOMAIN}/management/keys \
--spider \
--timeout=5 \
diff --git a/experiment/scripts/monitor.sh b/experiment/scripts/monitor.sh
index fea91e6..3c001af 100755
--- a/experiment/scripts/monitor.sh
+++ b/experiment/scripts/monitor.sh
@@ -29,7 +29,8 @@ update_datasource "${PROMETHEUS_DATASOURCE_NAME}"
"${PROMETHEUS_G5K_PROXY_PORT}"
update_datasource "${LOKI_DATASOURCE_NAME}" "${LOKI_G5K_PROXY_PORT}"
systemctl restart prometheus \
- loki
+ loki \
+ promtail
sed -i "s\<DB_URL_HERE>\postgresql://postgres@${DATABASE_DOMAIN}:5432\g" \
/etc/default/prometheus-postgres-exporter
diff --git a/experiment/scripts/proxy.sh b/experiment/scripts/proxy.sh
index f03cbe0..eec9bc8 100755
--- a/experiment/scripts/proxy.sh
+++ b/experiment/scripts/proxy.sh
@@ -4,6 +4,13 @@ set -eux
sed "s\<EXCHANGE_URL_HERE>\http://${EXCHANGE_DOMAIN}\g" \
/etc/nginx/sites-available/proxy > /etc/nginx/sites-enabled/proxy
+for i in {0..${NUM_EXCHANGE_PROCESSES}} ;
+do
+ sed -i "\<SERVERS_HERE>\server ${EXCHANGE_DOMAIN}:808${i};"
+done
+
+sed -i "\<SERVERS_HERE>\server ${EXCHANGE_DOMAIN}:80;"
+
# Nginx does not start until the destination server is reachable - wait here
# nginx: [emerg] host not found in upstream "exch.perf.taler" ...
until wget http://${EXCHANGE_DOMAIN}/keys \
diff --git a/experiment/setup.sh b/experiment/setup.sh
index 210b814..758798f 100644
--- a/experiment/setup.sh
+++ b/experiment/setup.sh
@@ -18,6 +18,10 @@ rm /etc/nginx/sites-enabled/default > /dev/null 2>&1 || true
# Override default configurations with the one from this Git.
cp -r "${G5K_HOME}"/configs/* /
+# Send all logs about taler to promtail on the monitoring node
+sed -i "s/<MONITOR_DOMAIN_HERE>/${MONITOR_DOMAIN}/g" \
+ /etc/rsyslog.d/taler.conf
+
# Apply our logging rules
systemctl restart rsyslog
diff --git a/notes.txt b/notes.txt
index 5875d7c..90f8307 100644
--- a/notes.txt
+++ b/notes.txt
@@ -6,5 +6,11 @@
* jFed: Error do not clearly show which nodes failed allocating
its hard to detect problems when using many nodes - should be clearer
bsp error: Some requiered resource was not available at this time. (which?!)
+* only show nodes which are available for users - e.g. not neovise
* jFed: Changing Node or HW type does sometimes not apply and is not saved
* Online status monitoing not up to date
+* Very common error:
+ <h1>Proxy Error</h1>
+ <p>The proxy server received an invalid
+ response from an upstream server.<br />
+ The proxy server could not handle the request<p>Reason: <strong>Error
reading from remote server</strong></p></p>
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-grid5k] 70/141: update wallet logs, (continued)
- [taler-grid5k] 70/141: update wallet logs, gnunet, 2021/11/18
- [taler-grid5k] 15/141: update scripts, gnunet, 2021/11/18
- [taler-grid5k] 03/141: update image, gnunet, 2021/11/18
- [taler-grid5k] 34/141: set retry times to 1, gnunet, 2021/11/18
- [taler-grid5k] 65/141: update promtail config, gnunet, 2021/11/18
- [taler-grid5k] 31/141: update scripts, gnunet, 2021/11/18
- [taler-grid5k] 57/141: configure nginx logging to syslog, gnunet, 2021/11/18
- [taler-grid5k] 47/141: fix promtail, add helper function script, gnunet, 2021/11/18
- [taler-grid5k] 45/141: add rsyslog config for better performance with loki, gnunet, 2021/11/18
- [taler-grid5k] 48/141: fix script imports, add net packages, gnunet, 2021/11/18
- [taler-grid5k] 46/141: mulitple exch processes possible - syslog configuredwq,
gnunet <=
- [taler-grid5k] 62/141: fix rsyslog and wallet log messages, gnunet, 2021/11/18
- [taler-grid5k] 19/141: add nameserver to /etc/resolv only if not there yet, gnunet, 2021/11/18
- [taler-grid5k] 41/141: fix prometheus, gnunet, 2021/11/18
- [taler-grid5k] 64/141: update promtail - issues with too many open files when too much labels are assigned, gnunet, 2021/11/18
- [taler-grid5k] 72/141: configure postgres, gnunet, 2021/11/18
- [taler-grid5k] 40/141: update configurations, gnunet, 2021/11/18
- [taler-grid5k] 32/141: add taler default env, gnunet, 2021/11/18
- [taler-grid5k] 67/141: add merchant, some comments in scripts, gnunet, 2021/11/18
- [taler-grid5k] 54/141: add step to build newest wallet from source, gnunet, 2021/11/18
- [taler-grid5k] 56/141: add debug to every taler service, gnunet, 2021/11/18