WIP: Add elastic-stack composite to treasuremap

This change adds a composite to treasuremap for deploying
Elasticsearch & Kibana, configured to work together out
of the box ?

Co-Authored-By: gs909v <graham.steffaniak@att.com>
Change-Id: I3668bb63e8d79030067b447a7809aedea94da5c4
This commit is contained in:
Steven Fitzpatrick 2021-01-21 22:22:12 +00:00 committed by Graham Steffaniak
parent 772b18afd9
commit 6a8207364a
12 changed files with 214 additions and 0 deletions

View File

@ -0,0 +1,13 @@
resources:
- elasticsearch-ingest
- elasticsearch-data
- ../../function/elasticsearch
- ../../function/kibana
namespace: lma-infra
patches:
- path: patches/kube-prometheus-stack.yaml
- path: patches/logging-operator.yaml
- path: patches/elasticsearch.yaml
- path: patches/kibana.yaml

View File

@ -0,0 +1,23 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: elasticsearch-data
spec:
releaseName: elasticsearch-data
values:
nodeGroup: "data"
masterService: elasticsearch-ingest
roles:
master: "false"
ingest: "false"
data: "true"
replicas: 1
resources:
requests:
cpu: "1m"
memory: "0.5Gi"
limits:
cpu: "1000m"
memory: "2Gi"
persistence:
enabled: false

View File

@ -0,0 +1,22 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: elasticsearch-ingest
spec:
releaseName: elasticsearch-ingest
values:
nodeGroup: "ingest"
roles:
master: "true"
ingest: "true"
data: "false"
replicas: 1
resources:
requests:
cpu: "1m"
memory: "0.5Gi"
limits:
cpu: "1000m"
memory: "2Gi"
persistence:
enabled: false

View File

@ -0,0 +1,51 @@
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
kind: HelmRelease
metadata:
name: elasticsearch
spec:
values:
clusterName: "elasticsearch-master"
roles:
master: "true"
ingest: "true"
data: "true"
remote_cluster_client: "true"
ml: "false"
replicas: 5
minimumMasterNodes: 2
esMajorVersion: ""
esJavaOpts: "-Xmx2g -Xms2g"
resources:
requests:
cpu: "1000m"
memory: "2Gi"
limits:
cpu: "1000m"
memory: "2Gi"
persistence:
enabled: true
labels:
# Add default labels for the volumeClaimTemplate of the StatefulSet
enabled: false
annotations: {}
extraVolumes: []
# - name: extras
# emptyDir: {}
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: chart-example.local
paths:
- path: /
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
nameOverride: ""
fullnameOverride: ""

View File

@ -0,0 +1,43 @@
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
kind: HelmRelease
metadata:
name: kibana
spec:
values:
conf:
create_kibana_indexes:
enabled: true
indexes:
base:
- "*-*"
application:
- "*airship"
default_index: "*-*"
elasticsearchHosts: "http://elasticsearch-master:9200"
replicas: 3
# Extra environment variables to append to this nodeGroup
# This will be appended to the current 'env:' key. You can use any of the kubernetes env
# syntax here
extraEnvs:
- name: "NODE_OPTIONS"
value: "--max-old-space-size=1800"
# additionals labels
labels: {}
resources:
enabled: true
apache_proxy:
limits:
memory: "1024Mi"
cpu: "2000m"
requests:
memory: "128Mi"
cpu: "100m"
kibana:
requests:
memory: "1024Mi"
cpu: "1000m"
limits:
memory: "4096Mi"
cpu: "2000m"
protocol: http
elasticsearchURL: "http://elasticsearch-master:9200"

View File

@ -0,0 +1,18 @@
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
kind: HelmRelease
metadata:
name: elasticsearch
spec:
releaseName: elasticsearch
interval: 5m
chart:
spec:
chart: elasticsearch
sourceRef:
kind: HelmRepository
name: elasticsearch
version: 7.10.2
interval: 1m
wait: false
timeout: 5m
values: {}

View File

@ -0,0 +1,7 @@
apiVersion: source.toolkit.fluxcd.io/v1beta1
kind: HelmRepository
metadata:
name: elasticsearch
spec:
url: https://helm.elastic.co/
interval: 10m

View File

@ -0,0 +1,3 @@
resources:
- helmrepository.yaml
- helmrelease.yaml

View File

@ -0,0 +1,18 @@
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
kind: HelmRelease
metadata:
name: kibana
spec:
releaseName: kibana
interval: 5m
chart:
spec:
chart: kibana
sourceRef:
kind: HelmRepository
name: kibana
version: 7.10.2
interval: 1m
wait: false
timeout: 5m
values: {}

View File

@ -0,0 +1,7 @@
apiVersion: source.toolkit.fluxcd.io/v1beta1
kind: HelmRepository
metadata:
name: kibana
spec:
url: https://helm.elastic.co/
interval: 10m

View File

@ -0,0 +1,3 @@
resources:
- helmrepository.yaml
- helmrelease.yaml

View File

@ -0,0 +1,6 @@
resources:
- ../../../../composite/monitoring-stack
- ../../../../composite/elastic-stack
- ../../../../composite/stateless-minio
namespace: lma-infra