blob: f7fcba150d7b02adfa87b90a3d1011f21caf454e [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
VENKATESH KUMAR55bf15a2020-11-18 16:30:36 -05003.. _healthcheck:
Vijay VK2648c6d2018-09-19 04:30:37 +01004
Jack Lucas4a72cd92019-05-15 18:07:14 -04005DCAE Health Check
6=================
Vijay VK2648c6d2018-09-19 04:30:37 +01007
8OOM Deployment
9--------------
Jack Lucas4a72cd92019-05-15 18:07:14 -040010In OOM deployments, DCAE healthchecks are performed by a separate service--dcae-healthcheck.
11This service is packaged into a Docker image (``onap/org.onap.dcaegen2.deployments.healthcheck-container``),
12which is built in the ``healthcheck-container`` module in the ``dcaegen2/deployments`` repository.
Vijay VK2648c6d2018-09-19 04:30:37 +010013
Jack Lucas4a72cd92019-05-15 18:07:14 -040014The service is deployed with a Helm chart (``oom/kubernetes/dcaegen2/charts/dcae-healthcheck``)
15when DCAE is deployed using OOM.
Vijay VK86cd8932018-10-23 16:35:29 +010016
Jack Lucas4a72cd92019-05-15 18:07:14 -040017The dcae-healthcheck container runs a service that exposes a simple Web API. In response to
18request, the service checks Kubernetes to verify that all of the expected
19DCAE platform and service components are in a ready state. The service
20has a fixed list of platform and service components that are normally deployed when DCAE is
21first installed, including components deployed with Helm charts and
VENKATESH KUMAR7cfaea22020-04-22 17:31:32 -040022components deployed using Cloudify blueprints. In addition, the healthcheck
Jack Lucas4a72cd92019-05-15 18:07:14 -040023service tracks and checks components that are deployed dynamically using Cloudify
24blueprints after the initial DCAE installation.
25
26The healthcheck service is exposed as a Kubernetes ClusterIP Service named
27`dcae-healthcheck`. The service can be queried for status as shown below.
28
Vijay VKedaf8b12019-05-23 22:02:50 +010029.. code-block:: json
Jack Lucas4a72cd92019-05-15 18:07:14 -040030
31 $ curl dcae-healthcheck
32 {
33 "type": "summary",
34 "count": 14,
35 "ready": 14,
36 "items": [
37 {
38 "name": "dev-dcaegen2-dcae-cloudify-manager",
39 "ready": 1,
40 "unavailable": 0
41 },
42 {
43 "name": "dev-dcaegen2-dcae-config-binding-service",
44 "ready": 1,
45 "unavailable": 0
46 },
47 {
48 "name": "dev-dcaegen2-dcae-inventory-api",
49 "ready": 1,
50 "unavailable": 0
51 },
52 {
53 "name": "dev-dcaegen2-dcae-servicechange-handler",
54 "ready": 1,
55 "unavailable": 0
56 },
57 {
58 "name": "dev-dcaegen2-dcae-deployment-handler",
59 "ready": 1,
60 "unavailable": 0
61 },
62 {
63 "name": "dev-dcaegen2-dcae-policy-handler",
64 "ready": 1,
65 "unavailable": 0
66 },
67 {
68 "name": "dep-dcae-ves-collector",
69 "ready": 1,
70 "unavailable": 0
71 },
72 {
73 "name": "dep-dcae-tca-analytics",
74 "ready": 1,
75 "unavailable": 0
76 },
77 {
78 "name": "dep-dcae-prh",
79 "ready": 1,
80 "unavailable": 0
81 },
82 {
83 "name": "dep-dcae-hv-ves-collector",
84 "ready": 1,
85 "unavailable": 0
86 },
87 {
88 "name": "dep-dcae-dashboard",
89 "ready": 1,
90 "unavailable": 0
91 },
92 {
93 "name": "dep-dcae-snmptrap-collector",
94 "ready": 1,
95 "unavailable": 0
96 },
97 {
98 "name": "dep-holmes-engine-mgmt",
99 "ready": 1,
100 "unavailable": 0
101 },
102 {
103 "name": "dep-holmes-rule-mgmt",
104 "ready": 1,
105 "unavailable": 0
Vijay VK86cd8932018-10-23 16:35:29 +0100106 }
Jack Lucas4a72cd92019-05-15 18:07:14 -0400107 ]
108 }