HV-VES simulator
Precondition
Server flavor : 8 vCPU / 30GB RAM / 100GB HDD
Server OS : Ubuntu 16.04
Planned
Heat template Done
Heat template commit to gerrit repo DONE
HV-VES XNF simulator integration to ONAP procedure DONE
HV-VES simulator standalone mode installation
Deploy HV-VES simulator in standalone mode using Heat template : https://gerrit.onap.org/r/gitweb?p=integration.git;a=blob_plain;f=test/mocks/hvvessimulator/hvves_sim.yaml;hb=HEAD
Login to the deployed server using root/onap credentials
Verify that all docker containers are up :
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a4c5011bfeb nexus3.onap.org:10003/onap/ves-hv-collector-xnf-simulator "./run-java.sh run..." 27 seconds ago Up 27 seconds 0.0.0.0:6062->6062/tcp hv-ves_sim_xnf-simulator_1
ad910797eb72 nexus3.onap.org:10003/onap/ves-hv-collector:latest "./run-java.sh run..." 28 seconds ago Up 27 seconds (healthy) 0.0.0.0:6060-6061->6060-6061/tcp hv-ves_sim_ves-hv-collector_1
db196f77fd8e wurstmeister/kafka "start-kafka.sh" 28 seconds ago Up 28 seconds 0.0.0.0:9092->9092/tcp hv-ves_sim_kafka_1
e8713cceb027 progrium/consul "/bin/start -serve..." 30 seconds ago Up 28 seconds 53/tcp, 53/udp, 8300-8302/tcp, 8400/tcp, 8301-8302/udp, 0.0.0.0:8500->8500/tcp hv-ves_sim_consul_1
5440e045d0a3 wurstmeister/zookeeper "/bin/sh -c '/usr/..." 30 seconds ago Up 30 seconds 22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp hv-ves_sim_zookeeper_1
Verify HV-VES configuration from HV-VES docker container :
docker exec -ti ad910797eb72 bash
root@ad910797eb72:/opt/ves-hv-collector# curl http://consul:8500/v1/kv/veshv-config
[{"CreateIndex":5,"ModifyIndex":5,"LockIndex":0,"Key":"veshv-config","Flags":0,"Value":"eyJrYWZrYUJvb3RzdHJhcFNlcnZlcnMiOiAia2Fma2E6OTA5MiIsInJvdXRpbmciOlt7ImZyb21Eb21haW4iOjExLCJ0b1RvcGljIjoidmVzX2h2UmFuTWVhcyJ9XX0="}]
HV-VES simulator standalone mode usage
Start HV-VES container log :
docker logs --tail 0 -f ad910797eb7
Start Kafka consumer log :
Send message using simulator.sh script :
Check HV-VES log :
Check Kafka consumer log :
HV-VES xNF simulator integration to ONAP
Deploy HV-VES simulator in onap mode using Heat template : https://gerrit.onap.org/r/gitweb?p=integration.git;a=blob_plain;f=test/mocks/hvvessimulator/hvves_sim.yaml;hb=HEAD
Check if HV-VES pod is running :
Check if xNF simulator is up :
Forward Kafka pod port to node one :
Forward HV-VES simulator 9092 port to the node from previous step :
Send event from xNF simulator :
Check HV-VES log :
Check Kafka topic content :
Casablanca
Dublin onward
Decode message from Kafka topic :
Casablanca
Dublin onward
HV-VES xNF message simulation from shell
Prepare HV-VES VesEvent message in hex dump format :
Put the above VesEvent message into Wire Frame Protocol structure documented in KotlinDoc https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/hv-ves.git;a=blob_plain;f=sources/hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/wire_frame.kt;hb=refs/heads/master :
Send WFP message to HV-VES :
Decode the message from Kafka topic :
Casablanca
Dublin onward
HV-VES with SSL enabled
Casablanca
Generate testing PKCS #12 files using https://gerrit.onap.org/r/gitweb?p=dcaegen2/collectors/hv-ves.git;a=blob_plain;f=tools/ssl/gen-certs.sh;hb=refs/heads/master and store in k8s nfs dir /dockerdata-nfs/ssl
Edit HV-VES deployment (kubectl -n onap edit deployment/dep-dcae-hv-ves-collector) by removing VESHV_SSL_DISABLE flag and adding VESHV_TRUST_STORE, VESHV_KEY_STORE, VESHV_TRUST_STORE_PASSWORD, VESHV_KEY_STORE_PASSWORD ones.
Add entry to mount node:/dockerdata-nfs/ssl to containter:/etc/ves-hv :
Deploy HV-VES simulator in onapmode with tls enabled using Heat template : https://gerrit.onap.org/r/gitweb?p=integration.git;a=blob_plain;f=test/mocks/hvvessimulator/hvves_sim.yaml;hb=HEAD
Dublin onward
Prepare CA, Server and Client Private Keys and CSR.
Sign Server and Client certificates by the CA.
Create passwordless p12 CA and Server certificate files.
Enable SSL feature in HV-VES collector via Consul UI :
http://<node_ip>:30270/ui/#/dc1/kv/dcae-hv-ves-collector/edit
Combine Client Private Key and Public Certificate into PEM file.
Send message to HV-VES collector using openssl command.