diff options
author | rui hu <hu.rui2@zte.com.cn> | 2018-04-10 08:32:43 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2018-04-10 08:32:43 +0000 |
commit | dbd58e9b93d22887be02f17ea99370f140c390e9 (patch) | |
tree | 53a7fb88aab808b14ec1aff111162bd7c0b0cfb9 | |
parent | cdda4e20f3904dcb193625350c91d596a0bc4197 (diff) | |
parent | 4dd8e1197468f6ee883398006e92dc9e17dae21a (diff) |
Merge "Add a filebeat container to each service of MSB"
14 files changed, 272 insertions, 0 deletions
diff --git a/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml new file mode 100644 index 0000000000..33775962b7 --- /dev/null +++ b/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="discovery" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml b/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml new file mode 100644 index 0000000000..97c720a6ab --- /dev/null +++ b/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "common.fullname" . }} + namespace: {{ include "common.namespace" . }} +data: +{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }} diff --git a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml index 0fb2cc6604..b2660052dd 100644 --- a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml +++ b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml @@ -58,6 +58,8 @@ spec: - mountPath: /etc/localtime name: localtime readOnly: true + - mountPath: /usr/local/discover-works/logs + name: msb-discovery-logs resources: {{ toYaml .Values.resources | indent 12 }} {{- if .Values.nodeSelector }} @@ -68,9 +70,23 @@ spec: affinity: {{ 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: /var/log/onap + name: msb-discovery-logs + - mountPath: /usr/share/filebeat/data + name: msb-discovery-filebeat volumes: - name: localtime hostPath: path: /etc/localtime + - name: msb-discovery-logs + emptyDir: {} + - name: msb-discovery-filebeat + emptyDir: {} imagePullSecrets: - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml new file mode 100644 index 0000000000..33775962b7 --- /dev/null +++ b/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="discovery" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/charts/msb-eag/templates/configmap.yaml b/kubernetes/msb/charts/msb-eag/templates/configmap.yaml new file mode 100644 index 0000000000..97c720a6ab --- /dev/null +++ b/kubernetes/msb/charts/msb-eag/templates/configmap.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "common.fullname" . }} + namespace: {{ include "common.namespace" . }} +data: +{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }} diff --git a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml index 2df82aca59..7ca8a8e203 100644 --- a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml +++ b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml @@ -65,6 +65,8 @@ spec: - mountPath: /etc/localtime name: localtime readOnly: true + - mountPath: /usr/local/apiroute-works/logs + name: msb-discovery-logs resources: {{ toYaml .Values.resources | indent 12 }} {{- if .Values.nodeSelector }} @@ -75,9 +77,22 @@ spec: affinity: {{ 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: /var/log/onap + name: msb-discovery-logs + - mountPath: /usr/share/filebeat/data + name: msb-discovery-filebeat volumes: - name: localtime hostPath: path: /etc/localtime + - name: msb-discovery-logs + emptyDir: {} + - name: msb-discovery-filebeat + emptyDir: {} imagePullSecrets: - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml new file mode 100644 index 0000000000..33775962b7 --- /dev/null +++ b/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="discovery" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/charts/msb-iag/templates/configmap.yaml b/kubernetes/msb/charts/msb-iag/templates/configmap.yaml new file mode 100644 index 0000000000..97c720a6ab --- /dev/null +++ b/kubernetes/msb/charts/msb-iag/templates/configmap.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "common.fullname" . }} + namespace: {{ include "common.namespace" . }} +data: +{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }} diff --git a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml index 2df82aca59..7ca8a8e203 100644 --- a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml +++ b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml @@ -65,6 +65,8 @@ spec: - mountPath: /etc/localtime name: localtime readOnly: true + - mountPath: /usr/local/apiroute-works/logs + name: msb-discovery-logs resources: {{ toYaml .Values.resources | indent 12 }} {{- if .Values.nodeSelector }} @@ -75,9 +77,22 @@ spec: affinity: {{ 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: /var/log/onap + name: msb-discovery-logs + - mountPath: /usr/share/filebeat/data + name: msb-discovery-filebeat volumes: - name: localtime hostPath: path: /etc/localtime + - name: msb-discovery-logs + emptyDir: {} + - name: msb-discovery-filebeat + emptyDir: {} imagePullSecrets: - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/msb/resources/config/log/discovery/logback.xml b/kubernetes/msb/resources/config/log/discovery/logback.xml new file mode 100644 index 0000000000..33775962b7 --- /dev/null +++ b/kubernetes/msb/resources/config/log/discovery/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="discovery" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/resources/config/log/eag/logback.xml b/kubernetes/msb/resources/config/log/eag/logback.xml new file mode 100644 index 0000000000..dafba4b5d4 --- /dev/null +++ b/kubernetes/msb/resources/config/log/eag/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="eag" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/resources/config/log/filebeat/filebeat.yml b/kubernetes/msb/resources/config/log/filebeat/filebeat.yml new file mode 100644 index 0000000000..89c6932577 --- /dev/null +++ b/kubernetes/msb/resources/config/log/filebeat/filebeat.yml @@ -0,0 +1,41 @@ +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 + #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 + + +# 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.{{.Values.nsPrefix}}: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/msb/resources/config/log/iag/logback.xml b/kubernetes/msb/resources/config/log/iag/logback.xml new file mode 100644 index 0000000000..f841859592 --- /dev/null +++ b/kubernetes/msb/resources/config/log/iag/logback.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration debug="true" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- specify the base path of the log directory --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name --> + <property name="componentName" value="msb" /> + <!-- specify the sub component name --> + <property name="subComponentName" value="iag" /> + <!-- The directories where logs are written --> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" /> + <!-- log file names --> + <property name="errorLogName" value="error" /> + <property name="metricsLogName" value="metrics" /> + <property name="auditLogName" value="audit" /> + <property name="debugLogName" value="debug" /> + <property name="queueSize" value="256" /> + <property name="maxFileSize" value="50MB" /> + <property name="maxHistory" value="30" /> + <property name="totalSizeCap" value="10GB" /> + <!-- Example evaluator filter applied against console appender --> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <encoder> + <pattern>${pattern}</pattern> + </encoder> + </appender>
\ No newline at end of file diff --git a/kubernetes/msb/values.yaml b/kubernetes/msb/values.yaml index 49e5196e41..2a0dbe2ffa 100644 --- a/kubernetes/msb/values.yaml +++ b/kubernetes/msb/values.yaml @@ -18,3 +18,5 @@ global: nodePortPrefix: 302 repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ== + loggingRepository: docker.elastic.co + loggingImage: beats/filebeat:5.5.0 |