summaryrefslogtreecommitdiffstats
path: root/kubernetes/pomba
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes/pomba')
-rw-r--r--kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties2
-rw-r--r--kubernetes/pomba/charts/pomba-contextaggregator/resources/bin/pre_start.sh26
-rwxr-xr-xkubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties2
-rwxr-xr-xkubernetes/pomba/charts/pomba-contextaggregator/templates/configmap.yaml10
-rwxr-xr-xkubernetes/pomba/charts/pomba-contextaggregator/templates/deployment.yaml25
-rw-r--r--kubernetes/pomba/charts/pomba-contextaggregator/templates/service.yaml41
-rwxr-xr-xkubernetes/pomba/charts/pomba-contextaggregator/values.yaml4
-rw-r--r--kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml19
-rw-r--r--kubernetes/pomba/charts/pomba-elasticsearch/values.yaml2
-rw-r--r--kubernetes/pomba/charts/pomba-kibana/resources/config/validationsDump.json192
-rw-r--r--kubernetes/pomba/charts/pomba-kibana/resources/config/violationsDump.json48
-rw-r--r--kubernetes/pomba/charts/pomba-kibana/templates/deployment.yaml38
-rw-r--r--kubernetes/pomba/charts/pomba-kibana/values.yaml2
-rw-r--r--kubernetes/pomba/charts/pomba-sdcctxbuilder/templates/deployment.yaml18
-rw-r--r--kubernetes/pomba/charts/pomba-sdncctxbuilder/resources/config/application.properties6
-rw-r--r--kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json17
-rw-r--r--kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml61
-rw-r--r--kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml2
-rw-r--r--kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy64
-rw-r--r--kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml20
-rw-r--r--kubernetes/pomba/resources/config/log/filebeat/filebeat.yml6
21 files changed, 232 insertions, 373 deletions
diff --git a/kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties b/kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties
index 790707914d..e171d173aa 100644
--- a/kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties
+++ b/kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties
@@ -43,7 +43,7 @@ aai.readTimeout={{ .Values.config.aaiReadTimeout }}
http.userId={{ .Values.config.httpUserId }}
http.password={{ .Values.config.httpPassword }}
-aai.searchNodeQuery=/aai/v13/search/nodes-query?search-node-type=service-instance&filter=service-instance-id:EQUALS:
+aai.searchNodeQuery=/aai/v13/nodes/service-instance/{0}
#Servlet context parameters
server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/resources/bin/pre_start.sh b/kubernetes/pomba/charts/pomba-contextaggregator/resources/bin/pre_start.sh
deleted file mode 100644
index 8a76cdd929..0000000000
--- a/kubernetes/pomba/charts/pomba-contextaggregator/resources/bin/pre_start.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-
-# Get the list of topic from curl ressult
-dmaap_mr_host=message-router
-dmaap_mr_port=3904
-temp_output_file=".tmpoutput"
-curl -X GET http://$dmaap_mr_host:$dmaap_mr_port/topics > $temp_output_file
-
-# Test topic POA-AUDIT-INIT, POA-AUDIT-RESULT, POA-RULE-VALIDATION
-TOPICS="POA-AUDIT-INIT POA-RULE-VALIDATION POA-AUDIT-RESULT"
-for i_topic in $TOPICS
-do
- echo "Looping ... topic: $i_topic"
- if grep -iFq "$i_topic" $temp_output_file
- then
- # code if found
- echo "$i_topic found."
- else
- # code if not found
- echo "$i_topic NOT found."
- curl -X POST -H "content-type: application/json" --data '{"event":"create topic"}' http://$dmaap_mr_host:$dmaap_mr_port/events/$i_topic
- fi
-done
-
-# remove the temp file
-rm -f $temp_output_file
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties b/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties
index 9a27a6c8c8..77789f49bd 100755
--- a/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties
+++ b/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties
@@ -24,4 +24,4 @@ key.manager.factory.algorithm=SunX509
security.protocol=TLS
connection.timeout.ms=60000
read.timeout.ms=60000
-base.uri=/sdccontextbuilder/service/context
+base.uri=/sdccontextbuilder/v2/service/context
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-contextaggregator/templates/configmap.yaml
index b984c52b15..6225338c76 100755
--- a/kubernetes/pomba/charts/pomba-contextaggregator/templates/configmap.yaml
+++ b/kubernetes/pomba/charts/pomba-contextaggregator/templates/configmap.yaml
@@ -31,15 +31,7 @@ data:
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-pre-start-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/bin/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }} \ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-contextaggregator/templates/deployment.yaml
index 33e82ea5dc..589b2f2275 100755
--- a/kubernetes/pomba/charts/pomba-contextaggregator/templates/deployment.yaml
+++ b/kubernetes/pomba/charts/pomba-contextaggregator/templates/deployment.yaml
@@ -78,10 +78,6 @@ spec:
- mountPath: /opt/app/config/builders
name: {{ include "common.fullname" . }}-config-builders
readOnly: true
- - mountPath: /opt/app/bin/pre_start.sh
- name: {{ include "common.fullname" . }}-pre-start
- subPath: pre_start.sh
- readOnly: false
- name: {{ include "common.fullname" . }}-logs
mountPath: /opt/app/logs
readOnly: false
@@ -102,6 +98,20 @@ spec:
affinity:
{{- toYaml .Values.affinity | indent 10 }}
{{- end }}
+
+ # Filebeat sidecar container
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /opt/app/logs
+
volumes:
- name: localtime
hostPath:
@@ -112,10 +122,11 @@ spec:
- name: {{ include "common.fullname" . }}-config-builders
configMap:
name: {{ include "common.fullname" . }}-configmap-builders
- - name: {{ include "common.fullname" . }}-pre-start
+ - name: {{ include "common.fullname" . }}-filebeat-conf
configMap:
- name: {{ include "common.fullname" . }}-pre-start-configmap
- defaultMode: 0777
+ name: {{ .Release.Name }}-pomba-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
- name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- name: {{ include "common.fullname" . }}-log-conf
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/templates/service.yaml b/kubernetes/pomba/charts/pomba-contextaggregator/templates/service.yaml
new file mode 100644
index 0000000000..defd063d2f
--- /dev/null
+++ b/kubernetes/pomba/charts/pomba-contextaggregator/templates/service.yaml
@@ -0,0 +1,41 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName | default "http" }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/values.yaml b/kubernetes/pomba/charts/pomba-contextaggregator/values.yaml
index 32544219f3..40d40b3611 100755
--- a/kubernetes/pomba/charts/pomba-contextaggregator/values.yaml
+++ b/kubernetes/pomba/charts/pomba-contextaggregator/values.yaml
@@ -75,8 +75,8 @@ service:
#Services may use any combination of ports depending on the 'type' of
#service being defined.
- #type: ClusterIP
- #externalPort: 9529
+ type: ClusterIP
+ externalPort: 9529
internalPort: 9529
#nodePort: <replace with unused node port suffix eg. 23>
# optional port name override - default can be defined in service.yaml
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml
index cb5c210da9..71f3ac2d93 100644
--- a/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml
+++ b/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml
@@ -127,6 +127,20 @@ spec:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
+
+ # Filebeat sidecar container
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /opt/app/logs
+
volumes:
- name: localtime
hostPath:
@@ -142,6 +156,11 @@ spec:
path: data-router.properties
- key: schemaIngest.properties
path: schemaIngest.properties
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-pomba-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
- name: {{ include "common.fullname" . }}-dynamic-route
configMap:
name: {{ include "common.fullname" . }}-dynamic
diff --git a/kubernetes/pomba/charts/pomba-elasticsearch/values.yaml b/kubernetes/pomba/charts/pomba-elasticsearch/values.yaml
index f3d2aaa311..00eb921779 100644
--- a/kubernetes/pomba/charts/pomba-elasticsearch/values.yaml
+++ b/kubernetes/pomba/charts/pomba-elasticsearch/values.yaml
@@ -29,7 +29,7 @@ busyboxImage: library/busybox:latest
# application image
loggingRepository: docker.elastic.co
-image: elasticsearch/elasticsearch:6.3.1
+image: elasticsearch/elasticsearch:6.6.2
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/pomba/charts/pomba-kibana/resources/config/validationsDump.json b/kubernetes/pomba/charts/pomba-kibana/resources/config/validationsDump.json
deleted file mode 100644
index ae01e9679f..0000000000
--- a/kubernetes/pomba/charts/pomba-kibana/resources/config/validationsDump.json
+++ /dev/null
@@ -1,192 +0,0 @@
-{
- "service-validations": {
- "mappings": {
- "default": {
- "properties": {
- "modelInvariantId": {
- "type": "text"
- },
- "modelName": {
- "type": "text"
- },
- "modelVersionId": {
- "type": "text"
- },
- "result": {
- "type": "text"
- },
- "serviceInstanceId": {
- "type": "text"
- },
- "validationId": {
- "type": "text"
- },
- "validationTimestamp": {
- "type": "date",
- "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
- },
- "violations": {
- "type": "nested",
- "properties": {
- "category": {
- "type": "text"
- },
- "errorMessage": {
- "type": "text"
- },
- "modelName": {
- "type": "text"
- },
- "severity": {
- "type": "text"
- },
- "validationRule": {
- "type": "text"
- },
- "violationDetails": {
- "properties": {
- "context-list-aai-vf-list[*]": {
- "properties": {
- "invariant-id": {
- "type": "text"
- },
- "name": {
- "type": "text"
- },
- "nf-naming-code": {
- "type": "text"
- },
- "type": {
- "type": "text"
- },
- "uuid": {
- "type": "text"
- },
- "vf-module-list": {
- "properties": {
- "invariant-id": {
- "type": "text"
- },
- "max-instances": {
- "type": "long"
- },
- "min-instances": {
- "type": "long"
- },
- "uuid": {
- "type": "text"
- }
- }
- },
- "vnfc-list": {
- "properties": {
- "name": {
- "type": "text"
- },
- "nfc-naming-code": {
- "type": "text"
- }
- }
- }
- }
- },
- "context-list-aai-vf-list[*]-name": {
- "type": "text"
- },
- "context-list-aai-vf-list[*]-type": {
- "type": "text"
- },
- "context-list-aai-vf[*]-name": {
- "type": "text"
- },
- "context-list-aai-vf[*]-type": {
- "type": "text"
- },
- "context-list-sdc-service-name": {
- "type": "text"
- },
- "context-list-sdc-vf-list[*]": {
- "properties": {
- "invariant-id": {
- "type": "text"
- },
- "name": {
- "type": "text"
- },
- "type": {
- "type": "text"
- },
- "uuid": {
- "type": "text"
- },
- "vf-module-list": {
- "properties": {
- "invariant-id": {
- "type": "text"
- },
- "max-instances": {
- "type": "long"
- },
- "min-instances": {
- "type": "long"
- },
- "uuid": {
- "type": "text"
- }
- }
- },
- "vnfc-list": {
- "properties": {
- "invariant-id": {
- "type": "text"
- },
- "name": {
- "type": "text"
- },
- "nfc-naming-code": {
- "type": "text"
- },
- "uuid": {
- "type": "text"
- }
- }
- }
- }
- },
- "context-list-sdnc-vf-list[*]-name": {
- "type": "text"
- },
- "context-list-sdnc-vf-list[*]-type": {
- "type": "text"
- },
- "context-list-sdnc-vf[*]-name": {
- "type": "text"
- },
- "context-list-sdnc-vf[*]-type": {
- "type": "text"
- }
- }
- },
- "violationId": {
- "type": "text"
- },
- "violationTimestamp": {
- "type": "date",
- "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
- },
- "violationType": {
- "type": "text"
- }
- }
- },
- "client": {
- "type": "text"
- },
- "requestId": {
- "type": "text"
- }
- }
- }
- }
- }
-}
diff --git a/kubernetes/pomba/charts/pomba-kibana/resources/config/violationsDump.json b/kubernetes/pomba/charts/pomba-kibana/resources/config/violationsDump.json
deleted file mode 100644
index 790f8c7f7d..0000000000
--- a/kubernetes/pomba/charts/pomba-kibana/resources/config/violationsDump.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "service-violations": {
- "mappings": {
- "default": {
- "properties": {
- "category": {
- "type": "text"
- },
- "message": {
- "type": "text"
- },
- "modelInvariantId": {
- "type": "text"
- },
- "modelVersionId": {
- "type": "text"
- },
- "serviceInstanceId": {
- "type": "text"
- },
- "severity": {
- "type": "text"
- },
- "validationId": {
- "type": "text"
- },
- "validationRule": {
- "type": "text"
- },
- "validationTimestamp": {
- "type": "date",
- "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
- },
- "violationId": {
- "type": "text"
- },
- "violationTimestamp": {
- "type": "date",
- "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
- },
- "violationType": {
- "type": "text"
- }
- }
- }
- }
- }
-} \ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-kibana/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-kibana/templates/deployment.yaml
index 2bc9e796c9..58a0a90acf 100644
--- a/kubernetes/pomba/charts/pomba-kibana/templates/deployment.yaml
+++ b/kubernetes/pomba/charts/pomba-kibana/templates/deployment.yaml
@@ -79,40 +79,6 @@ spec:
- mountPath: /config/default.json
name: {{ include "common.fullname" . }}
subPath: default.json
- - args:
- - --output=http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}/service-validations
- - --input=/config/validationsDump.json
- - --type=mapping
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.configRepository }}/{{ .Values.configImage }}"
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- name: {{ include "common.name" . }}-config-validation
- volumeMounts:
- - mountPath: /config/validationsDump.json
- name: {{ include "common.fullname" . }}
- subPath: validationsDump.json
- - args:
- - --output=http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}/service-violations
- - --input=/config/violationsDump.json
- - --type=mapping
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.configRepository }}/{{ .Values.configImage }}"
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- name: {{ include "common.name" . }}-config-violation
- volumeMounts:
- - mountPath: /config/violationsDump.json
- name: {{ include "common.fullname" . }}
- subPath: violationsDump.json
containers:
- name: {{ include "common.name" . }}
image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
@@ -175,10 +141,6 @@ spec:
path: kibana.yml
- key: default.json
path: default.json
- - key: validationsDump.json
- path: validationsDump.json
- - key: violationsDump.json
- path: violationsDump.json
- key: default-mapping.json
path: default-mapping.json
- name: {{ include "common.fullname" . }}-auth
diff --git a/kubernetes/pomba/charts/pomba-kibana/values.yaml b/kubernetes/pomba/charts/pomba-kibana/values.yaml
index fe50e47fda..53725b7798 100644
--- a/kubernetes/pomba/charts/pomba-kibana/values.yaml
+++ b/kubernetes/pomba/charts/pomba-kibana/values.yaml
@@ -34,7 +34,7 @@ busyboxImage: library/busybox:latest
# application image
loggingRepository: docker.elastic.co
-image: kibana/kibana:6.3.1
+image: kibana/kibana:6.6.2
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/pomba/charts/pomba-sdcctxbuilder/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-sdcctxbuilder/templates/deployment.yaml
index 6ae5ee3e4e..247c85fbe3 100644
--- a/kubernetes/pomba/charts/pomba-sdcctxbuilder/templates/deployment.yaml
+++ b/kubernetes/pomba/charts/pomba-sdcctxbuilder/templates/deployment.yaml
@@ -79,6 +79,19 @@ spec:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # Filebeat sidecar container
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /opt/app/logs
+
volumes:
- name: localtime
hostPath:
@@ -91,6 +104,11 @@ spec:
- name: {{ include "common.fullname" . }}-log-conf
configMap:
name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-pomba-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
- name: {{ include "common.fullname" . }}-logs-eelf
emptyDir: {}
imagePullSecrets:
diff --git a/kubernetes/pomba/charts/pomba-sdncctxbuilder/resources/config/application.properties b/kubernetes/pomba/charts/pomba-sdncctxbuilder/resources/config/application.properties
index 991c77df7c..24b443c57f 100644
--- a/kubernetes/pomba/charts/pomba-sdncctxbuilder/resources/config/application.properties
+++ b/kubernetes/pomba/charts/pomba-sdncctxbuilder/resources/config/application.properties
@@ -17,7 +17,7 @@ spring.mvc.urls=swagger,docs,prometheus,auditevents,info,heapdump,autoconfig,bea
camel.springboot.xmlRoutes = file:config/dynamic/routes/*.route
service.xml.beans = config/dynamic/conf/*.xml
-server.contextPath=/sdnccontextbuilder/v1
+server.contextPath=/sdnccontextbuilder
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
#This property is used to set the Tomcat connector attributes.developers can define multiple attributes separated by comma
@@ -53,9 +53,7 @@ aai.readTimeout={{ .Values.config.aaiReadTimeout }}
aai.http.userId={{ .Values.config.aaiHttpUserId }}
aai.http.password={{ .Values.config.aaiHttpPassword }}
-aai.searchNodeQuery=/aai/v13/search/nodes-query?search-node-type=service-instance&filter=service-instance-id:EQUALS:
-aai.customerQuery=/aai/v13/business/customers/customer/
-aai.serviceInstancePath=/aai/v13/business/customers/customer/{0}/service-subscriptions/service-subscription/{1}/service-instances/service-instance/{2}
+aai.serviceInstanceQuery=/aai/v13/nodes/service-instance/{0}
# SDNC REST Client Configuration
sdnc.serviceName={{ .Values.config.sdncServiceName }}.{{.Release.Namespace}}
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json
index de8bacf4cb..58ed8f6428 100644
--- a/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json
+++ b/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json
@@ -1,19 +1,16 @@
{
- "attr-translations": [{
- "from": "\"type\":\"string\",\"index\":\"analyzed\"",
- "to": "\"type\":\"text\",\"index\":\"true\""
- },
+ "attr-translations": [
{
- "from": "\"type\":\"string\",\"index\":\"not_analyzed\"",
- "to": "\"type\":\"keyword\",\"index\":\"true\""
+ "query": "$..[?(@.type=='string' && @.index=='analyzed')]",
+ "update": {"type": "text", "index": true, "fielddata": true}
},
{
- "from": "\"type\":\"string\"",
- "to": "\"type\":\"text\""
+ "query": "$..[?(@.type=='string' && @.index=='not_analyzed')]",
+ "update": {"type": "keyword", "index": true}
},
{
- "from": "searchable",
- "to": "index"
+ "query": "$..[?(@.type=='string' && !@.index)]",
+ "update": {"type": "text", "fielddata": true}
}
]
} \ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml
index 1f00cbddce..3b02684b68 100644
--- a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml
+++ b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml
@@ -1,30 +1,31 @@
-<configuration>
- <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
- <property name="p_lvl" value="%level"/>
- <property name="p_log" value="%logger"/>
- <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
- <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <!-- tabs -->
- <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <property name="p_thr" value="%thread"/>
- <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender name="FILE" class="ch.qos.logback.core.FileAppender">
- <file>output.log</file>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <logger level="INFO" name="org.onap.logging.ref.slf4j" additivity="false">
- <appender-ref ref="STDOUT" />
- <appender-ref ref="FILE" />
- </logger>
- <root level="INFO">
- <appender-ref ref="STDOUT" />
- </root>
-</configuration>
+<configuration>
+ <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
+ <property name="p_lvl" value="%level"/>
+ <property name="p_log" value="%logger"/>
+ <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
+ <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <!-- tabs -->
+ <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <property name="p_thr" value="%thread"/>
+ <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="FILE" class="ch.qos.logback.core.FileAppender">
+ <file>logs/EELF/output.log</file>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <logger level="INFO" name="org.onap.logging.ref.slf4j" additivity="false">
+ <appender-ref ref="STDOUT" />
+ <appender-ref ref="FILE" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="STDOUT" />
+ <appender-ref ref="FILE" />
+ </root>
+</configuration> \ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml
index 4d8d496223..b1065c14a8 100644
--- a/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml
+++ b/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2018 Amdocs
+# Copyright © 2018 Amdocs
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy b/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy
index 1902a1050f..df75b31eab 100644
--- a/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy
+++ b/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy
@@ -76,6 +76,12 @@ entity {
name 'Attribute-comparison'
attributes 'context-list.ndcb.vnfList[*].vfModuleList[*].vmList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].vmList[*]'
}
+
+ // NDCB-AAI comparison: P-Interface list
+ useRule {
+ name 'Attribute-comparison'
+ attributes 'context-list.ndcb.pnfList[*].pInterfaceList[*]', 'context-list.aai.pnfList[*].pInterfaceList[*]'
+ }
// SDNC-AAI comparison: Context level
@@ -132,8 +138,13 @@ entity {
attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].vmList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].vmList[*]'
}
-
-
+ // AAI-SDNC PNF name validation
+ useRule {
+ name 'AAI-SDNC-pnf-name-check'
+ attributes 'context-list.aai.pnfList[*].name', 'context-list.sdnc.pnfList[*].name'
+ }
+
+
// SDNC-NDCB comparison: Context level
useRule {
name 'Attribute-comparison'
@@ -432,3 +443,52 @@ rule {
return new Tuple2(success, details)
'''
}
+
+rule {
+ name 'AAI-SDNC-pnf-name-check'
+ category 'PNF Consistency'
+ description 'Validate that each PNF name in AAI matches a PNF name in the SDNC model'
+ errorText 'AAI PNF names do not match SDNC - {0}'
+ severity 'ERROR'
+ attributes 'aaiNames', 'sdncNames'
+ validate '''
+ def addName = { values, key ->
+ values.add("$key")
+ }
+
+ List<String> errorReasons = new ArrayList();
+
+ if (aaiNames.size() != sdncNames.size()) {
+ errorReasons.add("Number of PNFs don't match; aai has ${aaiNames.size()}, sdnc has ${sdncNames.size()}")
+ return new Tuple2(false, errorReasons)
+ }
+
+ // collect all the "name" values from AAI and SDNC into two Sets.
+ Set aaiNameSet = new java.util.HashSet()
+ aaiNames.each {
+ aValue -> addName(aaiNameSet, aValue)
+ }
+
+ Set sdncNameSet = new java.util.HashSet()
+ sdncNames.each {
+ aValue -> addName(sdncNameSet, aValue)
+ }
+
+ // Validate that the names match by comparing the size of the two Sets.
+ if (aaiNameSet.size() != sdncNameSet.size()) {
+ errorReasons.add("Number of distinct PNF names don't match; aai: ${aaiNameSet}, sdnc: ${sdncNameSet}")
+ return new Tuple2(false, errorReasons)
+ }
+
+ Set combinedSet = new HashSet();
+ combinedSet.addAll(aaiNameSet);
+ combinedSet.addAll(sdncNameSet);
+ if (combinedSet.size() != aaiNameSet.size()) {
+ errorReasons.add("PNF names don't match; aai names: ${aaiNameSet}, sdnc names: ${sdncNameSet}")
+ return new Tuple2(false, errorReasons)
+ }
+
+ return true
+
+ '''
+}
diff --git a/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml
index df62915b64..d8864e276f 100644
--- a/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml
+++ b/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml
@@ -85,14 +85,34 @@ spec:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # Filebeat sidecar container
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /opt/app/logs
+
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-pomba-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
- name: root-config-app-prop
configMap:
name: {{ include "common.fullname" . }}-root-config
defaultMode: 0644
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
- name: properties
configMap:
name: {{ include "common.fullname" . }}-config-properties
diff --git a/kubernetes/pomba/resources/config/log/filebeat/filebeat.yml b/kubernetes/pomba/resources/config/log/filebeat/filebeat.yml
index b0d4690754..768b1c59dc 100644
--- a/kubernetes/pomba/resources/config/log/filebeat/filebeat.yml
+++ b/kubernetes/pomba/resources/config/log/filebeat/filebeat.yml
@@ -3,9 +3,15 @@ filebeat.prospectors:
- input_type: log
#This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
paths:
+ - /opt/app/logs/EELF/*/*.log
+ - /opt/app/logs/EELF/*.log
- /var/log/onap/*/*/*/*.log
- /var/log/onap/*/*/*.log
- /var/log/onap/*/*.log
+ - /var/log/onap/*.log
+ - /logs/*/*.log
+ - /logs/*.log
+
#Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
ignore_older: 48h
# Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit