From eea1d3ec1680d1ef203840986962f6535736ae38 Mon Sep 17 00:00:00 2001 From: mayankg2703 Date: Tue, 16 Jan 2018 05:27:01 +0000 Subject: [PATCH] sdnc stateful config seg Issue-ID: OOM-551 Change-Id: I5f0929f09b52cba4f8d4c0d1aabaa555349933a1 Signed-off-by: mayankg2703 --- .../resources/config}/conf/aaiclient.properties | 0 .../resources/config}/conf/admportal.json | 0 .../config/log/filebeat/log4j/filebeat.yml | 49 ++++++++++++++++++++++ .../config/log}/org.ops4j.pax.logging.cfg | 0 kubernetes/sdnc/templates/sdnc-conf-configmap.yaml | 9 ++++ kubernetes/sdnc/templates/sdnc-log-configmap.yaml | 17 ++++++++ kubernetes/sdnc/templates/sdnc-statefulset.yaml | 38 ++++++++++------- 7 files changed, 98 insertions(+), 15 deletions(-) rename kubernetes/{config/docker/init/src/config/sdnc => sdnc/resources/config}/conf/aaiclient.properties (100%) rename kubernetes/{config/docker/init/src/config/sdnc => sdnc/resources/config}/conf/admportal.json (100%) create mode 100644 kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml rename kubernetes/{config/docker/init/src/config/log/sdnc => sdnc/resources/config/log}/org.ops4j.pax.logging.cfg (100%) create mode 100644 kubernetes/sdnc/templates/sdnc-conf-configmap.yaml create mode 100644 kubernetes/sdnc/templates/sdnc-log-configmap.yaml diff --git a/kubernetes/config/docker/init/src/config/sdnc/conf/aaiclient.properties b/kubernetes/sdnc/resources/config/conf/aaiclient.properties similarity index 100% rename from kubernetes/config/docker/init/src/config/sdnc/conf/aaiclient.properties rename to kubernetes/sdnc/resources/config/conf/aaiclient.properties diff --git a/kubernetes/config/docker/init/src/config/sdnc/conf/admportal.json b/kubernetes/sdnc/resources/config/conf/admportal.json similarity index 100% rename from kubernetes/config/docker/init/src/config/sdnc/conf/admportal.json rename to kubernetes/sdnc/resources/config/conf/admportal.json diff --git a/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml b/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml new file mode 100644 index 0000000000..79c9a08a79 --- /dev/null +++ b/kubernetes/sdnc/resources/config/log/filebeat/log4j/filebeat.yml @@ -0,0 +1,49 @@ +filebeat.prospectors: +#it is mandatory, in our case it's log +- input_type: log + #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory. + paths: + - /var/log/onap/*/*/*/*.log + - /var/log/onap/*/*/*.log + - /var/log/onap/*/*.log + + # The below commented properties are for time-based rolling policy. But as the log4j 1.2x does not support time-based rolling these properties are not set + #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 + #clean_inactive: 96h + + #Multiline properties for log4j xml log events + multiline.pattern: '' + multiline.negate: true + multiline.match: before + #multiline.max_lines: 500 + #multiline.timeout: 5s + +# Name of the registry file. If a relative path is used, it is considered relative to the +# data path. Else full qualified file name. +#filebeat.registry_file: ${path.data}/registry + + +output.logstash: + #List of logstash server ip addresses with port number. + #But, in our case, this will be the loadbalancer IP address. + #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately. + hosts: ["logstash.onap-log:5044"] + #If enable will do load balancing among availabe Logstash, automatically. + loadbalance: true + + #The list of root certificates for server verifications. + #If certificate_authorities is empty or not set, the trusted + #certificate authorities of the host system are used. + #ssl.certificate_authorities: $ssl.certificate_authorities + + #The path to the certificate for SSL client authentication. If the certificate is not specified, + #client authentication is not available. + #ssl.certificate: $ssl.certificate + + #The client certificate key used for client authentication. + #ssl.key: $ssl.key + + #The passphrase used to decrypt an encrypted key stored in the configured key file + #ssl.key_passphrase: $ssl.key_passphrase diff --git a/kubernetes/config/docker/init/src/config/log/sdnc/org.ops4j.pax.logging.cfg b/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg similarity index 100% rename from kubernetes/config/docker/init/src/config/log/sdnc/org.ops4j.pax.logging.cfg rename to kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg diff --git a/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml b/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml new file mode 100644 index 0000000000..e7cde3b69f --- /dev/null +++ b/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml @@ -0,0 +1,9 @@ +#{{ if not .Values.disableSdncSdnc }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-conf-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }} +#{{ end }} diff --git a/kubernetes/sdnc/templates/sdnc-log-configmap.yaml b/kubernetes/sdnc/templates/sdnc-log-configmap.yaml new file mode 100644 index 0000000000..d13daacb89 --- /dev/null +++ b/kubernetes/sdnc/templates/sdnc-log-configmap.yaml @@ -0,0 +1,17 @@ +#{{ if not .Values.disableSdncSdnc }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-log-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: sdnc-logging-cfg-configmap + namespace: {{ .Values.nsPrefix }}-sdnc +data: +{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }} +#{{ end }} diff --git a/kubernetes/sdnc/templates/sdnc-statefulset.yaml b/kubernetes/sdnc/templates/sdnc-statefulset.yaml index 3ba37af197..02950ba4c6 100644 --- a/kubernetes/sdnc/templates/sdnc-statefulset.yaml +++ b/kubernetes/sdnc/templates/sdnc-statefulset.yaml @@ -56,14 +56,17 @@ spec: - mountPath: /etc/localtime name: localtime readOnly: true - - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties - name: sdnc-aaiclient-properties - mountPath: /opt/onap/sdnc/data/properties/admportal.json - name: sdnc-admportal-json + name: sdnc-conf + subPath: admportal.json + - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties + name: sdnc-conf + subPath: aaiclient.properties - mountPath: /var/log/onap name: sdnc-logs - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg - name: sdnc-log-config + name: sdnc-logging-cfg-config + subPath: org.ops4j.pax.logging.cfg ports: - containerPort: 8181 - containerPort: 8101 @@ -80,6 +83,7 @@ spec: volumeMounts: - mountPath: /usr/share/filebeat/filebeat.yml name: filebeat-conf + subPath: filebeat.yml - mountPath: /var/log/onap name: sdnc-logs - mountPath: /usr/share/filebeat/data @@ -89,21 +93,25 @@ spec: hostPath: path: /etc/localtime - name: filebeat-conf - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/filebeat/log4j/filebeat.yml - - name: sdnc-log-config - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/sdnc/org.ops4j.pax.logging.cfg + configMap: + name: sdnc-log-configmap + - name: sdnc-logging-cfg-config + configMap: + name: sdnc-logging-cfg-configmap - name: sdnc-logs emptyDir: {} - name: sdnc-data-filebeat emptyDir: {} - - name: sdnc-aaiclient-properties - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/aaiclient.properties - - name: sdnc-admportal-json - hostPath: - path: /dockerdata-nfs/{{ .Values.nsPrefix }}/sdnc/conf/admportal.json + - name: sdnc-conf + configMap: + name: sdnc-conf-configmap + items: + - key: admportal.json + path: admportal.json + mode: 0755 + - key: aaiclient.properties + path: aaiclient.properties + mode: 0755 imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" #{{ end }} -- 2.16.6