diff --git a/deploy/asapo_helm_chart/asapo/configs/asapo-broker.json b/deploy/asapo_helm_chart/asapo/configs/asapo-broker.json
index 10441cd9f575371bed79a453c7368eb4023556e5..d59aaed6d482c2327b02d757f310fe1302569940 100644
--- a/deploy/asapo_helm_chart/asapo/configs/asapo-broker.json
+++ b/deploy/asapo_helm_chart/asapo/configs/asapo-broker.json
@@ -1,6 +1,6 @@
 {
   "DatabaseServer":"auto",
-  "DiscoveryServer": "discovery:{{ .Values.ownServices.discovery.port }}",
+  "DiscoveryServer": "asapo-discovery:{{ .Values.ownServices.discovery.port }}",
   "PerformanceDbServer":"{{ .Chart.Name }}-influxdb:{{ .Values.influxdb.influxdb.service.port }}",
   "PerformanceDbName": "asapo_brokers",
   "Port": {{ .Values.ownServices.broker.port }},
diff --git a/deploy/asapo_helm_chart/asapo/configs/asapo-discovery.json b/deploy/asapo_helm_chart/asapo/configs/asapo-discovery.json
new file mode 100644
index 0000000000000000000000000000000000000000..fdd03209489d3ef68a889cb2482382f6bd097e2c
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/configs/asapo-discovery.json
@@ -0,0 +1,23 @@
+{
+  "Mode": "static",
+  "Receiver": {
+    "StaticEndpoints": [
+      "127.0.0.1:22001"
+    ],
+    "MaxConnections": 32,
+    "UseIBAddress": false
+  },
+  "Broker": {
+    "StaticEndpoint": "127.0.0.1:5005"
+  },
+  "Mongo": {
+    "StaticEndpoint": "127.0.0.1:27017"
+  },
+  "FileTransferService": {
+    "StaticEndpoint": "127.0.0.1:27017"
+  },
+  "Port": {{ .Values.ownServices.discovery.port }},
+  "LogLevel": "debug"
+}
+
+
diff --git a/deploy/asapo_helm_chart/asapo/configs/asapo-file-transfer.json b/deploy/asapo_helm_chart/asapo/configs/asapo-file-transfer.json
new file mode 100644
index 0000000000000000000000000000000000000000..49cc9bfc3b204c19cd3b9751b930726e651b2c9b
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/configs/asapo-file-transfer.json
@@ -0,0 +1,5 @@
+{
+  "Port": {{ .Values.ownServices.fileTransfer.port }},
+  "LogLevel":"debug",
+  "SecretFile":"/etc/file-transfer/auth_secret.key"
+}
diff --git a/deploy/asapo_helm_chart/asapo/configs/asapo-fluentd.conf b/deploy/asapo_helm_chart/asapo/configs/asapo-fluentd.conf
index 516f52d8a7f9654aeb0f10aeb112c50472caacd0..2ba55b940529ab672458db682fe6728eb5c14f40 100644
--- a/deploy/asapo_helm_chart/asapo/configs/asapo-fluentd.conf
+++ b/deploy/asapo_helm_chart/asapo/configs/asapo-fluentd.conf
@@ -2,6 +2,7 @@
 @type tail
 path /var/log/containers/{{ .service.serviceName }}*{{ .service.serviceName }}*.log
 pos_file /tmp/{{ .service.serviceName }}.log.pos
+read_from_head true
 tag asapo
 <parse>
 @type json
diff --git a/deploy/asapo_helm_chart/asapo/configs/asapo-receiver.json b/deploy/asapo_helm_chart/asapo/configs/asapo-receiver.json
new file mode 100644
index 0000000000000000000000000000000000000000..1c0d4439c4e56c19bc029e2386bdbe39be6440a3
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/configs/asapo-receiver.json
@@ -0,0 +1,24 @@
+{
+  "AdvertiseIP": "auto",
+  "PerformanceDbServer": "{{ .Chart.Name }}-influxdb:{{ .Values.influxdb.influxdb.service.port }}",
+  "PerformanceDbName": "asapo_receivers",
+  "DatabaseServer": "auto",
+  "DiscoveryServer": "asapo-discovery:{{ .Values.ownServices.discovery.port }}",
+  "AuthorizationServer": "asapo-authorizer:{{ .Values.ownServices.authorizer.port }}",
+  "AuthorizationInterval": 10000,
+  "ListenPort": {{ .Values.ownServices.receiver.port }},
+  "DataServer": {
+    "NThreads": {{ .Values.ownServices.receiver.dataServer.nThreads }},
+    "ListenPort": {{ .Values.ownServices.receiver.dataServer.port }}
+  },
+  "DataCache": {
+    "Use": {{ .Values.ownServices.receiver.dataCache.enable }},
+    "SizeGB": {{ .Values.ownServices.receiver.dataCache.sizeGb }},
+    "ReservedShare": 10
+  },
+  "Tag": "receiver",
+  "WriteToDisk":true,
+  "ReceiveToDiskThresholdMB": {{ .Values.ownServices.receiver.receiveToDiskThresholdMB }},
+  "WriteToDb":true,
+  "LogLevel": "info"
+}
diff --git a/deploy/asapo_helm_chart/asapo/templates/_service.tpl b/deploy/asapo_helm_chart/asapo/templates/_service.tpl
index c766111db11f013f756763447d141e2db7e2089c..09cb95b02a2512bb0eba574e56509cde5e731baf 100644
--- a/deploy/asapo_helm_chart/asapo/templates/_service.tpl
+++ b/deploy/asapo_helm_chart/asapo/templates/_service.tpl
@@ -10,5 +10,5 @@ spec:
     - protocol: TCP
       port: {{ .service.port }}
   selector:
-    app: {{ .service.serviceName }}
+    app: {{ .service.appName | default .service.serviceName }}
 {{- end }}
diff --git a/deploy/asapo_helm_chart/asapo/templates/authorizer-ingress.yaml b/deploy/asapo_helm_chart/asapo/templates/authorizer-ingress.yaml
deleted file mode 100644
index 08bc7107bc48c9640811a4b6d3e2296f7642f3d8..0000000000000000000000000000000000000000
--- a/deploy/asapo_helm_chart/asapo/templates/authorizer-ingress.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-{{ $data := dict "Release" .Release "Values" .Values "service" .Values.ownServices.authorizer }}
-{{- template "asapo.ingress" $data }}
diff --git a/deploy/asapo_helm_chart/asapo/templates/configs.yaml b/deploy/asapo_helm_chart/asapo/templates/configs.yaml
index 4c6fcd30b19dfb5b2db1af11b7b0cbf6b2007351..6dd1c5c49a7ded9ea4f056c4b06dbd6cab4d8f6b 100644
--- a/deploy/asapo_helm_chart/asapo/templates/configs.yaml
+++ b/deploy/asapo_helm_chart/asapo/templates/configs.yaml
@@ -1,9 +1,5 @@
-{{ $servicesToConfig := list .Values.ownServices.authorizer.serviceName .Values.ownServices.broker.serviceName }}
-
 {{- range .Values.ownServices }}
   {{ $data := dict "Chart" $.Chart "Template" $.Template "Values" $.Values "Files" $.Files "service" . }}
-    {{- if has .serviceName $servicesToConfig }}
     {{- template "asapo.configmap-fromfile" $data }}
 ---
-  {{- end }}
 {{- end }}
diff --git a/deploy/asapo_helm_chart/asapo/templates/discovery-deployment.yaml b/deploy/asapo_helm_chart/asapo/templates/discovery-deployment.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7cee3709df13537c2b8e6c36add89907a68c6c69
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/templates/discovery-deployment.yaml
@@ -0,0 +1,35 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: asapo-discovery
+  labels:
+    app: asapo-discovery
+spec:
+  replicas: {{ .Values.ownServices.discovery.replicaCount }}
+  selector:
+    matchLabels:
+      app: asapo-discovery
+  template:
+    metadata:
+      labels:
+        app: asapo-discovery
+      annotations:
+        checksum/config: {{ .Files.Get "configs/asapo-discovery.json" | sha256sum  }}
+        checksum/fluentd-config: {{ .Files.Get "configs/asapo-fluentd.conf" | sha256sum  }}
+    spec:
+      volumes:
+        - name: asapo-discovery-config
+          configMap:
+            name: asapo-discovery-config
+        {{- include "asapo.fluentd.volumes" .Values.ownServices.discovery | indent 8 }}
+      containers:
+        - name: asapo-discovery
+          image: "yakser/asapo-discovery-dev:{{ .Values.common.asapoVersionTag }}"
+          command: ["/asapo-discovery"]
+          args: ["-config", "/etc/discovery/asapo-discovery.json"]
+          ports:
+            - containerPort: {{ .Values.ownServices.discovery.port }}
+          volumeMounts:
+            - mountPath: "/etc/discovery"
+              name: asapo-discovery-config
+      {{- include "asapo.fluentd.container" . | indent 8 }}
\ No newline at end of file
diff --git a/deploy/asapo_helm_chart/asapo/templates/file-transfer-deployment.yaml b/deploy/asapo_helm_chart/asapo/templates/file-transfer-deployment.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..04e5d502f712e544758fda683a761fa5ff480949
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/templates/file-transfer-deployment.yaml
@@ -0,0 +1,50 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: asapo-file-transfer
+  labels:
+    app: asapo-file-transfer
+spec:
+  replicas: {{ .Values.ownServices.fileTransfer.replicaCount }}
+  selector:
+    matchLabels:
+      app: asapo-file-transfer
+  template:
+    metadata:
+      labels:
+        app: asapo-file-transfer
+      annotations:
+        checksum/config: {{ .Files.Get "configs/asapo-file-transfer.json" | sha256sum  }}
+        checksum/secret: {{ include (print $.Template.BasePath "/auth-secret.yaml") . | sha256sum }}
+        checksum/fluentd-config: {{ .Files.Get "configs/asapo-fluentd.conf" | sha256sum  }}
+    spec:
+      volumes:
+        - name: all-in-one
+          projected:
+            sources:
+              - configMap:
+                  name: asapo-file-transfer-config
+              - secret:
+                  name: auth-secret
+        - name: shared-volume-offline
+          persistentVolumeClaim:
+            claimName: asapo-offline-pv
+        - name: shared-volume-online
+          persistentVolumeClaim:
+            claimName: asapo-online-pv
+        {{- include "asapo.fluentd.volumes" .Values.ownServices.fileTransfer | indent 8 }}
+      containers:
+        - name: asapo-file-transfer
+          image: "yakser/asapo-file-transfer-dev:{{ .Values.common.asapoVersionTag }}"
+          command: ["/asapo-file-transfer"]
+          args: ["-config", "/etc/file-transfer/asapo-file-transfer.json"]
+          ports:
+            - containerPort: {{ .Values.ownServices.fileTransfer.port }}
+          volumeMounts:
+            - mountPath: "/etc/file-transfer"
+              name: all-in-one
+            - mountPath: {{ .Values.common.offlineDir }}
+              name: shared-volume-offline
+            - mountPath: {{ .Values.common.onlineDir }}
+              name: shared-volume-online
+      {{- include "asapo.fluentd.container" . | indent 8 }}
\ No newline at end of file
diff --git a/deploy/asapo_helm_chart/asapo/templates/ingress.yaml b/deploy/asapo_helm_chart/asapo/templates/ingress.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9efb8c0ac77cd634288b7b54ab1648cc7829bfd0
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/templates/ingress.yaml
@@ -0,0 +1,7 @@
+{{- range .Values.ownServices }}
+  {{- if not ._exposeServiceExtrernally }}
+  {{- $data := dict  "Release" $.Release "Values" $.Values "service" . }}
+  {{- template "asapo.ingress" $data }}
+  {{- end }}
+---
+{{- end }}
diff --git a/deploy/asapo_helm_chart/asapo/templates/receiver-deployment.yaml b/deploy/asapo_helm_chart/asapo/templates/receiver-deployment.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..bcf8c2e10b4d3b619576a8d3057c6879e84c21b3
--- /dev/null
+++ b/deploy/asapo_helm_chart/asapo/templates/receiver-deployment.yaml
@@ -0,0 +1,48 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: asapo-receiver
+  labels:
+    app: asapo-receiver
+spec:
+  replicas: {{ .Values.ownServices.receiver.replicaCount }}
+  selector:
+    matchLabels:
+      app: asapo-receiver
+  template:
+    metadata:
+      labels:
+        app: asapo-receiver
+      annotations:
+        checksum/config: {{ .Files.Get "configs/asapo-receiver.json" | sha256sum  }}
+        checksum/fluentd-config: {{ .Files.Get "configs/asapo-fluentd.conf" | sha256sum  }}
+    spec:
+      volumes:
+        - name: asapo-receiver-config
+          configMap:
+            name: asapo-receiver-config
+        - name: shared-volume-offline
+          persistentVolumeClaim:
+            claimName: asapo-offline-pv
+        - name: shared-volume-online
+          persistentVolumeClaim:
+            claimName: asapo-online-pv
+        {{- include "asapo.fluentd.volumes" .Values.ownServices.receiver | indent 8 }}
+      containers:
+        - name: asapo-receiver
+          image: "yakser/asapo-receiver-dev:{{ .Values.common.asapoVersionTag }}"
+          command: ["/receiver"]
+          args: ["/etc/receiver/asapo-receiver.json"]
+          ports:
+            - containerPort: {{ .Values.ownServices.receiver.port }}
+              name: http
+            - containerPort: {{ .Values.ownServices.receiver.dataServer.port }}
+              name: http-ds
+          volumeMounts:
+            - mountPath: "/etc/receiver"
+              name: asapo-receiver-config
+            - mountPath: {{ .Values.common.offlineDir }}
+              name: shared-volume-offline
+            - mountPath: {{ .Values.common.onlineDir }}
+              name: shared-volume-online
+      {{- include "asapo.fluentd.container" . | indent 8 }}
\ No newline at end of file
diff --git a/deploy/asapo_helm_chart/asapo/templates/services.yaml b/deploy/asapo_helm_chart/asapo/templates/services.yaml
index c40f4a5308dee0d1d987310d2b528fc092f2122e..fb7f806615faffb6ad9d3120dc13f88bfd4be47c 100644
--- a/deploy/asapo_helm_chart/asapo/templates/services.yaml
+++ b/deploy/asapo_helm_chart/asapo/templates/services.yaml
@@ -1,9 +1,7 @@
-{{ $servicesToConfig := list .Values.ownServices.authorizer.serviceName .Values.ownServices.broker.serviceName }}
-
 {{- range .Values.ownServices }}
   {{ $data := dict "Values" $.Values "service" . }}
-  {{- if has .serviceName $servicesToConfig }}
     {{- template "asapo.service" $data }}
 ---
-  {{- end }}
 {{- end }}
+{{ $data := dict "Values" $.Values "service" .Values.ownServices.receiver.dataServer }}
+{{- template "asapo.service" $data }}
diff --git a/deploy/asapo_helm_chart/asapo/values.yaml b/deploy/asapo_helm_chart/asapo/values.yaml
index d65c1ee1d3a121752a133d06ec43db530a1da5f4..890ecf098d015e1b82a86cf245ccf2a86850e463 100644
--- a/deploy/asapo_helm_chart/asapo/values.yaml
+++ b/deploy/asapo_helm_chart/asapo/values.yaml
@@ -16,6 +16,29 @@ ownServices:
     replicaCount: 1
     port: 5008
     _exposeServiceExtrernally: false
+  receiver:
+    serviceName: asapo-receiver
+    replicaCount: 1
+    port: 5009
+    sidecarLogs: true
+    _exposeServiceExtrernally: true
+    dataServer:
+      appName: asapo-receiver
+      serviceName: asapo-receiver-dataserver
+      port: 5010
+      nThreads: 1
+      _exposeServiceExtrernally: true
+    dataCache:
+      enable: false
+      sizeGb: 1
+    receiveToDiskThresholdMB: 200
+  fileTransfer:
+    serviceName: asapo-file-transfer
+    replicaCount: 1
+    port: 5011
+    sidecarLogs: true
+    _exposeServiceExtrernally: true
+
 
 common:
   authSecret: "12ljzgneasfd"