policy healthcheck 53/47653/1
authormayankg2703 <mayank.gupta@amdocs.com>
Tue, 15 May 2018 16:31:41 +0000 (16:31 +0000)
committermayankg2703 <mayank.gupta@amdocs.com>
Tue, 15 May 2018 16:34:43 +0000 (16:34 +0000)
Change-Id: I470e2727ac907ac297839ecc1bf3b53de7f67750
Issue-ID: OOM-30
Signed-off-by: mayankg2703 <mayank.gupta@amdocs.com>
kubernetes/consul/resources/config/consul-agent-config/policy-health.json [new file with mode: 0644]
kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh [new file with mode: 0644]

diff --git a/kubernetes/consul/resources/config/consul-agent-config/policy-health.json b/kubernetes/consul/resources/config/consul-agent-config/policy-health.json
new file mode 100644 (file)
index 0000000..22d135b
--- /dev/null
@@ -0,0 +1,111 @@
+{
+  "service": {
+  "name": "Health Check: Policy",
+  "checks": [
+  {
+    "id": "Policy-mariadb-healthcheck",
+    "name": "Policy Mariadb Health Check",
+    "script": "/consul/scripts/policy-mariadb-script.sh",
+    "interval": "10s",
+    "timeout": "1s"
+  },
+  {
+    "id": "policy-nexus-local-status",
+    "name": "Policy Nexus Local Status",
+    "http": "http://nexus:8081/nexus/service/local/status?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "policy-nexus-internal-metrics",
+    "name": "Policy Nexus Internal Metrics",
+    "http": "http://nexus:8081/nexus/internal/metrics?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "policy-nexus-internal-healthcheck",
+    "name": "Policy Nexus Internal Healthcheck",
+    "http": "http://nexus:8081/nexus/internal/healthcheck?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "brmsgw-tcp",
+    "name": "BRMSGW Health Check",
+    "tcp": "brmsgw:9989",
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "drools",
+    "name": "Drools Health Check",
+    "http": "http://drools:6969/healthcheck?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic aGVhbHRoY2hlY2s6emIhWHp0RzM0"],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "pap",
+    "name": "PAP Health Check",
+    "http": "http://pap:9091/pap/test?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic dGVzdHBhcDphbHBoYTEyMw=="],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+  },
+  {
+    "id": "pdp",
+    "name": "PDP Health Check",
+    "http": "http://pdp:8081/pdp/test?pretty",
+    "method": "GET",
+    "header": {
+      "Authorization": ["Basic dGVzdHBkcDphbHBoYTEyMw=="],
+      "Cache-Control": ["no-cache"],
+      "Content-Type": ["application/json"],
+      "Accept": ["application/json"]
+    },
+    "tls_skip_verify": true,
+    "interval": "15s",
+    "timeout": "1s"
+   }
+  ]
+ }
+}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh
new file mode 100644 (file)
index 0000000..29dbe3f
--- /dev/null
@@ -0,0 +1,14 @@
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-policydb[^[:space:]]*")
+
+   if [ -n "$NAME" ]; then
+       if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+         echo Success. mariadb process is running. 2>&1
+         exit 0
+      else
+         echo Failed. mariadb process is not running. 2>&1
+         exit 1
+      fi
+   else
+      echo Failed. mariadb container is offline. 2>&1
+      exit 1
+   fi