blob: fa017f006af269058c3d23be4430b38842760964 [file] [log] [blame]
Vijay VK2648c6d2018-09-19 04:30:37 +01001.. This work is licensed under a Creative Commons Attribution 4.0 International License.
2.. http://creativecommons.org/licenses/by/4.0
3
Jack Lucas4a72cd92019-05-15 18:07:14 -04004DCAE Health Check
5=================
Vijay VK2648c6d2018-09-19 04:30:37 +01006
7OOM Deployment
8--------------
Jack Lucas4a72cd92019-05-15 18:07:14 -04009In OOM deployments, DCAE healthchecks are performed by a separate service--dcae-healthcheck.
10This service is packaged into a Docker image (``onap/org.onap.dcaegen2.deployments.healthcheck-container``),
11which is built in the ``healthcheck-container`` module in the ``dcaegen2/deployments`` repository.
Vijay VK2648c6d2018-09-19 04:30:37 +010012
Jack Lucas4a72cd92019-05-15 18:07:14 -040013The service is deployed with a Helm chart (``oom/kubernetes/dcaegen2/charts/dcae-healthcheck``)
14when DCAE is deployed using OOM.
Vijay VK86cd8932018-10-23 16:35:29 +010015
Jack Lucas4a72cd92019-05-15 18:07:14 -040016The dcae-healthcheck container runs a service that exposes a simple Web API. In response to
17request, the service checks Kubernetes to verify that all of the expected
18DCAE platform and service components are in a ready state. The service
19has a fixed list of platform and service components that are normally deployed when DCAE is
20first installed, including components deployed with Helm charts and
VENKATESH KUMAR7cfaea22020-04-22 17:31:32 -040021components deployed using Cloudify blueprints. In addition, the healthcheck
Jack Lucas4a72cd92019-05-15 18:07:14 -040022service tracks and checks components that are deployed dynamically using Cloudify
23blueprints after the initial DCAE installation.
24
25The healthcheck service is exposed as a Kubernetes ClusterIP Service named
26`dcae-healthcheck`. The service can be queried for status as shown below.
27
Vijay VKedaf8b12019-05-23 22:02:50 +010028.. code-block:: json
Jack Lucas4a72cd92019-05-15 18:07:14 -040029
30 $ curl dcae-healthcheck
31 {
32 "type": "summary",
33 "count": 14,
34 "ready": 14,
35 "items": [
36 {
37 "name": "dev-dcaegen2-dcae-cloudify-manager",
38 "ready": 1,
39 "unavailable": 0
40 },
41 {
42 "name": "dev-dcaegen2-dcae-config-binding-service",
43 "ready": 1,
44 "unavailable": 0
45 },
46 {
47 "name": "dev-dcaegen2-dcae-inventory-api",
48 "ready": 1,
49 "unavailable": 0
50 },
51 {
52 "name": "dev-dcaegen2-dcae-servicechange-handler",
53 "ready": 1,
54 "unavailable": 0
55 },
56 {
57 "name": "dev-dcaegen2-dcae-deployment-handler",
58 "ready": 1,
59 "unavailable": 0
60 },
61 {
62 "name": "dev-dcaegen2-dcae-policy-handler",
63 "ready": 1,
64 "unavailable": 0
65 },
66 {
67 "name": "dep-dcae-ves-collector",
68 "ready": 1,
69 "unavailable": 0
70 },
71 {
72 "name": "dep-dcae-tca-analytics",
73 "ready": 1,
74 "unavailable": 0
75 },
76 {
77 "name": "dep-dcae-prh",
78 "ready": 1,
79 "unavailable": 0
80 },
81 {
82 "name": "dep-dcae-hv-ves-collector",
83 "ready": 1,
84 "unavailable": 0
85 },
86 {
87 "name": "dep-dcae-dashboard",
88 "ready": 1,
89 "unavailable": 0
90 },
91 {
92 "name": "dep-dcae-snmptrap-collector",
93 "ready": 1,
94 "unavailable": 0
95 },
96 {
97 "name": "dep-holmes-engine-mgmt",
98 "ready": 1,
99 "unavailable": 0
100 },
101 {
102 "name": "dep-holmes-rule-mgmt",
103 "ready": 1,
104 "unavailable": 0
Vijay VK86cd8932018-10-23 16:35:29 +0100105 }
Jack Lucas4a72cd92019-05-15 18:07:14 -0400106 ]
107 }