summaryrefslogtreecommitdiffstats
path: root/docs/sections/apis/ves-hv/index.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/sections/apis/ves-hv/index.rst')
-rw-r--r--docs/sections/apis/ves-hv/index.rst59
1 files changed, 59 insertions, 0 deletions
diff --git a/docs/sections/apis/ves-hv/index.rst b/docs/sections/apis/ves-hv/index.rst
new file mode 100644
index 00000000..799f92d4
--- /dev/null
+++ b/docs/sections/apis/ves-hv/index.rst
@@ -0,0 +1,59 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+========================
+HV-VES (High Volume VES)
+========================
+
+:Date: 2018-10-05
+
+.. contents::
+ :depth: 3
+..
+
+Overview
+========
+
+Component description can be found under `HV-VES Collector`_.
+
+.. _HV-VES Collector: ../../services/ves-hv/index.html
+
+
+TCP Endpoint
+============
+
+HV-VES is exposed as NodePort service on Kubernetes cluster on port 30222/tcp.
+It uses plain TCP connections tunneled in SSL/TLS or can be run in insecure manner without data encryption on the socket.
+Without TLS client authentication/authorization is not possible.
+Connections are stream-based (as opposed to request-based) and long running.
+
+Communication is wrapped with thin Wire Transfer Protocol, which mainly provides delimitation.
+
+.. literalinclude:: WTP.asn
+ :language: asn
+
+Payload is binary-encoded, currently using Google Protocol Buffers representation of the VES Common Header.
+
+.. literalinclude:: VesEvent.proto
+ :language: protobuf
+
+The PROTO file, which contains the VES CommonHeader, comes with a binary-type Payload parameter, where domain-specific
+data shall be placed. Domain-specific data are encoded as well with GPB, and they do require a domain-specific
+PROTO file to decode the data.
+
+HV-VES makes routing decisions based mostly on the content of the **Domain** parameter in VES Common Header.
+
+
+Healthcheck
+===========
+
+Inside HV-VES docker container runs small http service for healthcheck - exact port for this service can be configured
+at deployment using `--health-check-api-port` command line option.
+
+This service exposes single endpoint **GET /health/ready** which returns **HTTP 200 OK** in case HV-VES is healthy
+and ready for connections. Otherwise it returns **HTTP 503 Service Unavailable** with short reason of unhealthiness.
+
+
+
+
+