aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVijay Venkatesh Kumar <vv770d@att.com>2021-05-21 21:54:13 -0400
committerVijay Venkatesh Kumar <vv770d@att.com>2021-07-01 09:03:30 -0400
commit27dc2e5945bc63a9c38983c3c529021ee7273a35 (patch)
treeb11df6799f569ac8b2dd08af8fa973af099ca4aa
parent84b53dd3acd5cb8c000c38e9357d4a910c1e7789 (diff)
[DCAE] Heartbeat MS charts
Helm deployment support for DCAE transformation Change-Id: I127b5c4c89850eb5e9b93bbbd1a84f2f096c6b83 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-2705 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com>
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/Chart.yaml22
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/requirements.yaml33
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/configmap.yaml19
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/deployment.yaml19
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/secret.yaml19
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/service.yaml19
-rw-r--r--kubernetes/dcaegen2-services/components/dcae-heartbeat/values.yaml192
-rw-r--r--kubernetes/dcaegen2-services/requirements.yaml7
-rw-r--r--kubernetes/dcaegen2-services/values.yaml4
9 files changed, 331 insertions, 3 deletions
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/Chart.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/Chart.yaml
new file mode 100644
index 0000000000..feb3d5335f
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/Chart.yaml
@@ -0,0 +1,22 @@
+# ================================ LICENSE_START =============================
+# ============================================================================
+# Copyright (c) 2021 AT&T Intellectual Property
+# ============================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ================================= LICENSE_END ==============================
+
+apiVersion: v1
+appVersion: "Honolulu"
+description: DCAE Heartbeat Microservice
+name: dcae-heartbeat
+version: 8.0.0 \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/requirements.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/requirements.yaml
new file mode 100644
index 0000000000..680c0d6711
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/requirements.yaml
@@ -0,0 +1,33 @@
+# ================================ LICENSE_START =============================
+# ============================================================================
+# Copyright (c) 2021 AT&T Intellectual Property. All rights reserved.
+# ============================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ================================= LICENSE_END ==============================
+
+dependencies:
+ - name: common
+ version: ~8.x-0
+ repository: '@local'
+ - name: postgres
+ version: ~8.x-0
+ repository: '@local'
+ - name: readinessCheck
+ version: ~8.x-0
+ repository: '@local'
+ - name: repositoryGenerator
+ version: ~8.x-0
+ repository: '@local'
+ - name: dcaegen2-services-common
+ version: ~8.x-0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/configmap.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/configmap.yaml
new file mode 100644
index 0000000000..a914446c99
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/configmap.yaml
@@ -0,0 +1,19 @@
+{{/*
+################################################################################
+# Copyright (c) 2021 AT&T Intellectual Property #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+################################################################################
+*/}}
+
+{{ include "dcaegen2-services-common.configMap" . }} \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/deployment.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/deployment.yaml
new file mode 100644
index 0000000000..0ad66b62a9
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/deployment.yaml
@@ -0,0 +1,19 @@
+{{/*
+################################################################################
+# Copyright (c) 2021 AT&T Intellectual Property #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+################################################################################
+*/}}
+
+{{ include "dcaegen2-services-common.microserviceDeployment" . }} \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/secret.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/secret.yaml
new file mode 100644
index 0000000000..6b70356ca9
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/secret.yaml
@@ -0,0 +1,19 @@
+{{/*
+################################################################################
+# Copyright (c) 2021 AT&T Intellectual Property #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+################################################################################
+*/}}
+
+{{ include "common.secretFast" . }} \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/service.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/service.yaml
new file mode 100644
index 0000000000..cf11d2a0c5
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/templates/service.yaml
@@ -0,0 +1,19 @@
+{{/*
+################################################################################
+# Copyright (c) 2021 AT&T Intellectual Property #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+################################################################################
+*/}}
+
+{{ include "common.service" . }} \ No newline at end of file
diff --git a/kubernetes/dcaegen2-services/components/dcae-heartbeat/values.yaml b/kubernetes/dcaegen2-services/components/dcae-heartbeat/values.yaml
new file mode 100644
index 0000000000..9c9d3092cf
--- /dev/null
+++ b/kubernetes/dcaegen2-services/components/dcae-heartbeat/values.yaml
@@ -0,0 +1,192 @@
+# ================================ LICENSE_START =============================
+# ============================================================================
+# Copyright (c) 2021 AT&T Intellectual Property. All rights reserved.
+# ============================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ================================= LICENSE_END ==============================
+
+#################################################################
+# Global Configuration Defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ nodePortPrefixExt: 304
+
+#################################################################
+# Filebeat Configuration Defaults.
+#################################################################
+filebeatConfig:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
+#################################################################
+# Secrets Configuration.
+#################################################################
+secrets:
+ - uid: &aafCredsUID aafcreds
+ type: basicAuth
+ login: '{{ .Values.aafCreds.identity }}'
+ password: '{{ .Values.aafCreds.password }}'
+ passwordPolicy: required
+ - uid: &pgUserCredsSecretUid pg-user-creds
+ name: &pgUserCredsSecretName '{{ include "common.release" . }}-heartbeat-pg-user-creds'
+ type: basicAuth
+ externalSecret: '{{ ternary "" (tpl (default "" .Values.postgres.config.pgUserExternalSecret) .) (hasSuffix "heartbeat-pg-user-creds" .Values.postgres.config.pgUserExternalSecret) }}'
+ login: '{{ .Values.postgres.config.pgUserName }}'
+ password: '{{ .Values.postgres.config.pgUserPassword }}'
+ passwordPolicy: generate
+
+#################################################################
+# InitContainer Images.
+#################################################################
+tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:2.1.0
+consulLoaderImage: onap/org.onap.dcaegen2.deployments.consul-loader-container:1.1.0
+
+#################################################################
+# Application Configuration Defaults.
+#################################################################
+# Application Image
+image: onap/org.onap.dcaegen2.services.heartbeat:2.2.0
+pullPolicy: Always
+
+# Log directory where logging sidecar should look for log files
+# if absent, no sidecar will be deployed
+logDirectory: /var/log/ONAP/dcaegen2/services/heartbeat
+
+# Directory where TLS certs should be stored
+# if absent, no certs will be retrieved and stored
+certDirectory: /opt/app/heartbeat/etc/certs
+
+# TLS role -- set to true if microservice acts as server
+# If true, an init container will retrieve a server cert
+# and key from AAF and mount them in certDirectory.
+tlsServer: true
+
+# Dependencies
+readinessCheck:
+ wait_for:
+ - dcae-config-binding-service
+ - aaf-cm
+ - &postgresName dcae-heartbeat-postgres
+
+# Probe Configuration
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 15
+ timeoutSeconds: 1
+ path: /
+ scheme: HTTP
+ port: 10002
+
+# Service Configuration
+service:
+ type: ClusterIP
+ name: dcae-heartbeat
+ ports:
+ - name: http
+ port: 10002
+ port_protocol: http
+
+# AAF Credentials
+aafCreds:
+ identity: dcae@dcae.onap.org
+ password: demo123456!
+
+credentials:
+- name: AAF_IDENTITY
+ uid: *aafCredsUID
+ key: login
+- name: AAF_PASSWORD
+ uid: *aafCredsUID
+ key: password
+- name: HEARTBEAT_PG_USERNAME
+ uid: *pgUserCredsSecretUid
+ key: login
+- name: HEARTBEAT_PG_PASSWORD
+ uid: *pgUserCredsSecretUid
+ key: password
+
+
+# Initial Application Configuration
+applicationConfig:
+ CBS_polling_allowed: "True"
+ CBS_polling_interval: "300"
+ consumerID: "1"
+ groupID: "hbgrpID"
+ pg_ipAddress: dcae-heartbeat-pg-primary
+ pg_passwd: ${HEARTBEAT_PG_PASSWORD}
+ pg_portNum: 5432
+ pg_userName: ${HEARTBEAT_PG_USERNAME}
+ pg_dbName: heartbeat
+ heartbeat_config: '{"vnfs": [{"eventName": "Heartbeat_vDNS","heartbeatcountmissed": 3,"heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1", "policyVersion": "1.0.0.5", "policyName":"vFireWall","policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName","target_type": "VNF", "target": "genVnfName", "version": "1.0"}, {"eventName": "Heartbeat_vFW","heartbeatcountmissed": 3, "heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1","policyVersion": "1.0.0.5","policyName": "vFireWall","policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName", "target_type":"VNF", "target": "genVnfName", "version": "1.0"}, {"eventName": "Heartbeat_xx","heartbeatcountmissed": 3, "heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1","policyVersion": "1.0.0.5","policyName": "vFireWall", "policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName","target_type": "VNF","target": "genVnfName","version": "1.0"}]}'
+ streams_publishes:
+ dcae_cl_out:
+ dmaap_info:
+ topic_url: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.DCAE_CL_OUTPUT"
+ type: message_router
+ streams_subscribes:
+ ves-heartbeat:
+ dmaap_info:
+ topic_url: "http://message-router:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT"
+ type: message_router
+
+#applicationEnv:
+# HEARTBEAT_PG_URL: &dcaeheartbeatPgPrimary dcae-heartbeat-pg-primary
+# HEARTBEAT_PG_USERNAME:
+# secretUid: *pgUserCredsSecretUid
+# key: login
+# HEARTBEAT_PG_PASSWORD:
+# secretUid: *pgUserCredsSecretUid
+# key: password
+
+# Resource Limit Flavor -By Default Using Small
+flavor: small
+
+# Segregation for Different Environment (Small and Large)
+resources:
+ small:
+ limits:
+ cpu: 1
+ memory: 1Gi
+ requests:
+ cpu: 1
+ memory: 1Gi
+ large:
+ limits:
+ cpu: 2
+ memory: 2Gi
+ requests:
+ cpu: 2
+ memory: 2Gi
+ unlimited: {}
+
+#################################################################
+# Application configuration Overriding Defaults in the Postgres.
+#################################################################
+postgres:
+ nameOverride: *postgresName
+ service:
+ name: *postgresName
+ name2: dcae-heartbeat-pg-primary
+ name3: dcae-heartbeat-pg-replica
+ container:
+ name:
+ primary: dcae-heartbeat-pg-primary
+ replica: dcae-heartbeat-pg-replica
+ persistence:
+ mountSubPath: heartbeat/data
+ mountInitPath: heartbeat
+ config:
+ pgUserName: heartbeat
+ pgDatabase: heartbeat
+ pgUserExternalSecret: *pgUserCredsSecretName
diff --git a/kubernetes/dcaegen2-services/requirements.yaml b/kubernetes/dcaegen2-services/requirements.yaml
index 7e16d98897..80c95cb8f5 100644
--- a/kubernetes/dcaegen2-services/requirements.yaml
+++ b/kubernetes/dcaegen2-services/requirements.yaml
@@ -17,6 +17,10 @@ dependencies:
- name: common
version: ~8.x-0
repository: '@local'
+ - name: dcae-heartbeat
+ version: ~8.x-0
+ repository: '@local'
+ condition: dcae-heartbeat.enabled
- name: dcae-hv-ves-collector
version: ~8.x-0
repository: '@local'
@@ -36,7 +40,7 @@ dependencies:
- name: dcae-prh
version: ~8.x-0
repository: '@local'
- condition: dcae-bootstrap.enabled
+ condition: dcae-prh.enabled
- name: dcae-slice-analysis-ms
version: ~8.x-0
repository: '@local'
@@ -53,4 +57,3 @@ dependencies:
version: ~8.x-0
repository: '@local'
condition: dcae-ves-collector.enabled
-
diff --git a/kubernetes/dcaegen2-services/values.yaml b/kubernetes/dcaegen2-services/values.yaml
index 21b84f914d..57bda2c0e9 100644
--- a/kubernetes/dcaegen2-services/values.yaml
+++ b/kubernetes/dcaegen2-services/values.yaml
@@ -1,5 +1,5 @@
# Copyright (c) 2021 J. F. Lucas. All rights reserved.
-#
+# Copyright (c) 2021 AT&T. All rights reserved.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
@@ -14,6 +14,8 @@
# Control deployment of DCAE microservices at ONAP installation time
+dcae-heartbeat:
+ enabled: false
dcae-hv-ves-collector:
enabled: true
dcae-kpi-ms: