# Copyright 2020 Adarsh yadav # # 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: apps/v1 kind: Deployment metadata: name: elastalert spec: replicas: 1 selector: matchLabels: run: elastalert template: metadata: labels: run: elastalert spec: volumes: - name: econfig configMap: name: elastalert-config items: - key: elastalert.yaml path: elastalert.yaml - name: erule configMap: name: elastalert-rule items: - key: rule-node4-vswitch.yaml path: rule-node4-vswitch.yaml - key: rule-node4-blacklist.yaml path: rule-node4-blacklist.yaml - key: rule-node1-blacklist.yaml path: rule-node1-blacklist.yaml - name: ekey configMap: name: elastalert-key items: - key: elastalert.key path: elastalert.key - key: elastalert.pem path: elastalert.pem initContainers: - name: init-myservice image: busybox:1.28 command: ['sh', '-c', 'until nslookup logging-es-http; do echo "waiting for myservice"; sleep 2; done;'] containers: - name: elastalert image: adi0509/elastalert:latest env: - name: ES_USERNAME value: "elastic" - name: ES_PASSWORD valueFrom: secretKeyRef: name: logging-es-elastic-user key: elastic command: [ "sh", "-c"] args: ["elastalert-create-index --config /opt/elastalert/elastalert.yaml; python -m elastalert.elastalert --config /opt/elastalert/elastalert.yaml"] volumeMounts: - mountPath: /opt/elastalert/ name: econfig - mountPath: /opt/elastalert/rules/ name: erule - mountPath: /opt/elastalert/key name: ekey