blob: 9fec3a80c390f2b4fc51ca52e54c357f7d475f61 [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
21components deployed using Cloudify blueprints. In addition, beginning with
22the Dublin release, the healthcheck
23service 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 VKf9e43442019-05-22 22:10:29 +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 }