dcae r4 doc updates
[dcaegen2.git] / docs / sections / installation_test.rst
1 DCAE Deployment Validation
2 ==========================
3
4
5 Check Deployment Status
6 -----------------------
7
8 The healthcheck service is exposed as a Kubernetes ClusterIP Service named
9 `dcae-healthcheck`.   The service can be queried for status as shown below.
10
11 .. code-block:: json
12
13    $ curl dcae-healthcheck
14    {
15      "type": "summary",
16      "count": 14,
17      "ready": 14,
18      "items": [
19         {
20           "name": "dev-dcaegen2-dcae-cloudify-manager",
21           "ready": 1,
22           "unavailable": 0
23         },
24         {
25           "name": "dev-dcaegen2-dcae-config-binding-service",
26           "ready": 1,
27           "unavailable": 0
28         },
29         {
30           "name": "dev-dcaegen2-dcae-inventory-api",
31           "ready": 1,
32           "unavailable": 0
33         },
34         {
35           "name": "dev-dcaegen2-dcae-servicechange-handler",
36           "ready": 1,
37           "unavailable": 0
38         },
39         {
40           "name": "dev-dcaegen2-dcae-deployment-handler",
41           "ready": 1,
42           "unavailable": 0
43         },
44         {
45           "name": "dev-dcaegen2-dcae-policy-handler",
46           "ready": 1,
47           "unavailable": 0
48         },
49         {
50           "name": "dep-dcae-ves-collector",
51           "ready": 1,
52           "unavailable": 0
53         },
54         {
55           "name": "dep-dcae-tca-analytics",
56           "ready": 1,
57           "unavailable": 0
58         },
59         {
60           "name": "dep-dcae-prh",
61           "ready": 1,
62           "unavailable": 0
63         },
64         {
65           "name": "dep-dcae-hv-ves-collector",
66           "ready": 1,
67           "unavailable": 0
68         },
69         {
70           "name": "dep-dcae-dashboard",
71           "ready": 1,
72           "unavailable": 0
73         },
74         {
75           "name": "dep-dcae-snmptrap-collector",
76           "ready": 1,
77           "unavailable": 0
78         },
79         {
80           "name": "dep-holmes-engine-mgmt",
81           "ready": 1,
82           "unavailable": 0
83         },
84         {
85           "name": "dep-holmes-rule-mgmt",
86           "ready": 1,
87           "unavailable": 0
88         }
89       ]
90     }
91
92
93 Data Flow Verification
94 ----------------------
95
96 After the platform is assessed as healthy, the next step is to check the functionality of the system.  This can be monitored at a number of "observation" points.
97
98 1. Incoming VNF Data into VES Collector can be verified through logs using kubectl 
99   
100     kubectl logs -f -n onap <vescollectorpod> dcae-ves-collector
101
102 2. Check VES Output
103
104     VES publishes received VNF data, after authentication and syntax check, onto DMaaP Message Router.  To check this is happening we can subscribe to the publishing topic.
105
106     1. Run the subscription command to subscribe to the topic: **curl  -H "Content-Type:text/plain" -X GET http://{{K8S_NODEIP}}:30227/events/unauthenticated.VES_MEASUREMENT_OUTPUT/group1/C1?timeout=50000**.  The actual format and use of Message Router API can be found in DMaaP project documentation.
107         * When there are messages being published, this command returns with the JSON array of messages;
108         * If no message being published, up to the timeout value (i.e. 50000 seconds as in the example above), the call is returned with empty JAON array;
109         * It may be useful to run this command in a loop:  **while :; do curl  -H "Content-Type:text/plain" -X GET http://{{K8S_NODEIP}}:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT/group1/C1?timeout=50000; echo; done**;
110
111 3. Check TCA Output
112     TCA also publishes its events to Message Router under the topic of "unauthenticated.DCAE_CL_OUTPUT".  The same Message Router subscription command can be used for checking the messages being published by TCA;
113     * Run the subscription command to subscribe to the topic: **curl  -H "Content-Type:text/plain" -X GET http://{{K8S_NODEIP}}:3904/events/unauthenticated.DCAE_CL_OUTPUT/group1/C1?timeout=50000**.
114     * Or run the command in a loop:  **while :; do curl  -H "Content-Type:text/plain" -X GET http://{{K8S_NODEIP}}:3904/events/unauthenticated.DCAE_CL_OUTPUT/group1/C1?timeout=50000; echo; done**;
115