From 15ca512b7835534aafb584eecc3ef81e3954fc09 Mon Sep 17 00:00:00 2001 From: ajay_dp001 Date: Mon, 5 Apr 2021 23:02:36 +0530 Subject: [PATCH] [DCAEGEN2] Deploy DCAE PM-Mapper Microservices via Helm - DCAE Helm Transformation (Phase-2) - Charts for the microservices are found under - oom/kubernetes/dcaegen2-services/dcae-pm-mapper Issue-ID: DCAEGEN2-2714 Signed-off-by: ajay_dp001 Change-Id: Id91b19eec0e5d8f1ecc75b7f6042eac2fdb19609 --- .../components/dcae-pm-mapper/Chart.yaml | 22 +++ .../components/dcae-pm-mapper/requirements.yaml | 30 +++ .../dcae-pm-mapper/templates/configmap.yaml | 19 ++ .../dcae-pm-mapper/templates/deployment.yaml | 19 ++ .../dcae-pm-mapper/templates/secret.yaml | 19 ++ .../dcae-pm-mapper/templates/service.yaml | 19 ++ .../components/dcae-pm-mapper/values.yaml | 218 +++++++++++++++++++++ kubernetes/dcaegen2-services/requirements.yaml | 5 + kubernetes/dcaegen2-services/values.yaml | 4 + 9 files changed, 355 insertions(+) create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/Chart.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/requirements.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/configmap.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/deployment.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/secret.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/service.yaml create mode 100644 kubernetes/dcaegen2-services/components/dcae-pm-mapper/values.yaml diff --git a/kubernetes/dcaegen2-services/components/dcae-pm-mapper/Chart.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/Chart.yaml new file mode 100644 index 0000000000..1740464cc5 --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/Chart.yaml @@ -0,0 +1,22 @@ +# ================================ LICENSE_START ============================= +# ============================================================================ +# Copyright (C) 2021 Nordix Foundation. +# ============================================================================ +# 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 PM-Mapper Helm charts +name: dcae-pm-mapper +version: 8.0.0 \ No newline at end of file diff --git a/kubernetes/dcaegen2-services/components/dcae-pm-mapper/requirements.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/requirements.yaml new file mode 100644 index 0000000000..5e1b36e493 --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/requirements.yaml @@ -0,0 +1,30 @@ +# ================================ LICENSE_START ============================= +# ============================================================================ +# Copyright (C) 2021 Nordix Foundation. +# ============================================================================ +# 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: readinessCheck + version: ~8.x-0 + repository: '@local' + - name: repositoryGenerator + version: ~8.x-0 + repository: '@local' + - name: dcaegen2-services-common + version: ~8.x-0 + repository: 'file://../../common/dcaegen2-services-common' \ No newline at end of file diff --git a/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/configmap.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/configmap.yaml new file mode 100644 index 0000000000..a0cb9a66bd --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/configmap.yaml @@ -0,0 +1,19 @@ +{{/* +################################################################################ +# Copyright (C) 2021 Nordix Foundation. # +# # +# 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-pm-mapper/templates/deployment.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/deployment.yaml new file mode 100644 index 0000000000..d992d5c19c --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/deployment.yaml @@ -0,0 +1,19 @@ +{{/* +################################################################################ +# Copyright (C) 2021 Nordix Foundation. # +# # +# 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-pm-mapper/templates/secret.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/secret.yaml new file mode 100644 index 0000000000..1f588464ba --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/secret.yaml @@ -0,0 +1,19 @@ +{{/* +################################################################################ +# Copyright (C) 2021 Nordix Foundation. # +# # +# 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-pm-mapper/templates/service.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/service.yaml new file mode 100644 index 0000000000..2de4a8fe0a --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/templates/service.yaml @@ -0,0 +1,19 @@ +{{/* +################################################################################ +# Copyright (C) 2021 Nordix Foundation. # +# # +# 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-pm-mapper/values.yaml b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/values.yaml new file mode 100644 index 0000000000..4fba10d214 --- /dev/null +++ b/kubernetes/dcaegen2-services/components/dcae-pm-mapper/values.yaml @@ -0,0 +1,218 @@ +# ================================ LICENSE_START ========================== +# ========================================================================= +# Copyright (C) 2021 Nordix Foundation. +# ========================================================================= +# 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: &drSubCredsUID drsubcreds + type: basicAuth + login: '{{ .Values.drSubscriberCreds.username }}' + password: '{{ .Values.drSubscriberCreds.password }}' + passwordPolicy: required + +################################################################# +# 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.pm-mapper:1.6.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/pm-mapper + +# Directory where TLS certs should be stored +# if absent, no certs will be retrieved and stored +certDirectory: /opt/app/pm-mapper/etc/cert + +# 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: + containers: + - dcae-config-binding-service + - aaf-cm + - dmaap-bc + - dmaap-provisioning-job + - dcae-datafile-collector + +# Probe Configuration +readiness: + initialDelaySeconds: 10 + periodSeconds: 15 + timeoutSeconds: 1 + path: /healthcheck + scheme: HTTPS + port: 8443 + +# Service Configuration +service: + type: ClusterIP + name: dcae-pm-mapper + both_tls_and_plain: true + ports: + - name: https + port: 8443 + plain_port: 8081 + port_protocol: http + +# AAF Credentials +aafCreds: + identity: dcae@dcae.onap.org + password: demo123456! + +# Data Router Subscriber Credentials +drSubscriberCreds: + username: username + password: password + +credentials: +- name: AAF_IDENTITY + uid: *aafCredsUID + key: login +- name: AAF_PASSWORD + uid: *aafCredsUID + key: password +- name: DR_USERNAME + uid: *drSubCredsUID + key: login +- name: DR_PASSWORD + uid: *drSubCredsUID + key: password + +# Initial Application Configuration +applicationConfig: + enable_tls: true + enable_http: false + aaf_identity: ${AAF_IDENTITY} + aaf_password: ${AAF_PASSWORD} + pm-mapper-filter: "{ \"filters\":[] }" + key_store_path: /opt/app/pm-mapper/etc/cert/cert.jks + key_store_pass_path: /opt/app/pm-mapper/etc/cert/jks.pass + trust_store_path: /opt/app/pm-mapper/etc/cert/trust.jks + trust_store_pass_path: /opt/app/pm-mapper/etc/cert/trust.pass + dmaap_dr_delete_endpoint: https://dmaap-dr-node:8443/delete + streams_publishes: + dmaap_publisher: + type: message_router + dmaap_info: + client_id: ${MR_FILES_PUBLISHER_CLIENT_ID_0} + location: san-francisco + client_role: org.onap.dcae.pmPublisher + topic_url: http://message-router:3904/events/org.onap.dmaap.mr.PERFORMANCE_MEASUREMENTS + streams_subscribes: + dmaap_subscriber: + type: data_router + dmaap_info: + subscriber_id: ${DR_FILES_SUBSCRIBER_ID_0} + decompress: true + privileged: true + username: ${DR_USERNAME} + password: ${DR_PASSWORD} + location: san-francisco + delivery_url: https://dcae-pm-mapper:8443/delivery + +# DataRouter Feed Configuration +drFeedConfig: + - feedName: bulk_pm_feed + owner: dcaecm + feedVersion: 0.0 + asprClassification: unclassified + feedDescription: DFC Feed Creation + +# DataRouter Subscriber Configuration +drSubConfig: + - feedName: bulk_pm_feed + decompress: true + username: ${DR_USERNAME} + userpwd: ${DR_PASSWORD} + dcaeLocationName: loc00 + privilegedSubscriber: true + deliveryURL: https://dcae-pm-mapper:8443/delivery + +# MessageRouter Topic, Publisher Configuration +mrTopicsConfig: + - topicName: PERFORMANCE_MEASUREMENTS + topicDescription: PM Mapper publishes perf3gpp VES PM Events to authenticated MR topic + owner: dcaecm + tnxEnabled: false + clients: + - dcaeLocationName: san-francisco + clientRole: org.onap.dcae.pmPublisher + action: + - pub + - view + +# ConfigMap Configuration for Dr Feed, Subscriber, MR Topics +volumes: + - name: feeds-config + path: /opt/app/config/feeds + - name: drsub-config + path: /opt/app/config/dr_subs + - name: topics-config + path: /opt/app/config/topics + +# 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: {} \ No newline at end of file diff --git a/kubernetes/dcaegen2-services/requirements.yaml b/kubernetes/dcaegen2-services/requirements.yaml index 80c95cb8f5..d246c16237 100644 --- a/kubernetes/dcaegen2-services/requirements.yaml +++ b/kubernetes/dcaegen2-services/requirements.yaml @@ -1,5 +1,6 @@ # Copyright (c) 2021 J. F. Lucas. All rights reserved. # Copyright (c) 2021 AT&T. All rights reserved. +# Modifications Copyright (C) 2021 Nordix Foundation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -29,6 +30,10 @@ dependencies: version: ~8.x-0 repository: '@local' condition: dcae-kpi-ms.enabled + - name: dcae-pm-mapper + version: ~8.x-0 + repository: '@local' + condition: dcae-pm-mapper.enabled - name: dcae-ms-healthcheck version: ~8.x-0 repository: '@local' diff --git a/kubernetes/dcaegen2-services/values.yaml b/kubernetes/dcaegen2-services/values.yaml index 57bda2c0e9..f38b9034bc 100644 --- a/kubernetes/dcaegen2-services/values.yaml +++ b/kubernetes/dcaegen2-services/values.yaml @@ -1,5 +1,7 @@ # Copyright (c) 2021 J. F. Lucas. All rights reserved. # Copyright (c) 2021 AT&T. All rights reserved. +# Modifications Copyright (C) 2021 Nordix Foundation. +# # 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 @@ -18,6 +20,8 @@ dcae-heartbeat: enabled: false dcae-hv-ves-collector: enabled: true +dcae-pm-mapper: + enabled: false dcae-kpi-ms: enabled: false dcae-ms-healthcheck: -- 2.16.6