Add stndDefined domain to HV-VES
[dcaegen2/collectors/hv-ves.git] / tools / development / docker-compose.yml
1 version: "3.5"
2 services:
3
4   #
5   # DMaaP Message Router
6   #
7
8   message-router-zookeeper:
9     image: nexus3.onap.org:10001/onap/dmaap/zookeeper:4.0.0
10     ports:
11       - "2181:2181"
12
13   message-router-kafka-0:
14     image: nexus3.onap.org:10001/onap/dmaap/kafka111:0.0.6
15     ports:
16       - "9092:9092"
17       - "9093:9093"
18 #    command: "start-kafka.sh"
19     environment:
20       HOST_IP:                                     127.0.0.1
21       KAFKA_BROKER_ID:                             0
22       ENDPOINT_PORT:                               30490
23       KAFKA_ZOOKEEPER_CONNECT:                     "message-router-zookeeper:2181"
24       KAFKA_AUTO_CREATE_TOPICS_ENABLE:             "true"
25       KAFKA_DELETE_TOPIC_ENABLE:                   "true"
26
27       KAFKA_LISTENERS:                             "INTERNAL_SASL_PLAINTEXT://0.0.0.0:9092,EXTERNAL_SASL_PLAINTEXT://0.0.0.0:9093"
28       KAFKA_ADVERTISED_LISTENERS:                  "INTERNAL_SASL_PLAINTEXT://message-router-kafka-0:9092,EXTERNAL_SASL_PLAINTEXT://message-router-kafka-0:9093"
29       KAFKA_LISTENER_SECURITY_PROTOCOL_MAP:        "INTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT,EXTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT"
30       KAFKA_INTER_BROKER_LISTENER_NAME:            "INTERNAL_SASL_PLAINTEXT"
31       KAFKA_SASL_ENABLED_MECHANISMS:               "PLAIN"
32       KAFKA_SASL_MECHANISM_INTER_BROKER_PROTOCOL:  "PLAIN"
33       KAFKA_AUTHORIZER_CLASS_NAME:                 "org.onap.dmaap.kafkaAuthorize.KafkaCustomAuthorizer"
34
35       aaf_locate_url:                              https://aaf-locate:8095
36       KAFKA_LOG_DIRS:                              /opt/kafka/data
37       KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR:      1
38       KAFKA_DEFAULT_REPLICATION_FACTOR:            1
39       KAFKA_NUM_PARTITIONS:                        1
40     volumes:
41       - /var/run/docker.sock:/var/run/docker.sock
42     depends_on:
43       - message-router-zookeeper
44
45   #
46   # Consul / CBS
47   #
48
49   consul-server:
50     image: docker.io/consul:1.0.6
51     ports:
52       - "8500:8500"
53     volumes:
54       - ./consul/:/consul/config
55
56   consul-config:
57     image: docker.io/consul:1.0.6
58     restart: on-failure
59     command: "kv put -http-addr=http://consul-server:8500 dcae-hv-ves-collector '@/home/consul/routing.json'"
60     volumes:
61       - type: bind
62         source: ./routing.json
63         target: /home/consul/routing.json
64         read_only: true
65     depends_on:
66       - consul-server
67
68   config-binding-service:
69     image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.platform.configbinding.app-app:2.2.4
70     ports:
71       - "10000:10000"
72     environment:
73       CONSUL_HOST: "consul-server"
74     depends_on:
75       - consul-config
76
77   #
78   # DCAE HV VES Collector
79   #
80
81   ves-hv-collector:
82     image: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-main:1.8.0-SNAPSHOT
83     ports:
84       - "6060:6060"
85       - "6061:6061/tcp"
86     environment:
87       JAVA_OPTS: "-Dio.netty.leakDetection.level=paranoid -Dlogback.configurationFile=/etc/ONAP/dcae-hv-ves-collector/logback.xml"
88       VESHV_CONFIGURATION_FILE: "/etc/ves-hv/configuration/base.json"
89       CONSUL_HOST: "consul-server"
90       CONFIG_BINDING_SERVICE: "config-binding-service"
91       HOSTNAME: "dcae-hv-ves-collector"
92       CONFIG_BINDING_SERVICE_SERVICE_PORT: "10000"
93     healthcheck:
94       test: ./healthcheck.sh || exit 1
95       interval: 10s
96       timeout: 3s
97       retries: 3
98       start_period: 15s
99     depends_on:
100       - message-router-kafka-0
101       - config-binding-service
102     volumes:
103       - ./configuration/:/etc/ves-hv/configuration/
104       - ../ssl/:/etc/ves-hv/ssl/
105       - ./logs:/var/log/ONAP/dcae-hv-ves-collector/
106
107
108   #
109   # Simulators
110   #
111
112   xnf-simulator:
113     image: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-xnf-simulator:1.8.0-SNAPSHOT
114     ports:
115       - "6062:6062/tcp"
116       - "6063:6063"
117     command: ["--listen-port", "6062",
118               "--health-check-api-port", "6063",
119               "--ves-host", "ves-hv-collector",
120               "--ves-port", "6061",
121               "--key-store", "/etc/ves-hv/client.p12",
122               "--key-store-password-file", "/etc/ves-hv/client.pass",
123               "--trust-store", "/etc/ves-hv/trust.p12",
124               "--trust-store-password-file", "/etc/ves-hv/trust.pass"]
125     healthcheck:
126       test: curl -f http://localhost:6063/health/ready || exit 1
127       interval: 10s
128       timeout: 3s
129       retries: 3
130       start_period: 10s
131     depends_on:
132       - ves-hv-collector
133     volumes:
134       - ../ssl/:/etc/ves-hv/
135
136   dcae-app-simulator:
137     image: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-dcae-app-simulator:1.8.0-SNAPSHOT
138     ports:
139       - "6064:6064/tcp"
140     command: ["--listen-port", "6064",
141               "--kafka-bootstrap-servers", "message-router-kafka-0:9092",
142               "--kafka-topics", "HV_VES_PERF3GPP,SEC_3GPP_FAULTSUPERVISION_OUTPUT,SEC_3GPP_PROVISIONING_OUTPUT,SEC_3GPP_HEARTBEAT_OUTPUT,SEC_3GPP_PERFORMANCEASSURANCE_OUTPUT"]
143     depends_on:
144       - message-router-kafka-0
145
146   #
147   # Monitoring
148   #
149
150   prometheus:
151     image: prom/prometheus
152     ports:
153       - "9090:9090"
154     volumes:
155       - ./prometheus.yml:/etc/prometheus/prometheus.yml
156
157   grafana:
158     image: grafana/grafana
159     ports:
160       - "3000:3000"
161     environment:
162       GF_AUTH_DISABLE_LOGIN_FORM: "true"
163       GF_AUTH_DISABLE_SIGNOUT_MENU: "true"
164       GF_AUTH_ANONYMOUS_ENABLED: "true"
165       GF_AUTH_ANONYMOUS_ORG_ROLE: "Admin"
166     volumes:
167       - ./grafana/datasources:/etc/grafana/provisioning/datasources
168       - ./grafana/dashboards-providers:/etc/grafana/provisioning/dashboards
169       # defined in ./grafana/dashboards-providers/dasboard-providers.yaml
170       - ./grafana/dashboards:/var/lib/grafana/dashboards/hv-ves
171
172