eea0d3b67832758a4a1fbd7de72b7999f4560545
[dcaegen2.git] / docs / sections / services / prh / installation.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. _prh-installation:
4
5
6 Docker Installation
7 ===================
8
9 The following docker-compose-yaml file shows a default configuration. The file can be run using `docker compose up` command:
10
11 .. code-block:: yaml
12
13   version: '3'
14   services:
15     prh:
16       image: nexus3.onap.org:10003/onap/org.onap.dcaegen2.services.prh.prh-app-server
17       command: >
18         --dmaap.dmaapConsumerConfiguration.dmaapHostName=10.42.111.36
19         --dmaap.dmaapConsumerConfiguration.dmaapPortNumber=8904
20         --dmaap.dmaapConsumerConfiguration.dmaapTopicName=/events/unauthenticated.SEC_OTHER_OUTPUT
21         --dmaap.dmaapConsumerConfiguration.dmaapProtocol=http
22         --dmaap.dmaapConsumerConfiguration.dmaapUserName=admin
23         --dmaap.dmaapConsumerConfiguration.dmaapUserPassword=admin
24         --dmaap.dmaapConsumerConfiguration.dmaapContentType=application/json
25         --dmaap.dmaapConsumerConfiguration.consumerId=c12
26         --dmaap.dmaapConsumerConfiguration.consumerGroup=OpenDCAE-c12
27         --dmaap.dmaapConsumerConfiguration.timeoutMS=-1
28         --dmaap.dmaapConsumerConfiguration.message-limit=-1
29         --dmaap.dmaapProducerConfiguration.dmaapHostName=10.42.111.36
30         --dmaap.dmaapProducerConfiguration.dmaapPortNumber=8904
31         --dmaap.dmaapProducerConfiguration.dmaapTopicName=/events/unauthenticated.PNF_READY
32         --dmaap.dmaapProducerConfiguration.dmaapProtocol=http
33         --dmaap.dmaapProducerConfiguration.dmaapUserName=admin
34         --dmaap.dmaapProducerConfiguration.dmaapUserPassword=admin
35         --dmaap.dmaapProducerConfiguration.dmaapContentType=application/json
36         --aai.aaiClientConfiguration.aaiHostPortNumber=30233
37         --aai.aaiClientConfiguration.aaiHost=10.42.111.45
38         --aai.aaiClientConfiguration.aaiProtocol=https
39         --aai.aaiClientConfiguration.aaiUserName=admin
40         --aai.aaiClientConfiguration.aaiUserPassword=admin
41         --aai.aaiClientConfiguration.aaiIgnoreSSLCertificateErrors=true
42         --aai.aaiClientConfiguration.aaiBasePath=/aai/v11
43         --aai.aaiClientConfiguration.aaiPnfPath=/network/pnfs/pnf
44         --security.enableAaiCertAuth=false
45         --security.enableDmaapCertAuth=false
46         --security.keyStorePath=/opt/app/prh/etc/cert/cert.jks
47         --security.keyStorePasswordPath=/opt/app/prh/etc/cert/jks.pass
48         --security.trustStorePath=/opt/app/prh/etc/cert/trust.jks
49         --security.trustStorePasswordPath=/opt/app/prh/etc/cert/trust.pass
50       entrypoint:
51         - java
52         - -Dspring.profiles.active=dev
53         - -jar
54         - /opt/prh-app-server.jar
55       ports:
56         - "8100:8100"
57         - "8433:8433"
58       restart: always
59
60
61 Running with dev-mode of PRH
62 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
63
64 Heartbeat: http://<container_address>:8100/heartbeat or https://<container_address>:8443/heartbeat
65
66 Start prh: http://<container_address>:8100/start or https://<container_address>:8433/start
67
68 Stop prh: http://<container_address>:8100/stopPrh or https://<container_address>:8433/stopPrh
69
70
71
72 Helm Installation
73 =================
74
75 The PRH microservice can be deployed using helm charts in the oom repository.
76
77
78 Deployment steps
79 ~~~~~~~~~~~~~~~~
80
81 - Default app config values can be updated in oom/kubernetes/dcaegen2-services/components/dcae-prh/values.yaml.
82
83 - Make the chart and deploy using the following command:
84
85   .. code-block:: bash
86
87     cd oom/kubernetes/
88     make dcaegen2-services
89     helm install dev-dcaegen2-services dcaegen2-services --namespace <namespace> --set global.masterPassword=<password>
90
91 - To deploy only PRH:
92
93   .. code-block:: bash
94
95     helm install dev-dcae-prh dcaegen2-services/components/dcae-prh --namespace <namespace> --set global.masterPassword=<password>
96
97 - To Uninstall
98
99   .. code-block:: bash
100
101     helm uninstall dev-dcae-prh
102
103 Application Configurations
104 --------------------------
105
106 Supported configuration modifiable in HELM charts under **applicationConfig** section.
107
108 .. code-block:: yaml
109
110         applicationConfig:
111           dmaap.dmaapConsumerConfiguration.dmaapContentType: "application/json"
112           dmaap.dmaapConsumerConfiguration.consumerId: "c12"
113           dmaap.dmaapConsumerConfiguration.consumerGroup: "OpenDCAE-c12"
114           dmaap.dmaapConsumerConfiguration.timeoutMs: -1
115           dmaap.dmaapProducerConfiguration.dmaapContentType: "application/json"
116           dmaap.dmaapUpdateProducerConfiguration.dmaapContentType: "application/json"
117           aai.aaiClientConfiguration.pnfUrl: http://aai-internal.onap.svc.cluster.local:80/aai/v23/network/pnfs/pnf
118           aai.aaiClientConfiguration.baseUrl: http://aai-internal.onap.svc.cluster.local:80/aai/v23
119           aai.aaiClientConfiguration.aaiHost: aai-internal.onap.svc.cluster.local
120           aai.aaiClientConfiguration.aaiHostPortNumber: 80
121           aai.aaiClientConfiguration.aaiProtocol: "http"
122           aai.aaiClientConfiguration.aaiUserName: ${AAI_USER}
123           aai.aaiClientConfiguration.aaiUserPassword: ${AAI_PASSWORD}
124           aai.aaiClientConfiguration.aaiIgnoreSslCertificateErrors: true
125           aai.aaiClientConfiguration.aaiBasePath: "/aai/v23"
126           aai.aaiClientConfiguration.aaiPnfPath: "/network/pnfs/pnf"
127           aai.aaiClientConfiguration.aaiServiceInstancePath: "/business/customers/customer/{{customer}}/service-subscriptions/service-subscription/{{serviceType}}/service-instances/service-instance/{{serviceInstanceId}}"
128           aai.aaiClientConfiguration.aaiHeaders:
129               X-FromAppId: "prh"
130               X-TransactionId: "9999"
131               Accept: "application/json"
132               Real-Time: "true"
133               Authorization: ${AUTH_HDR}
134           security.trustStorePath: "/opt/app/prh/etc/cert/trust.jks"
135           security.trustStorePasswordPath: "/opt/app/prh/etc/cert/trust.pass"
136           security.keyStorePath: "/opt/app/prh/etc/cert/cert.jks"
137           security.keyStorePasswordPath: "/opt/app/prh/etc/cert/jks.pass"
138           security.enableAaiCertAuth: false
139           security.enableDmaapCertAuth: false
140           streams_publishes:
141               pnf-update:
142                 type: "message_router"
143                 dmaap_info:
144                   topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.PNF_UPDATE
145               pnf-ready:
146                 type: "message_router"
147                 dmaap_info:
148                   topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.PNF_READY
149           streams_subscribes:
150               ves-reg-output:
151                 type: "message_router"
152                 dmaap_info:
153                   topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_PNFREG_OUTPUT
154
155 The location of the configuration file should be set in ``CBS_CLIENT_CONFIG_PATH`` env, for example:
156
157     ``CBS_CLIENT_CONFIG_PATH: /app-config-input/application_config.yaml``