diff options
Diffstat (limited to 'kubernetes/multicloud')
13 files changed, 421 insertions, 27 deletions
diff --git a/kubernetes/multicloud/Chart.yaml b/kubernetes/multicloud/Chart.yaml index da92f90f48..4f9a154880 100644 --- a/kubernetes/multicloud/Chart.yaml +++ b/kubernetes/multicloud/Chart.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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 description: A Helm chart for Kubernetes name: multicloud diff --git a/kubernetes/multicloud/resources/config/log/filebeat/filebeat.yml b/kubernetes/multicloud/resources/config/log/filebeat/filebeat.yml new file mode 100644 index 0000000000..a6dd579b4b --- /dev/null +++ b/kubernetes/multicloud/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: 24h + # 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: 48h + + +# 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: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"] + #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/multicloud/resources/config/log/framework/log.yml b/kubernetes/multicloud/resources/config/log/framework/log.yml new file mode 100644 index 0000000000..f54887144a --- /dev/null +++ b/kubernetes/multicloud/resources/config/log/framework/log.yml @@ -0,0 +1,24 @@ +version: 1 +disable_existing_loggers: False + +loggers: + multivimbroker: + handlers: [multivimbroker_handler] + level: "DEBUG" + propagate: False +handlers: + multivimbroker_handler: + level: "DEBUG" + class: "logging.handlers.RotatingFileHandler" + filename: "/var/log/onap/multicloud/multivimbroker/multivimbroker.log" + formatter: "mdcFormat" + maxBytes: 52428800 + backupCount: 10 +formatters: + standard: + format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s" + mdcFormat: + format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t" + mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}" + datefmt: "%Y-%m-%d %H:%M:%S" + (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file diff --git a/kubernetes/multicloud/resources/config/log/ocata/log.yml b/kubernetes/multicloud/resources/config/log/ocata/log.yml new file mode 100644 index 0000000000..ef71b907c8 --- /dev/null +++ b/kubernetes/multicloud/resources/config/log/ocata/log.yml @@ -0,0 +1,34 @@ +version: 1 +disable_existing_loggers: False + +loggers: + ocata: + handlers: [ocata_handler] + level: "DEBUG" + propagate: False + newton_base: + handlers: [ocata_handler] + level: "DEBUG" + propagate: False + common: + handlers: [ocata_handler] + level: "DEBUG" + propagate: False + +handlers: + ocata_handler: + level: "DEBUG" + class: "logging.handlers.RotatingFileHandler" + filename: "/var/log/onap/multicloud/openstack/ocata/ocata.log" + formatter: "mdcFormat" + maxBytes: 1024*1024*50 + backupCount: 10 + +formatters: + standard: + format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s" + mdcFormat: + format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s" + mdcfmt: "{requestID}" + datefmt: "%Y-%m-%d %H:%M:%S" + (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file diff --git a/kubernetes/multicloud/resources/config/log/vio/log.yml b/kubernetes/multicloud/resources/config/log/vio/log.yml new file mode 100644 index 0000000000..91654645c8 --- /dev/null +++ b/kubernetes/multicloud/resources/config/log/vio/log.yml @@ -0,0 +1,24 @@ +version: 1 +disable_existing_loggers: False + +loggers: + vio: + handlers: [vio_handler] + level: "DEBUG" + propagate: False +handlers: + vio_handler: + level: "DEBUG" + class: "logging.handlers.RotatingFileHandler" + filename: "/var/log/onap/multicloud/vio/vio.log" + formatter: "mdcFormat" + maxBytes: 52428800 + backupCount: 10 +formatters: + standard: + format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s" + mdcFormat: + format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t" + mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}" + datefmt: "%Y-%m-%d %H:%M:%S" + (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file diff --git a/kubernetes/multicloud/resources/config/log/windriver/log.yml b/kubernetes/multicloud/resources/config/log/windriver/log.yml new file mode 100644 index 0000000000..8e2c5c25f9 --- /dev/null +++ b/kubernetes/multicloud/resources/config/log/windriver/log.yml @@ -0,0 +1,34 @@ +version: 1 +disable_existing_loggers: False + +loggers: + titanium_cloud: + handlers: [titanium_cloud_handler] + level: "DEBUG" + propagate: False + newton_base: + handlers: [titanium_cloud_handler] + level: "DEBUG" + propagate: False + common: + handlers: [titanium_cloud_handler] + level: "DEBUG" + propagate: False + +handlers: + titanium_cloud_handler: + level: "DEBUG" + class: "logging.handlers.RotatingFileHandler" + filename: "/var/log/onap/multicloud/openstack/windriver/titanium_cloud.log" + formatter: "mdcFormat" + maxBytes: 1024*1024*50 + backupCount: 10 + +formatters: + standard: + format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s" + mdcFormat: + format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s" + mdcfmt: "{requestID}" + datefmt: "%Y-%m-%d %H:%M:%S" + (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file diff --git a/kubernetes/multicloud/templates/all-services.yaml b/kubernetes/multicloud/templates/all-services.yaml index 58e67e03d1..c58cd7486e 100644 --- a/kubernetes/multicloud/templates/all-services.yaml +++ b/kubernetes/multicloud/templates/all-services.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + #{{ if not .Values.disableMulticloudFramework }} apiVersion: v1 kind: Service diff --git a/kubernetes/multicloud/templates/framework-deployment.yaml b/kubernetes/multicloud/templates/framework-deployment.yaml index 4f96fbf457..b2f0440263 100644 --- a/kubernetes/multicloud/templates/framework-deployment.yaml +++ b/kubernetes/multicloud/templates/framework-deployment.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + #{{ if not .Values.disableMulticloudFramework }} apiVersion: extensions/v1beta1 kind: Deployment @@ -15,7 +29,6 @@ spec: app: framework name: multicloud-framework spec: - hostname: framework containers: - env: - name: MSB_ADDR @@ -32,12 +45,15 @@ spec: value: "AAI" - name: AAI_PASSWORD value: "AAI" + image: {{ .Values.image.framework }} + imagePullPolicy: {{ .Values.pullPolicy }} name: framework volumeMounts: - - mountPath: /service/multivimbroker/logs + - mountPath: /var/log/onap name: framework-log - image: {{ .Values.image.framework }} - imagePullPolicy: {{ .Values.pullPolicy }} + - mountPath: /opt/multivimbroker/multivimbroker/pub/config/log.yml + name: framework-logconfig + subPath: log.yml ports: - containerPort: 9001 livenessProbe: @@ -50,11 +66,29 @@ spec: timeoutSeconds: 10 successThreshold: 1 failureThreshold: 5 - restartPolicy: Always + - image: {{ .Values.image.filebeat }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: filebeat-onap + volumeMounts: + - mountPath: /usr/share/filebeat/filebeat.yml + name: filebeat-conf + subPath: filebeat.yml + - mountPath: /var/log/onap + name: framework-log + - mountPath: /usr/share/filebeat/data + name: framework-data-filebeat volumes: - name: framework-log - hostPath: - path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/multicloud/framework/logs + emptyDir: {} + - name: framework-data-filebeat + emptyDir: {} + - name: filebeat-conf + configMap: + name: multicloud-filebeat-configmap + - name: framework-logconfig + configMap: + name: multicloud-framework-log-configmap imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" + restartPolicy: Always #{{ end }} diff --git a/kubernetes/multicloud/templates/multicloud-log-configmap.yaml b/kubernetes/multicloud/templates/multicloud-log-configmap.yaml new file mode 100644 index 0000000000..1050f1061e --- /dev/null +++ b/kubernetes/multicloud/templates/multicloud-log-configmap.yaml @@ -0,0 +1,55 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + +#{{ if not .Values.disableVidVidServer }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: multicloud-filebeat-configmap + namespace: {{ .Values.nsPrefix }} +data: +{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: multicloud-framework-log-configmap + namespace: {{ .Values.nsPrefix }} +data: +{{ tpl (.Files.Glob "resources/config/log/framework/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: multicloud-vio-log-configmap + namespace: {{ .Values.nsPrefix }} +data: +{{ tpl (.Files.Glob "resources/config/log/vio/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: multicloud-ocata-log-configmap + namespace: {{ .Values.nsPrefix }} +data: +{{ tpl (.Files.Glob "resources/config/log/ocata/*").AsConfig . | indent 2 }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: multicloud-windriver-log-configmap + namespace: {{ .Values.nsPrefix }} +data: +{{ tpl (.Files.Glob "resources/config/log/windriver/*").AsConfig . | indent 2 }} +#{{ end }} diff --git a/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml b/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml index 072b3d9e7e..ecbd74b067 100644 --- a/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml +++ b/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + #{{ if not .Values.disableMulticloudMulticloudOcata }} apiVersion: extensions/v1beta1 kind: Deployment @@ -15,7 +29,6 @@ spec: app: multicloud-ocata name: multicloud-ocata spec: - hostname: multicloud-ocata containers: - env: - name: MSB_ADDR @@ -34,8 +47,11 @@ spec: value: "AAI" name: multicloud-ocata volumeMounts: - - mountPath: /opt/ocata/logs + - mountPath: /var/log/onap name: ocata-log + - mountPath: /opt/ocata/ocata/pub/config/log.yml + name: ocata-logconfig + subPath: log.yml image: {{ .Values.image.ocata }} imagePullPolicy: {{ .Values.pullPolicy }} ports: @@ -50,11 +66,29 @@ spec: timeoutSeconds: 10 successThreshold: 1 failureThreshold: 5 - restartPolicy: Always + - image: {{ .Values.image.filebeat }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: filebeat-onap + volumeMounts: + - mountPath: /usr/share/filebeat/filebeat.yml + name: filebeat-conf + subPath: filebeat.yml + - mountPath: /var/log/onap + name: ocata-log + - mountPath: /usr/share/filebeat/data + name: ocata-data-filebeat volumes: - name: ocata-log - hostPath: - path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/multicloud/ocata/logs + emptyDir: {} + - name: ocata-data-filebeat + emptyDir: {} + - name: filebeat-conf + configMap: + name: multicloud-filebeat-configmap + - name: ocata-logconfig + configMap: + name: multicloud-ocata-log-configmap imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" + restartPolicy: Always #{{ end }} diff --git a/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml b/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml index 7919bc89f5..e15108116d 100644 --- a/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml +++ b/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + #{{ if not .Values.disableMulticloudMulticloudVio }} apiVersion: extensions/v1beta1 kind: Deployment @@ -15,7 +29,6 @@ spec: app: multicloud-vio name: multicloud-vio spec: - hostname: multicloud-vio containers: - env: - name: MSB_ADDR @@ -34,8 +47,11 @@ spec: value: "AAI" name: multicloud-vio volumeMounts: - - mountPath: /service/vio/logs + - mountPath: /var/log/onap name: vio-log + - mountPath: /opt/vio/vio/pub/config/log.yml + name: vio-logconfig + subPath: log.yml image: {{ .Values.image.vio }} imagePullPolicy: {{ .Values.pullPolicy }} ports: @@ -50,11 +66,29 @@ spec: timeoutSeconds: 10 successThreshold: 1 failureThreshold: 5 - restartPolicy: Always + - image: {{ .Values.image.filebeat }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: filebeat-onap + volumeMounts: + - mountPath: /usr/share/filebeat/filebeat.yml + name: filebeat-conf + subPath: filebeat.yml + - mountPath: /var/log/onap + name: vio-log + - mountPath: /usr/share/filebeat/data + name: vio-data-filebeat volumes: - name: vio-log - hostPath: - path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/multicloud/vio/logs + emptyDir: {} + - name: vio-data-filebeat + emptyDir: {} + - name: filebeat-conf + configMap: + name: multicloud-filebeat-configmap + - name: vio-logconfig + configMap: + name: multicloud-vio-log-configmap imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" + restartPolicy: Always #{{ end }} diff --git a/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml b/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml index 168d1d611e..c1b385865b 100644 --- a/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml +++ b/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + #{{ if not .Values.disableMulticloudMulticloudWindriver }} apiVersion: extensions/v1beta1 kind: Deployment @@ -15,7 +29,6 @@ spec: app: multicloud-windriver name: multicloud-windriver spec: - hostname: multicloud-windriver containers: - env: - name: MSB_ADDR @@ -34,8 +47,11 @@ spec: value: "AAI" name: multicloud-windriver volumeMounts: - - mountPath: /opt/windriver/logs + - mountPath: /var/log/onap name: windriver-log + - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml + name: windriver-logconfig + subPath: log.yml image: {{ .Values.image.windriver }} imagePullPolicy: {{ .Values.pullPolicy }} ports: @@ -50,11 +66,29 @@ spec: timeoutSeconds: 10 successThreshold: 1 failureThreshold: 5 - restartPolicy: Always + - image: {{ .Values.image.filebeat }} + imagePullPolicy: {{ .Values.pullPolicy }} + name: filebeat-onap + volumeMounts: + - mountPath: /usr/share/filebeat/filebeat.yml + name: filebeat-conf + subPath: filebeat.yml + - mountPath: /var/log/onap + name: windriver-log + - mountPath: /usr/share/filebeat/data + name: windriver-data-filebeat volumes: - name: windriver-log - hostPath: - path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/multicloud/windriver/logs + emptyDir: {} + - name: windriver-data-filebeat + emptyDir: {} + - name: filebeat-conf + configMap: + name: multicloud-filebeat-configmap + - name: windriver-logconfig + configMap: + name: multicloud-windriver-log-configmap imagePullSecrets: - name: "{{ .Values.nsPrefix }}-docker-registry-key" + restartPolicy: Always #{{ end }} diff --git a/kubernetes/multicloud/values.yaml b/kubernetes/multicloud/values.yaml index a903bae1c3..d43ee61343 100644 --- a/kubernetes/multicloud/values.yaml +++ b/kubernetes/multicloud/values.yaml @@ -1,3 +1,17 @@ +# Copyright © 2017 Amdocs, Bell Canada +# +# 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. + nsPrefix: onap pullPolicy: Always nodePortPrefix: 302 @@ -8,11 +22,15 @@ vioReplicas: 1 windRiverReplicas: 1 image: readiness: oomk8s/readiness-check:1.1.0 - framework: nexus3.onap.org:10001/onap/multicloud/framework:v1.0.0 - vio: nexus3.onap.org:10001/onap/multicloud/vio:v1.0.0 - ocata: nexus3.onap.org:10001/onap/multicloud/openstack-ocata:v1.0.0 - windriver: nexus3.onap.org:10001/onap/multicloud/openstack-windriver:v1.0.0 - + framework: nexus3.onap.org:10001/onap/multicloud/framework:latest + vio: nexus3.onap.org:10001/onap/multicloud/vio:latest + ocata: nexus3.onap.org:10001/onap/multicloud/openstack-ocata:latest + windriver: nexus3.onap.org:10001/onap/multicloud/openstack-windriver:latest + filebeat: docker.elastic.co/beats/filebeat:5.5.0 # domain name of msb gateway msbgateway: msb-iag.{{ .Values.nsPrefix }} msbPort: 80 + +config: + logstashServiceName: log-ls + logstashPort: 5044 |