aboutsummaryrefslogtreecommitdiffstats
path: root/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates
diff options
context:
space:
mode:
authorMichael O'Brien <frank.obrien@amdocs.com>2018-07-23 10:07:49 -0400
committerMichael O'Brien <frank.obrien@amdocs.com>2018-07-30 17:05:31 -0400
commit396402cdd65c3f1a5b1fe2ab7fc0dd62f9dc35bd (patch)
treedf15f46731eca7299f4be2204272c1c2600e5177 /reference/logging-kubernetes/logdemonode/charts/logdemonode/templates
parent268e848b1494dc09d614d8479f70bf9aefa69166 (diff)
add filebeat to k8s log demo
Change-Id: I1c229a9e5f7c9379d8d9f9fdf724908f083925d9 Issue-ID: LOG-137 Signed-off-by: Michael O'Brien <frank.obrien@amdocs.com>
Diffstat (limited to 'reference/logging-kubernetes/logdemonode/charts/logdemonode/templates')
-rw-r--r--reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/configmap.yaml30
-rw-r--r--reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/deployment.yaml118
-rw-r--r--reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/service.yaml53
3 files changed, 201 insertions, 0 deletions
diff --git a/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/configmap.yaml b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/configmap.yaml
new file mode 100644
index 0000000..3f60531
--- /dev/null
+++ b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/configmap.yaml
@@ -0,0 +1,30 @@
+# 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: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-logback-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
+
diff --git a/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/deployment.yaml b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/deployment.yaml
new file mode 100644
index 0000000..58ce5f7
--- /dev/null
+++ b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/deployment.yaml
@@ -0,0 +1,118 @@
+# 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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+#Example init container for dependency checking
+ containers:
+ # side car 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: /var/log/onap
+
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# args:
+# - "-Dcom.att.eelf.logging.file=file:/opt/logdemonode/logback.xml"
+# - ""
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+#Example environment variable passed to container
+# - name: DEBUG_FLAG
+# value: {{ .Values.global.debugEnabled | default .Values.debugEnabled | quote }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logs-config
+ mountPath: /opt/logback.xml
+ subPath: logback.xml
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+#Example config file mount into container
+# - mountPath: /opt/app/application.properties
+# name: {{ include "common.name" . }}-config
+# subPath: application.properties
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+#Example config file mount into container
+ - name: {{ include "common.fullname" . }}-logs-config
+ configMap:
+ name: {{ include "common.fullname" . }}-logback-configmap
+ items:
+ - key: logback.xml
+ path: logback.xml
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/service.yaml b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/service.yaml
new file mode 100644
index 0000000..e77f3b3
--- /dev/null
+++ b/reference/logging-kubernetes/logdemonode/charts/logdemonode/templates/service.yaml
@@ -0,0 +1,53 @@
+# 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
+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 }}
+ annotations:
+# Example MSB registration annotation
+# msb.onap.org/service-info: '[
+# {
+# "serviceName": "so",
+# "version": "v1",
+# "url": "/ecomp/mso/infra",
+# "protocol": "REST"
+# "port": "8080",
+# "visualRange":"1"
+# }
+# ]'
+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 }}