From 34c9ebb5744e36152d66e3bf55c4bb3e9f4c2853 Mon Sep 17 00:00:00 2001
From: Sergey Yakubov <sergey.yakubov@desy.de>
Date: Tue, 10 Sep 2019 12:25:53 +0200
Subject: [PATCH] initialize influxdb automatically

---
 broker/src/asapo_broker/main/broker.go        |  2 +
 .../asapo_broker/server/server_nottested.go   |  3 +-
 broker/src/asapo_broker/server/statistics.go  | 11 +++
 .../asapo_broker/server/statistics_test.go    |  5 ++
 .../asapo_broker/server/statistics_writers.go | 24 +++++-
 deploy/docker/cluster/Dockerfile              |  6 +-
 deploy/docker/cluster/asapo-start             |  3 +
 deploy/docker/cluster/asapo-stop              |  3 +
 deploy/docker/cluster/asapo-wait-service      | 11 +++
 deploy/docker/cluster/init_influxdb.sh        | 10 ---
 deploy/docker/cluster/run.sh                  | 12 +++
 .../cluster/scripts/asapo-brokers.nmd.tpl     |  2 +-
 ...sapo-logging.nmd => asapo-logging.nmd.tpl} | 43 +++++------
 .../cluster/scripts/asapo-nginx.nmd.tpl       | 11 +++
 .../cluster/scripts/asapo-receivers.nmd.tpl   |  2 +-
 .../cluster/scripts/asapo-services.nmd.tpl    | 14 ++--
 .../docker/cluster/scripts/asapo.auto.tfvars  |  4 +-
 .../{fluentd.conf => fluentd.conf.tpl}        |  4 +-
 deploy/docker/cluster/scripts/nginx.conf.tpl  | 18 ++---
 deploy/docker/cluster/scripts/resources.tf    | 16 +++-
 .../cluster/scripts/resources_services.tf     | 75 +++++++++++++++++++
 deploy/docker/cluster/scripts/templates.tf    | 39 +++++++++-
 deploy/docker/cluster/scripts/vars.tf         | 65 +++++++++++++---
 deploy/docker/cluster/tf_run.sh               |  5 --
 .../request_handler/request_handler_consul.go |  2 +-
 .../request_handler_consul_test.go            |  6 +-
 .../worker/getnext_broker/getnext_broker.cpp  |  1 -
 receiver/src/statistics_sender_influx_db.cpp  | 18 +++++
 receiver/src/statistics_sender_influx_db.h    |  4 +-
 .../broker/check_monitoring/check_linux.sh    |  3 -
 .../full_chain/simple_chain/check_linux.sh    |  1 -
 .../simple_chain_dataset/check_linux.sh       |  1 -
 .../check_linux.sh                            |  5 +-
 .../simple_chain_metadata/check_linux.sh      |  1 -
 .../check_linux.sh                            |  1 -
 .../full_chain/two_beamlines/check_linux.sh   |  1 -
 .../broker_mongo_restart/check_linux.sh       |  2 -
 .../services_restart/check_linux.sh           |  2 -
 .../check_monitoring/check_linux.sh           |  4 +-
 .../transfer_datasets/check_linux.sh          |  1 -
 .../transfer_single_file/check_linux.sh       |  1 -
 .../performance_full_chain_simple/test.sh     |  1 -
 42 files changed, 327 insertions(+), 116 deletions(-)
 create mode 100755 deploy/docker/cluster/asapo-start
 create mode 100755 deploy/docker/cluster/asapo-stop
 create mode 100755 deploy/docker/cluster/asapo-wait-service
 delete mode 100755 deploy/docker/cluster/init_influxdb.sh
 rename deploy/docker/cluster/scripts/{asapo-logging.nmd => asapo-logging.nmd.tpl} (76%)
 rename deploy/docker/cluster/scripts/{fluentd.conf => fluentd.conf.tpl} (91%)
 create mode 100644 deploy/docker/cluster/scripts/resources_services.tf
 delete mode 100755 deploy/docker/cluster/tf_run.sh

