[Champ] Update to use DMaaP with SSL
- Reconfigure event publisher in champ-beans.xml to use DMaaP client.
- Add property values to values.yaml file.
- Update JKS trust store (tomcat_keystore) to accept the DMaaP
certificate.
- Additionally, to align with other microservices, update
deployment.yaml to map logs to filebeat sidecar.
Change-Id: I37da421b1cbf03a85fa19dda1e38955b17fa56ca
Issue-ID: AAI-1597
Signed-off-by: Michael Arrastia <MArrasti@amdocs.com>
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
index 9eec841..c4c7271 100644
--- a/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
index 325982b..38fd64c 100644
--- a/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
+++ b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
@@ -24,11 +24,17 @@
http://www.springframework.org/schema/util/spring-util.xsd
">
- <!-- Event publisher to pass to the Champ library for logging raw graph
- events (Kafka implementation). -->
- <bean id="champEventPublisher" class="org.onap.aai.event.client.KafkaEventPublisher" >
- <constructor-arg name="hosts" value="message-router-kafka.{{.Release.Namespace}}:9092" />
- <constructor-arg name="topic" value="champRawEvents" />
+ <bean id="champEventPublisher" class="org.onap.aai.event.client.DMaaPEventPublisher" >
+ <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:{{.Values.event.port.dmaap}}" />
+ <constructor-arg name="topic" value="{{.Values.event.publisher.topic}}" />
+ <constructor-arg name="username" value="" />
+ <constructor-arg name="password" value="" />
+ <constructor-arg name="maxBatchSize" value="100" />
+ <constructor-arg name="maxAgeMs" value="250" />
+ <constructor-arg name="delayBetweenBatchesMs" value="50" />
+ <constructor-arg name="transportType" value="HTTPAUTH" />
+ <constructor-arg name="protocol" value="{{.Values.event.protocol}}" />
+ <constructor-arg name="contentType" value="application/json" />
</bean>
<!-- Graph Implementation Configuration-->
diff --git a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
index 0e2bb90..d2f7bca 100644
--- a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
@@ -31,23 +31,6 @@
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - aai-resources
- - --container-name
- - message-router-kafka
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -100,7 +83,7 @@
- mountPath: /opt/app/champ-service/bundleconfig/etc/logback.xml
name: {{ include "common.fullname" . }}-logback-config
subPath: logback.xml
- - mountPath: /logs
+ - mountPath: /var/log/onap
name: {{ include "common.fullname" . }}-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
@@ -113,6 +96,19 @@
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # side car containers
+ - name: filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ name: filebeat-conf
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /usr/share/filebeat/data
+ name: aai-filebeat
+
volumes:
- name: localtime
hostPath:
@@ -140,5 +136,10 @@
items:
- key: logback.xml
path: logback.xml
+ - name: filebeat-conf
+ configMap:
+ name: aai-filebeat
+ - name: aai-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-champ/values.yaml b/kubernetes/aai/charts/aai-champ/values.yaml
index c59a9b3..a6435dd 100644
--- a/kubernetes/aai/charts/aai-champ/values.yaml
+++ b/kubernetes/aai/charts/aai-champ/values.yaml
@@ -61,3 +61,11 @@
enabled: false
resources: {}
+
+# XML beans configuration
+event:
+ port:
+ dmaap: 3905
+ protocol: https
+ publisher:
+ topic: champRawEvents