diff --git a/broker/src/asapo_broker/main/broker.go b/broker/src/asapo_broker/main/broker.go
index 202022471..8b935e679 100644
--- a/broker/src/asapo_broker/main/broker.go
+++ b/broker/src/asapo_broker/main/broker.go
@@ -39,6 +39,8 @@ func main() {
 
 	log.SetLevel(logLevel)
 
+	log.Info("Starting Asapo Broker, version " + version.GetVersion())
+
 	server.CreateDiscoveryService()
 
 	err = server.InitDB(NewDefaultDatabase())
diff --git a/broker/src/asapo_broker/server/server_nottested.go b/broker/src/asapo_broker/server/server_nottested.go
index 990cf1409..5a4d32102 100644
--- a/broker/src/asapo_broker/server/server_nottested.go
+++ b/broker/src/asapo_broker/server/server_nottested.go
@@ -5,7 +5,6 @@ package server
 import (
 	log "asapo_common/logger"
 	"asapo_common/utils"
-	"asapo_common/version"
 	"errors"
 	"net/http"
 	"strconv"
@@ -13,6 +12,7 @@ import (
 
 func StartStatistics() {
 	statistics.Writer = new(StatisticInfluxDbWriter)
+	statistics.Init()
 	statistics.Reset()
 	go statistics.Monitor()
 }
@@ -20,7 +20,6 @@ func StartStatistics() {
 func Start() {
 	StartStatistics()
 	mux := utils.NewRouter(listRoutes)
-	log.Info("Starting Asapo Broker, version " + version.GetVersion())
 	log.Info("Listening on port: " + strconv.Itoa(settings.Port))
 	log.Fatal(http.ListenAndServe(":"+strconv.Itoa(settings.Port), http.HandlerFunc(mux.ServeHTTP)))
 }
diff --git a/broker/src/asapo_broker/server/statistics.go b/broker/src/asapo_broker/server/statistics.go
index 273e24919..1dff498f0 100644
--- a/broker/src/asapo_broker/server/statistics.go
+++ b/broker/src/asapo_broker/server/statistics.go
@@ -9,6 +9,17 @@ import (
 
 type statisticsWriter interface {
 	Write(*serverStatistics) error
+	Init() error
+}
+
+func (st *serverStatistics) Init() {
+	st.mux.Lock()
+	defer st.mux.Unlock()
+	if err := st.Writer.Init(); err != nil {
+		log.Warning("cannot initialize statistic writer: " + err.Error())
+	} else {
+		log.Debug("initialized statistic at " + settings.PerformanceDbServer + " for " + settings.PerformanceDbName)
+	}
 }
 
 type serverStatistics struct {
diff --git a/broker/src/asapo_broker/server/statistics_test.go b/broker/src/asapo_broker/server/statistics_test.go
index 9e396fd3b..147c1ff90 100644
--- a/broker/src/asapo_broker/server/statistics_test.go
+++ b/broker/src/asapo_broker/server/statistics_test.go
@@ -10,6 +10,11 @@ type mockWriter struct {
 	mock.Mock
 }
 
+func (writer *mockWriter) Init() error {
+	args := writer.Called()
+	return args.Error(0)
+}
+
 func (writer *mockWriter) Write(statistics *serverStatistics) error {
 	args := writer.Called(statistics)
 	return args.Error(0)
diff --git a/broker/src/asapo_broker/server/statistics_writers.go b/broker/src/asapo_broker/server/statistics_writers.go
index cdad6dcb3..c5cd4a322 100644
--- a/broker/src/asapo_broker/server/statistics_writers.go
+++ b/broker/src/asapo_broker/server/statistics_writers.go
@@ -3,8 +3,8 @@
 package server
 
 import (
+	"github.com/influxdata/influxdb1-client/v2"
 	"log"
-        "github.com/influxdata/influxdb1-client/v2"
 	"time"
 )
 
@@ -16,12 +16,30 @@ func (writer *StatisticLogWriter) Write(statistics *serverStatistics) error {
 	return nil
 }
 
+func (writer *StatisticLogWriter) Init() error {
+	return nil
+}
+
 type StatisticInfluxDbWriter struct {
 }
 
+func (writer *StatisticInfluxDbWriter) Init() error {
+	c, err := client.NewHTTPClient(client.HTTPConfig{
+		Addr: "http://" + settings.PerformanceDbServer,
+	})
+	if err != nil {
+		return err
+	}
+	defer c.Close()
+	var query client.Query
+	query.Command = "create database " + settings.PerformanceDbName
+	_, err = c.Query(query)
+	return err
+}
+
 func (writer *StatisticInfluxDbWriter) Write(statistics *serverStatistics) error {
 	c, err := client.NewHTTPClient(client.HTTPConfig{
-		Addr: "http://"+ settings.PerformanceDbServer,
+		Addr: "http://" + settings.PerformanceDbServer,
 	})
 	if err != nil {
 		return err
@@ -29,7 +47,7 @@ func (writer *StatisticInfluxDbWriter) Write(statistics *serverStatistics) error
 	defer c.Close()
 
 	bp, _ := client.NewBatchPoints(client.BatchPointsConfig{
-		Database:  settings.PerformanceDbName,
+		Database: settings.PerformanceDbName,
 	})
 
 	tags := map[string]string{"Group ID": "0"}
diff --git a/deploy/docker/cluster/Dockerfile b/deploy/docker/cluster/Dockerfile
index c0182e934..2316d8811 100644
--- a/deploy/docker/cluster/Dockerfile
+++ b/deploy/docker/cluster/Dockerfile
@@ -6,7 +6,8 @@ RUN apt-get update && apt-get install -y supervisor apt-transport-https \
         ca-certificates \
         curl \
         gnupg-agent \
-        software-properties-common
+        software-properties-common dnsutils
+
 
 RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
 
@@ -45,5 +46,8 @@ RUN mkdir -p /var/log/supervisord/
 
 COPY scripts/ /var/run/asapo/
 
+RUN cd /var/run/asapo asapo && terraform init
+
+COPY asapo-*  /usr/bin/
 
 ENTRYPOINT ["supervisord", "--configuration", "/etc/supervisord.conf"]
diff --git a/deploy/docker/cluster/asapo-start b/deploy/docker/cluster/asapo-start
new file mode 100755
index 000000000..21b345a2a
--- /dev/null
+++ b/deploy/docker/cluster/asapo-start
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+cd /var/run/asapo && terraform apply -auto-approve "$@"
\ No newline at end of file
diff --git a/deploy/docker/cluster/asapo-stop b/deploy/docker/cluster/asapo-stop
new file mode 100755
index 000000000..e4fad7e65
--- /dev/null
+++ b/deploy/docker/cluster/asapo-stop
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+cd /var/run/asapo && terraform destroy -auto-approve "$@"
diff --git a/deploy/docker/cluster/asapo-wait-service b/deploy/docker/cluster/asapo-wait-service
new file mode 100755
index 000000000..4b70a1630
--- /dev/null
+++ b/deploy/docker/cluster/asapo-wait-service
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+
+if [ "$2" == "false" ]; then
+  exit 0
+fi
+
+
+until dig +short @127.0.0.1 -p 8600 $1.service.asapo | grep . ; do
+sleep 1
+done
+
diff --git a/deploy/docker/cluster/init_influxdb.sh b/deploy/docker/cluster/init_influxdb.sh
deleted file mode 100755
index bda6960f2..000000000
--- a/deploy/docker/cluster/init_influxdb.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env bash
-
-influx=`dig +short @127.0.0.1 -p 8600 influxdb.service.asapo | head -1`
-
-databases="asapo_receivers asapo_brokers"
-
-for database in $databases
-do
-    curl -i -XPOST http://${influx}:8086/query --data-urlencode "q=CREATE DATABASE $database"
-done
diff --git a/deploy/docker/cluster/run.sh b/deploy/docker/cluster/run.sh
index f41fc9497..a2aa3699b 100755
--- a/deploy/docker/cluster/run.sh
+++ b/deploy/docker/cluster/run.sh
@@ -7,6 +7,18 @@ DATA_GLOBAL_SHARED=/tmp/asapo/global_shared/data
 mkdir -p $NOMAD_ALLOC_HOST_SHARED $SERVICE_DATA_CLUSTER_SHARED $DATA_GLOBAL_SHARED
 chmod 777 $NOMAD_ALLOC_HOST_SHARED $SERVICE_DATA_CLUSTER_SHARED $DATA_GLOBAL_SHARED
 
+cd $SERVICE_DATA_CLUSTER_SHARED
+mkdir esdatadir fluentd grafana influxdb mongodb
+chmod 777 *
+
+mmc=`cat /proc/sys/vm/max_map_count`
+
+if (( mmc < 262144 )); then
+ 	echo increase max_map_count - needed for elasticsearch
+    exit 1
+fi
+
+
 docker run --privileged --rm -v /var/run/docker.sock:/var/run/docker.sock \
  	-v /var/lib/docker:/var/lib/docker \
 	-v $NOMAD_ALLOC_HOST_SHARED:$NOMAD_ALLOC_HOST_SHARED \
diff --git a/deploy/docker/cluster/scripts/asapo-brokers.nmd.tpl b/deploy/docker/cluster/scripts/asapo-brokers.nmd.tpl
index 6de159576..bb23c8695 100644
--- a/deploy/docker/cluster/scripts/asapo-brokers.nmd.tpl
+++ b/deploy/docker/cluster/scripts/asapo-brokers.nmd.tpl
@@ -25,7 +25,7 @@ job "asapo-brokers" {
         image = "yakser/asapo-broker${image_suffix}"
 	    force_pull = true
         volumes = ["local/config.json:/var/lib/broker/config.json"]
-        %{ if fluentd_logs }
+        %{ if elk_logs }
           logging {
           type = "fluentd"
           config {
diff --git a/deploy/docker/cluster/scripts/asapo-logging.nmd b/deploy/docker/cluster/scripts/asapo-logging.nmd.tpl
similarity index 76%
rename from deploy/docker/cluster/scripts/asapo-logging.nmd
rename to deploy/docker/cluster/scripts/asapo-logging.nmd.tpl
index fead57065..f8780d341 100644
--- a/deploy/docker/cluster/scripts/asapo-logging.nmd
+++ b/deploy/docker/cluster/scripts/asapo-logging.nmd.tpl
@@ -9,7 +9,8 @@ job "asapo-logging" {
 #  }
 
   group "fluentd" {
-    count = 1
+
+    count = "%{ if elk_logs }1%{ else }0%{ endif }"
     restart {
       attempts = 2
       interval = "3m"
@@ -25,20 +26,20 @@ job "asapo-logging" {
       }
 
       config {
-        dns_servers = ["127.0.0.1"]
         network_mode = "host"
         image = "yakser/fluentd_elastic"
         volumes = ["local/fluentd.conf:/fluentd/etc/fluent.conf",
-        "/${meta.shared_storage}/fluentd:/shared"]
+        "/${service_dir}/fluentd:/shared"]
       }
 
       resources {
-        cpu    = 500
-        memory = 256
+        memory = "${fluentd_total_memory_size}"
         network {
-          mbits = 10
           port "fluentd" {
-          static = 9880
+          static = "${fluentd_port}"
+          }
+          port "fluentd_stream" {
+            static = "${fluentd_port_stream}"
           }
         }
       }
@@ -61,7 +62,7 @@ job "asapo-logging" {
         }
       }
       template {
-         source        = "/usr/local/nomad_jobs/fluentd.conf"
+         source        = "${scripts_dir}/fluentd.conf.tpl"
          destination   = "local/fluentd.conf"
          change_mode   = "restart"
       }
@@ -69,7 +70,7 @@ job "asapo-logging" {
   }
 #elasticsearch
   group "elk" {
-    count = 1
+    count = "%{ if elk_logs }1%{ else }0%{ endif }"
     restart {
       attempts = 2
       interval = "3m"
@@ -93,20 +94,15 @@ job "asapo-logging" {
           nproc = "8192"
         }
         network_mode = "host"
-        dns_servers = ["127.0.0.1"]
-        image = "docker.elastic.co/elasticsearch/elasticsearch:6.3.0"
-        volumes = ["/${meta.shared_storage}/esdatadir:/usr/share/elasticsearch/data"]
+        image = "docker.elastic.co/elasticsearch/elasticsearch:${elasticsearch_version}"
+        volumes = ["/${service_dir}/esdatadir:/usr/share/elasticsearch/data"]
       }
 
       resources {
-        #MHz
-        cpu = 4000
-        #MB
-        memory = 2048
+        memory = "${elasticsearch_total_memory_size}"
         network {
-          mbits = 10
           port "elasticsearch" {
-            static = 9200
+            static = "${elasticsearch_port}"
           }
          }
       }
@@ -134,24 +130,21 @@ job "asapo-logging" {
 
      config {
        network_mode = "host"
-       dns_servers = ["127.0.0.1"]
-       image = "docker.elastic.co/kibana/kibana:6.3.0"
+       image = "docker.elastic.co/kibana/kibana:${kibana_version}"
        volumes = ["local/kibana.yml:/usr/share/kibana/config/kibana.yml"]
      }
 
       template {
-         source        = "/usr/local/nomad_jobs/kibana.yml"
+         source        = "${scripts_dir}/kibana.yml"
          destination   = "local/kibana.yml"
          change_mode   = "restart"
       }
 
      resources {
-       cpu = 256
-       memory = 1024
+       memory = "${kibana_total_memory_size}"
        network {
-         mbits = 10
          port "kibana" {
-           static = 5601
+           static = "${kibana_port}"
          }
         }
      }
diff --git a/deploy/docker/cluster/scripts/asapo-nginx.nmd.tpl b/deploy/docker/cluster/scripts/asapo-nginx.nmd.tpl
index b48075b7d..e30380031 100644
--- a/deploy/docker/cluster/scripts/asapo-nginx.nmd.tpl
+++ b/deploy/docker/cluster/scripts/asapo-nginx.nmd.tpl
@@ -23,6 +23,17 @@ job "asapo-nginx" {
     task "nginx" {
       driver = "docker"
 
+      meta {
+        fluentd_port = "${fluentd_port}"
+        fluentd_port_stream = "${fluentd_port_stream}"
+        kibana_port = "${kibana_port}"
+        elasticsearch_port = "${elasticsearch_port}"
+        grafana_port = "${grafana_port}"
+        influxdb_port = "${influxdb_port}"
+        authorizer_port = "${authorizer_port}"
+        discovery_port = "${discovery_port}"
+      }
+
       config {
         network_mode = "host"
         image = "nginx:${nginx_version}"
diff --git a/deploy/docker/cluster/scripts/asapo-receivers.nmd.tpl b/deploy/docker/cluster/scripts/asapo-receivers.nmd.tpl
index 83b5aeb60..5e78594b3 100644
--- a/deploy/docker/cluster/scripts/asapo-receivers.nmd.tpl
+++ b/deploy/docker/cluster/scripts/asapo-receivers.nmd.tpl
@@ -28,7 +28,7 @@ job "asapo-receivers" {
 	    force_pull = true
         volumes = ["local/config.json:/var/lib/receiver/config.json",
                    "${data_dir}:/var/lib/receiver/data"]
-        %{ if fluentd_logs }
+        %{ if elk_logs }
         logging {
         type = "fluentd"
         config {
diff --git a/deploy/docker/cluster/scripts/asapo-services.nmd.tpl b/deploy/docker/cluster/scripts/asapo-services.nmd.tpl
index 3922fb8a5..45eb3c938 100644
--- a/deploy/docker/cluster/scripts/asapo-services.nmd.tpl
+++ b/deploy/docker/cluster/scripts/asapo-services.nmd.tpl
@@ -15,7 +15,7 @@ job "asapo-services" {
         image = "yakser/asapo-authorizer${image_suffix}"
 	force_pull = true
         volumes = ["local/config.json:/var/lib/authorizer/config.json"]
-	%{ if fluentd_logs }
+	%{ if elk_logs }
         logging {
             type = "fluentd"
             config {
@@ -28,11 +28,10 @@ job "asapo-services" {
       }
 
       resources {
-        cpu    = 500 # 500 MHz
-        memory = 256 # 256MB
+        memory = "${authorizer_total_memory_size}"
         network {
           port "authorizer" {
-            static = "5007"
+            static = "${authorizer_port}"
           }
         }
       }
@@ -79,7 +78,7 @@ job "asapo-services" {
         image = "yakser/asapo-discovery${image_suffix}"
 	    force_pull = true
         volumes = ["local/config.json:/var/lib/discovery/config.json"]
-        %{ if fluentd_logs }
+        %{ if elk_logs }
         logging {
         type = "fluentd"
         config {
@@ -92,11 +91,10 @@ job "asapo-services" {
       }
 
       resources {
-        cpu    = 500 # 500 MHz
-        memory = 256 # 256MB
+        memory = "${discovery_total_memory_size}"
         network {
           port "discovery" {
-            static = "5006"
+            static = "${discovery_port}"
           }
         }
       }
diff --git a/deploy/docker/cluster/scripts/asapo.auto.tfvars b/deploy/docker/cluster/scripts/asapo.auto.tfvars
index 62a3bf074..560ba638d 100644
--- a/deploy/docker/cluster/scripts/asapo.auto.tfvars
+++ b/deploy/docker/cluster/scripts/asapo.auto.tfvars
@@ -1,5 +1,7 @@
 nginx_version = "1.14"
-
+elasticsearch_version = "6.3.0"
+kibana_version = "6.3.0"
+mongo_version = "4.0.0"
 
 
 asapo_imagename_suffix="-dev"
diff --git a/deploy/docker/cluster/scripts/fluentd.conf b/deploy/docker/cluster/scripts/fluentd.conf.tpl
similarity index 91%
rename from deploy/docker/cluster/scripts/fluentd.conf
rename to deploy/docker/cluster/scripts/fluentd.conf.tpl
index 948c5109d..de6188765 100644
--- a/deploy/docker/cluster/scripts/fluentd.conf
+++ b/deploy/docker/cluster/scripts/fluentd.conf.tpl
@@ -1,13 +1,13 @@
 <source>
   @type forward
-  port 24224
+  port {{ env "NOMAD_PORT_fluentd_stream" }}
   source_hostname_key source_addr
   bind 0.0.0.0
 </source>
 
 <source>
  @type http
- port 9880
+ port {{ env "NOMAD_PORT_fluentd" }}
  bind 0.0.0.0
  add_remote_addr true
  format json
diff --git a/deploy/docker/cluster/scripts/nginx.conf.tpl b/deploy/docker/cluster/scripts/nginx.conf.tpl
index 72a7cefa1..f6cadf53c 100644
--- a/deploy/docker/cluster/scripts/nginx.conf.tpl
+++ b/deploy/docker/cluster/scripts/nginx.conf.tpl
@@ -27,26 +27,26 @@ http {
 
    		  location /influxdb/ {
             rewrite ^/influxdb(/.*) $1 break;
-            proxy_pass http://$influxdb_endpoint:8086$uri$is_args$args;
+            proxy_pass http://$influxdb_endpoint:{{ env "NOMAD_META_influxdb_port" }}$uri$is_args$args;
           }
 
    		  location /elasticsearch/ {
             rewrite ^/elasticsearch(/.*) $1 break;
-            proxy_pass http://$elasticsearch_endpoint:9200$uri$is_args$args;
+            proxy_pass http://$elasticsearch_endpoint:{{ env "NOMAD_META_elasticsearch_port" }}$uri$is_args$args;
           }
 
           location /discovery/ {
             rewrite ^/discovery(/.*) $1 break;
-            proxy_pass http://$discovery_endpoint:5006$uri$is_args$args;
+            proxy_pass http://$discovery_endpoint:{{ env "NOMAD_META_discovery_port" }}$uri$is_args$args;
           }
 
           location /logs/ {
               rewrite ^/logs(/.*) $1 break;
-              proxy_pass http://$fluentd_endpoint:9880$uri$is_args$args;
+              proxy_pass http://$fluentd_endpoint:{{ env "NOMAD_META_fluentd_port" }}$uri$is_args$args;
           }
 
           location /logsview/ {
-            proxy_pass http://$kibana_endpoint:5601$uri$is_args$args;
+            proxy_pass http://$kibana_endpoint:{{ env "NOMAD_META_kibana_port" }}$uri$is_args$args;
             proxy_set_header  X-Real-IP  $remote_addr;
             proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header  Host $http_host;
@@ -54,12 +54,12 @@ http {
 
           location /performance/ {
             rewrite ^/performance(/.*) $1 break;
-            proxy_pass http://$grafana_endpoint:3000$uri$is_args$args;
+            proxy_pass http://$grafana_endpoint:{{ env "NOMAD_META_grafana_port" }}$uri$is_args$args;
           }
 
           location /authorizer/ {
              rewrite ^/authorizer(/.*) $1 break;
-             proxy_pass http://$authorizer_endpoint:5007$uri$is_args$args;
+             proxy_pass http://$authorizer_endpoint:{{ env "NOMAD_META_authorizer_port" }}$uri$is_args$args;
           }
 
       	  location /nginx-health {
@@ -77,8 +77,6 @@ stream {
 
     server {
         listen     9881;
-        proxy_pass $upstream:24224;
+        proxy_pass $upstream:{{ env "NOMAD_META_fluentd_port_stream" }};
     }
 }
-
-
diff --git a/deploy/docker/cluster/scripts/resources.tf b/deploy/docker/cluster/scripts/resources.tf
index 274425056..0ad2631b9 100644
--- a/deploy/docker/cluster/scripts/resources.tf
+++ b/deploy/docker/cluster/scripts/resources.tf
@@ -1,23 +1,31 @@
-resource "nomad_job" "asapo-perfmetrics" {
-  jobspec = "${data.template_file.asapo_perfmetrics.rendered}"
+resource "nomad_job" "asapo-nginx" {
+  jobspec = "${data.template_file.nginx.rendered}"
 }
 
 resource "nomad_job" "asapo-mongo" {
   jobspec = "${data.template_file.asapo_mongo.rendered}"
 }
 
-resource "nomad_job" "asapo-nginx" {
-  jobspec = "${data.template_file.nginx.rendered}"
+resource "nomad_job" "asapo-perfmetrics" {
+  jobspec = "${data.template_file.asapo_perfmetrics.rendered}"
+}
+
+resource "nomad_job" "asapo-logging" {
+  jobspec = "${data.template_file.asapo_logging.rendered}"
+  depends_on = [null_resource.nginx]
 }
 
 resource "nomad_job" "asapo-services" {
   jobspec = "${data.template_file.asapo_services.rendered}"
+  depends_on = [null_resource.nginx,null_resource.mongo,null_resource.influxdb,null_resource.fluentd,null_resource.elasticsearch]
 }
 
 resource "nomad_job" "asapo-receivers" {
   jobspec = "${data.template_file.asapo_receivers.rendered}"
+  depends_on = [nomad_job.asapo-services,null_resource.asapo-authorizer,null_resource.asapo-discovery]
 }
 
 resource "nomad_job" "asapo-brokers" {
   jobspec = "${data.template_file.asapo_brokers.rendered}"
+  depends_on = [nomad_job.asapo-services,null_resource.asapo-authorizer,null_resource.asapo-discovery]
 }
diff --git a/deploy/docker/cluster/scripts/resources_services.tf b/deploy/docker/cluster/scripts/resources_services.tf
new file mode 100644
index 000000000..22499375f
--- /dev/null
+++ b/deploy/docker/cluster/scripts/resources_services.tf
@@ -0,0 +1,75 @@
+resource "null_resource" "nginx" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service nginx"
+  }
+  depends_on = [nomad_job.asapo-nginx]
+
+}
+
+resource "null_resource" "influxdb" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service influxdb"
+  }
+  depends_on = [nomad_job.asapo-perfmetrics]
+}
+
+resource "null_resource" "fluentd" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service fluentd ${var.elk_logs}"
+  }
+  depends_on = [nomad_job.asapo-logging]
+}
+
+resource "null_resource" "mongo" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service mongo"
+  }
+  depends_on = [nomad_job.asapo-mongo]
+
+}
+
+resource "null_resource" "asapo-authorizer" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service asapo-authorizer"
+  }
+  depends_on = [nomad_job.asapo-services]
+
+}
+
+resource "null_resource" "asapo-discovery" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service asapo-discovery"
+  }
+  depends_on = [nomad_job.asapo-services]
+}
+
+
+resource "null_resource" "asapo-broker" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service asapo-broker"
+  }
+  depends_on = [nomad_job.asapo-brokers]
+}
+
+resource "null_resource" "asapo-receiver" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service asapo-receiver"
+  }
+  depends_on = [nomad_job.asapo-receivers]
+}
+
+resource "null_resource" "elasticsearch" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service elasticsearch ${var.elk_logs}"
+  }
+  depends_on = [nomad_job.asapo-logging]
+}
+
+resource "null_resource" "kibana" {
+  provisioner "local-exec" {
+    command = "asapo-wait-service kibana ${var.elk_logs}"
+  }
+  depends_on = [nomad_job.asapo-logging]
+}
+
+
diff --git a/deploy/docker/cluster/scripts/templates.tf b/deploy/docker/cluster/scripts/templates.tf
index edf06bbad..f6e87b25e 100644
--- a/deploy/docker/cluster/scripts/templates.tf
+++ b/deploy/docker/cluster/scripts/templates.tf
@@ -3,6 +3,14 @@ data "template_file" "nginx" {
   vars = {
     scripts_dir = "${var.job_scripts_dir}"
     nginx_version = "${var.nginx_version}"
+    fluentd_port = "${var.fluentd_port}"
+    fluentd_port_stream = "${var.fluentd_port_stream}"
+    kibana_port = "${var.kibana_port}"
+    elasticsearch_port = "${var.elasticsearch_port}"
+    grafana_port = "${var.grafana_port}"
+    influxdb_port = "${var.influxdb_port}"
+    authorizer_port = "${var.authorizer_port}"
+    discovery_port = "${var.discovery_port}"
   }
 }
 
@@ -11,7 +19,12 @@ data "template_file" "asapo_services" {
   vars = {
     scripts_dir = "${var.job_scripts_dir}"
     image_suffix = "${var.asapo_imagename_suffix}:${var.asapo_image_tag}"
-    fluentd_logs = "${var.fluentd_logs}"
+    elk_logs = "${var.elk_logs}"
+    authorizer_total_memory_size = "${var.authorizer_total_memory_size}"
+    discovery_total_memory_size = "${var.discovery_total_memory_size}"
+    authorizer_port = "${var.authorizer_port}"
+    discovery_port = "${var.discovery_port}"
+
   }
 }
 
@@ -21,7 +34,7 @@ data "template_file" "asapo_receivers" {
     scripts_dir = "${var.job_scripts_dir}"
     data_dir = "${var.data_dir}"
     image_suffix = "${var.asapo_imagename_suffix}:${var.asapo_image_tag}"
-    fluentd_logs = "${var.fluentd_logs}"
+    elk_logs = "${var.elk_logs}"
     receiver_total_memory_size = "${var.receiver_total_memory_size}"
     receiver_dataserver_cache_size = "${var.receiver_dataserver_cache_size}"
   }
@@ -32,7 +45,7 @@ data "template_file" "asapo_brokers" {
   vars = {
     scripts_dir = "${var.job_scripts_dir}"
     image_suffix = "${var.asapo_imagename_suffix}:${var.asapo_image_tag}"
-    fluentd_logs = "${var.fluentd_logs}"
+    elk_logs = "${var.elk_logs}"
   }
 }
 
@@ -47,7 +60,6 @@ data "template_file" "asapo_perfmetrics" {
     grafana_port = "${var.grafana_port}"
     influxdb_total_memory_size = "${var.influxdb_total_memory_size}"
     influxdb_port = "${var.influxdb_port}"
-
     }
 }
 
@@ -61,3 +73,22 @@ data "template_file" "asapo_mongo" {
     mongo_port = "${var.mongo_port}"
   }
 }
+
+data "template_file" "asapo_logging" {
+  template = "${file("${var.job_scripts_dir}/asapo-logging.nmd.tpl")}"
+  vars = {
+    service_dir = "${var.service_dir}"
+    scripts_dir = "${var.job_scripts_dir}"
+    elk_logs = "${var.elk_logs}"
+    fluentd_total_memory_size = "${var.fluentd_total_memory_size}"
+    fluentd_port = "${var.fluentd_port}"
+    fluentd_port_stream = "${var.fluentd_port_stream}"
+    kibana_version = "${var.kibana_version}"
+    kibana_total_memory_size = "${var.kibana_total_memory_size}"
+    kibana_port = "${var.kibana_port}"
+    elasticsearch_version = "${var.elasticsearch_version}"
+    elasticsearch_total_memory_size = "${var.elasticsearch_total_memory_size}"
+    elasticsearch_port = "${var.elasticsearch_port}"
+  }
+}
+
diff --git a/deploy/docker/cluster/scripts/vars.tf b/deploy/docker/cluster/scripts/vars.tf
index 8144db2fb..09152c4bc 100644
--- a/deploy/docker/cluster/scripts/vars.tf
+++ b/deploy/docker/cluster/scripts/vars.tf
@@ -1,4 +1,4 @@
-variable "fluentd_logs" {
+variable "elk_logs" {
  default = true
 }
 
@@ -10,11 +10,22 @@ variable "grafana_version" {
   default = "latest"
 }
 
+variable "elasticsearch_version" {
+  default = "latest"
+}
+
+variable "kibana_version" {
+  default = "latest"
+}
 
 variable "influxdb_version" {
   default = "latest"
 }
 
+variable "mongo_version" {
+  default = "latest"
+}
+
 variable "asapo_imagename_suffix" {
   default = ""
 }
@@ -33,7 +44,6 @@ variable "service_dir" {
 variable "data_dir" {
 }
 
-
 variable "receiver_total_memory_size" {
   default = "2000" #mb
 }
@@ -43,11 +53,35 @@ variable "receiver_dataserver_cache_size" {
 }
 
 variable "grafana_total_memory_size" {
-  default = "2000" #mb
+  default = "256" #mb
 }
 
 variable "influxdb_total_memory_size" {
-  default = "2000" #mb
+  default = "256" #mb
+}
+
+variable "fluentd_total_memory_size" {
+  default = "256"
+}
+
+variable "elasticsearch_total_memory_size" {
+  default = "256"
+}
+
+variable "kibana_total_memory_size" {
+  default = "256"
+}
+
+variable "mongo_total_memory_size" {
+  default = "300"
+}
+
+variable "authorizer_total_memory_size" {
+  default = "256"
+}
+
+variable "discovery_total_memory_size" {
+  default = "256"
 }
 
 variable "grafana_port" {
@@ -58,17 +92,30 @@ variable "influxdb_port" {
   default = "8086"
 }
 
-
 variable "mongo_port" {
   default = "27017"
 }
 
+variable "fluentd_port" {
+  default = "9880"
+}
 
-variable "mongo_version" {
-  default = "4.0.0"
+variable "fluentd_port_stream" {
+  default = "24224"
 }
 
-variable "mongo_total_memory_size" {
-  default = "300"
+variable "elasticsearch_port" {
+  default = "9200"
 }
 
+variable "kibana_port" {
+  default = "5601"
+}
+
+variable "discovery_port" {
+  default = "5006"
+}
+
+variable "authorizer_port" {
+  default = "5007"
+}
diff --git a/deploy/docker/cluster/tf_run.sh b/deploy/docker/cluster/tf_run.sh
deleted file mode 100755
index 13bab997e..000000000
--- a/deploy/docker/cluster/tf_run.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/env bash
-
-docker exec -w /var/run/asapo asapo terraform init
-
-docker exec -w /var/run/asapo asapo terraform apply -auto-approve -var fluentd_logs=false
\ No newline at end of file
diff --git a/discovery/src/asapo_discovery/request_handler/request_handler_consul.go b/discovery/src/asapo_discovery/request_handler/request_handler_consul.go
index ceda776a0..8e34fd8f2 100644
--- a/discovery/src/asapo_discovery/request_handler/request_handler_consul.go
+++ b/discovery/src/asapo_discovery/request_handler/request_handler_consul.go
@@ -97,7 +97,7 @@ func (rh *ConsulRequestHandler) GetMongo() ([]byte, error) {
 	if (rh.client == nil) {
 		return nil, errors.New("consul client not connected")
 	}
-	response, err := rh.GetServices("asapo-mongo")
+	response, err := rh.GetServices("mongo")
 	if err != nil {
 		return nil, err
 	}
diff --git a/discovery/src/asapo_discovery/request_handler/request_handler_consul_test.go b/discovery/src/asapo_discovery/request_handler/request_handler_consul_test.go
index e1f9d47b0..af5f08b92 100644
--- a/discovery/src/asapo_discovery/request_handler/request_handler_consul_test.go
+++ b/discovery/src/asapo_discovery/request_handler/request_handler_consul_test.go
@@ -51,7 +51,7 @@ func (suite *ConsulHandlerTestSuite) SetupTest() {
 
 	suite.registerAgents("asapo-receiver")
 	suite.registerAgents("asapo-broker")
-	suite.registerAgents("asapo-mongo")
+	suite.registerAgents("mongo")
 
 }
 
@@ -60,8 +60,8 @@ func (suite *ConsulHandlerTestSuite) TearDownTest() {
 	suite.client.Agent().ServiceDeregister("asapo-receiver1235")
 	suite.client.Agent().ServiceDeregister("asapo-broker1234")
 	suite.client.Agent().ServiceDeregister("asapo-broker1235")
-	suite.client.Agent().ServiceDeregister("asapo-mongo1234")
-	suite.client.Agent().ServiceDeregister("asapo-mongo1235")
+	suite.client.Agent().ServiceDeregister("mongo1234")
+	suite.client.Agent().ServiceDeregister("mongo1235")
 
 }
 
diff --git a/examples/worker/getnext_broker/getnext_broker.cpp b/examples/worker/getnext_broker/getnext_broker.cpp
index 31d64038b..871ae2c64 100644
--- a/examples/worker/getnext_broker/getnext_broker.cpp
+++ b/examples/worker/getnext_broker/getnext_broker.cpp
@@ -98,7 +98,6 @@ std::vector<std::thread> StartThreads(const Args& params,
             }
             if (err) {
                 (*errors)[i] += ProcessError(err);
-                std::cout << "Received: " << (int) err->GetErrorType() << err << std::endl;
                 if (err == asapo::IOErrorTemplates::kTimeout) {
                     break;
                 }
diff --git a/receiver/src/statistics_sender_influx_db.cpp b/receiver/src/statistics_sender_influx_db.cpp
index 3598ca27b..66bac2579 100644
--- a/receiver/src/statistics_sender_influx_db.cpp
+++ b/receiver/src/statistics_sender_influx_db.cpp
@@ -54,6 +54,24 @@ std::string StatisticsSenderInfluxDb::StatisticsToString(const StatisticsToSend&
 }
 
 StatisticsSenderInfluxDb::StatisticsSenderInfluxDb(): httpclient__{DefaultHttpClient()}, log__{GetDefaultReceiverLogger()} {
+    HttpCode code;
+    Error err;
+    auto response = httpclient__->Post(GetReceiverConfig()->performance_db_uri + "/query",
+                                       "q=create database " + GetReceiverConfig()->performance_db_name, &code, &err);
+    std::string msg = "initializing statistics for " + GetReceiverConfig()->performance_db_name + " at " +
+                      GetReceiverConfig()->performance_db_uri;
+    if (err) {
+        log__->Warning(msg + " - " + err->Explain());
+        return;
+    }
+
+    if (code != HttpCode::OK && code != HttpCode::NoContent) {
+        log__->Warning(msg + " - " + response);
+        return;
+    }
+
+    log__->Debug(msg);
+
 };
 
 
diff --git a/receiver/src/statistics_sender_influx_db.h b/receiver/src/statistics_sender_influx_db.h
index 65c1a579d..1c51e80a7 100644
--- a/receiver/src/statistics_sender_influx_db.h
+++ b/receiver/src/statistics_sender_influx_db.h
@@ -13,9 +13,7 @@ class StatisticsSenderInfluxDb : public StatisticsSender {
     virtual void SendStatistics(const StatisticsToSend& statistic) const noexcept override;
     std::unique_ptr<HttpClient> httpclient__;
     const AbstractLogger* log__;
-    ~StatisticsSenderInfluxDb() {
-        printf("Deleting StatisticsSenderInfluxDb\n");
-    };
+    ~StatisticsSenderInfluxDb() {};
   private:
     std::string StatisticsToString(const StatisticsToSend& statistic) const noexcept;
 
diff --git a/tests/automatic/broker/check_monitoring/check_linux.sh b/tests/automatic/broker/check_monitoring/check_linux.sh
index 7767ebcb4..5945ba272 100644
--- a/tests/automatic/broker/check_monitoring/check_linux.sh
+++ b/tests/automatic/broker/check_monitoring/check_linux.sh
@@ -13,11 +13,8 @@ Cleanup() {
 	kill -9 $brokerid
 }
 
-influx -execute "create database ${database_name}"
-
 token=`$2 token -secret auth_secret.key data`
 
-
 $1 -config settings.json &
 
 sleep 0.3
diff --git a/tests/automatic/full_chain/simple_chain/check_linux.sh b/tests/automatic/full_chain/simple_chain/check_linux.sh
index faafb60cc..b35040012 100644
--- a/tests/automatic/full_chain/simple_chain/check_linux.sh
+++ b/tests/automatic/full_chain/simple_chain/check_linux.sh
@@ -28,7 +28,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
 nomad run nginx.nmd
diff --git a/tests/automatic/full_chain/simple_chain_dataset/check_linux.sh b/tests/automatic/full_chain/simple_chain_dataset/check_linux.sh
index 95d5b1b51..b6326b594 100644
--- a/tests/automatic/full_chain/simple_chain_dataset/check_linux.sh
+++ b/tests/automatic/full_chain/simple_chain_dataset/check_linux.sh
@@ -27,7 +27,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
 nomad run nginx.nmd
diff --git a/tests/automatic/full_chain/simple_chain_filegen_readdata_cache/check_linux.sh b/tests/automatic/full_chain/simple_chain_filegen_readdata_cache/check_linux.sh
index 552d2f011..569a50d24 100644
--- a/tests/automatic/full_chain/simple_chain_filegen_readdata_cache/check_linux.sh
+++ b/tests/automatic/full_chain/simple_chain_filegen_readdata_cache/check_linux.sh
@@ -32,9 +32,6 @@ Cleanup() {
     rm out.txt
 }
 
-influx -execute "create database ${monitor_database_name}"
-
-
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
 nomad run nginx.nmd
@@ -63,6 +60,6 @@ grep "hello1" out.txt
 grep "hello2" out.txt
 grep "hello3" out.txt
 
-sleep 10
+sleep 12
 
 influx -execute "select sum(n_requests) from statistics where receiver_ds_tag !=''" -database=${monitor_database_name} -format=json  | jq .results[0].series[0].values[0][1] | tee /dev/stderr | grep 3
diff --git a/tests/automatic/full_chain/simple_chain_metadata/check_linux.sh b/tests/automatic/full_chain/simple_chain_metadata/check_linux.sh
index 7496544bb..26cd262a3 100644
--- a/tests/automatic/full_chain/simple_chain_metadata/check_linux.sh
+++ b/tests/automatic/full_chain/simple_chain_metadata/check_linux.sh
@@ -27,7 +27,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
 nomad run nginx.nmd
diff --git a/tests/automatic/full_chain/simple_chain_usermeta_python/check_linux.sh b/tests/automatic/full_chain/simple_chain_usermeta_python/check_linux.sh
index 64c35ed36..c965b1796 100644
--- a/tests/automatic/full_chain/simple_chain_usermeta_python/check_linux.sh
+++ b/tests/automatic/full_chain/simple_chain_usermeta_python/check_linux.sh
@@ -27,7 +27,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
 nomad run nginx.nmd
diff --git a/tests/automatic/full_chain/two_beamlines/check_linux.sh b/tests/automatic/full_chain/two_beamlines/check_linux.sh
index c92aaffe6..2bc02dff3 100644
--- a/tests/automatic/full_chain/two_beamlines/check_linux.sh
+++ b/tests/automatic/full_chain/two_beamlines/check_linux.sh
@@ -35,7 +35,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
 echo "db.${beamtime_id1}_${stream}.insert({dummy:1})" | mongo ${beamtime_id1}_${stream}
 echo "db.${beamtime_id2}_${stream}.insert({dummy:1})" | mongo ${beamtime_id2}_${stream}
 
diff --git a/tests/automatic/high_avail/broker_mongo_restart/check_linux.sh b/tests/automatic/high_avail/broker_mongo_restart/check_linux.sh
index 86ced0726..a2b103375 100644
--- a/tests/automatic/high_avail/broker_mongo_restart/check_linux.sh
+++ b/tests/automatic/high_avail/broker_mongo_restart/check_linux.sh
@@ -52,8 +52,6 @@ Cleanup() {
     kill_mongo
 }
 
-influx -execute "create database ${monitor_database_name}"
-
 sed -i 's/27017/27016/g' receiver.json.tpl
 sed -i 's/27017/27016/g' discovery.json.tpl
 sed -i 's/info/debug/g' broker.json.tpl
diff --git a/tests/automatic/high_avail/services_restart/check_linux.sh b/tests/automatic/high_avail/services_restart/check_linux.sh
index 2b08ee4c3..c68d79846 100644
--- a/tests/automatic/high_avail/services_restart/check_linux.sh
+++ b/tests/automatic/high_avail/services_restart/check_linux.sh
@@ -23,8 +23,6 @@ Cleanup() {
     influx -execute "drop database ${monitor_database_name}"
 }
 
-influx -execute "create database ${monitor_database_name}"
-
 sed -i 's/info/debug/g' broker.json.tpl
 
 nomad run nginx.nmd
diff --git a/tests/automatic/producer_receiver/check_monitoring/check_linux.sh b/tests/automatic/producer_receiver/check_monitoring/check_linux.sh
index 585fc2ee6..ad3209711 100644
--- a/tests/automatic/producer_receiver/check_monitoring/check_linux.sh
+++ b/tests/automatic/producer_receiver/check_monitoring/check_linux.sh
@@ -22,8 +22,6 @@ Cleanup() {
 
 mkdir -p ${receiver_folder}
 
-influx -execute "create database ${database_name}"
-
 nomad run authorizer.nmd
 nomad run receiver.nmd
 nomad run discovery.nmd
@@ -36,4 +34,4 @@ $1 localhost:8400 ${beamtime_id} 100 112 4  0 100
 sleep 2
 
 # should be 118 requests (112 data transfers +  5 authorizations (4 + 1 after reconnection due to wrong meta))
-influx -execute "select sum(n_requests) from statistics" -database=${database_name} -format=json  | jq .results[0].series[0].values[0][1] | tee /dev/stderr | grep 117
+influx -execute "select sum(n_requests) from statistics" -database=${database_name} -format=json | tee /dev/stderr  | jq .results[0].series[0].values[0][1] | tee /dev/stderr | grep 117
diff --git a/tests/automatic/producer_receiver/transfer_datasets/check_linux.sh b/tests/automatic/producer_receiver/transfer_datasets/check_linux.sh
index 45d21a1fc..0d3c46ef0 100644
--- a/tests/automatic/producer_receiver/transfer_datasets/check_linux.sh
+++ b/tests/automatic/producer_receiver/transfer_datasets/check_linux.sh
@@ -24,7 +24,6 @@ Cleanup() {
 echo "db.dropDatabase()" | mongo ${beamtime_id}_detector
 
 
-influx -execute "create database ${database_name}"
 # create db before worker starts reading it. todo: git rid of it
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
diff --git a/tests/automatic/producer_receiver/transfer_single_file/check_linux.sh b/tests/automatic/producer_receiver/transfer_single_file/check_linux.sh
index efcce33f9..2b44d7521 100644
--- a/tests/automatic/producer_receiver/transfer_single_file/check_linux.sh
+++ b/tests/automatic/producer_receiver/transfer_single_file/check_linux.sh
@@ -21,7 +21,6 @@ Cleanup() {
     influx -execute "drop database ${database_name}"
 }
 
-influx -execute "create database ${database_name}"
 # create db before worker starts reading it. todo: git rid of it
 echo "db.${beamtime_id}_detector.insert({dummy:1})" | mongo ${beamtime_id}_detector
 
diff --git a/tests/manual/performance_full_chain_simple/test.sh b/tests/manual/performance_full_chain_simple/test.sh
index 1786a56a4..52add6c8d 100755
--- a/tests/manual/performance_full_chain_simple/test.sh
+++ b/tests/manual/performance_full_chain_simple/test.sh
@@ -116,7 +116,6 @@ scp ../../../cmake-build-release/asapo_tools/asapo ${worker_node}:${worker_dir}
 scp ../../../tests/automatic/settings/auth_secret.key ${worker_node}:${worker_dir}/auth_secret.key
 
 #monitoring_start
-ssh ${monitor_node} influx -execute \"create database db_test\"
 #ssh ${monitor_node} docker run -d -p 8086 -p 8086 --name influxdb influxdb
 
 #mongo_start
-- 
GitLab