Skip to content

Commit c99d912

Browse files
committed
Initial ES Running on Cluster for Logging
1 parent cfef293 commit c99d912

File tree

2 files changed

+109
-0
lines changed

2 files changed

+109
-0
lines changed

k8s/observability/es/README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Elastic-stack Helm Chart
2+
3+
This chart installs an elasticsearch cluster with kibana and logstash by default.
4+
You can optionally disable logstash and install Fluentd if you prefer. It also optionally installs filebeat, nginx-ldapauth-proxy and elasticsearch-curator.
5+
6+
## Prerequisites Details
7+
8+
* Kubernetes 1.8+
9+
* PV dynamic provisioning support on the underlying infrastructure
10+
11+
## Chart Details
12+
This chart will do the following:
13+
14+
* Implemented a dynamically scalable elasticsearch cluster using Kubernetes StatefulSets/Deployments
15+
* Multi-role deployment: master, client (coordinating) and data nodes
16+
* Statefulset Supports scaling down without degrading the cluster
17+
18+
## Installing the Chart
19+
20+
To install the chart with the release name `my-release`:
21+
22+
```bash
23+
$ helm install --name my-release stable/elastic-stack
24+
```
25+
26+
## Deleting the Charts
27+
28+
Delete the Helm deployment as normal
29+
30+
```
31+
$ helm delete my-release
32+
```
33+
34+
Deletion of the StatefulSet doesn't cascade to deleting associated PVCs. To delete them:
35+
36+
```
37+
$ kubectl delete pvc -l release=my-release,component=data
38+
```
39+
40+
## Configuration
41+
42+
Each requirement is configured with the options provided by that Chart.
43+
Please consult the relevant charts for their configuration options.

k8s/observability/es/values.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Default values for elk.
2+
# This is a YAML-formatted file.
3+
# Declare variables to be passed into your templates.
4+
elasticsearch:
5+
enabled: true
6+
7+
kibana:
8+
enabled: true
9+
env:
10+
ELASTICSEARCH_HOSTS: http://{{ .Release.Name }}-elasticsearch-client:9200
11+
12+
logstash:
13+
enabled: false
14+
# elasticsearch:
15+
# host: elastic-stack-elasticsearch-client
16+
17+
filebeat:
18+
enabled: false
19+
# config:
20+
# output.file.enabled: false
21+
# output.logstash:
22+
# hosts: ["elastic-stack-logstash:5044"]
23+
# indexTemplateLoad:
24+
# - elastic-stack-elasticsearch-client:9200
25+
26+
fluentd:
27+
enabled: true
28+
29+
fluent-bit:
30+
enabled: true
31+
32+
fluentd-elasticsearch:
33+
enabled: true
34+
35+
nginx-ldapauth-proxy:
36+
enabled: false
37+
# Example config to get it working with ELK. Adjust as you need to.
38+
# proxy:
39+
# port: 5601
40+
# # This is the internal hostname for the kibana service
41+
# host: "elk-kibana.default.svc.cluster.local"
42+
# authName: "ELK:Infrastructure:LDAP"
43+
# ldapHost: "ldap.example.com"
44+
# ldapDN: "dc=example,dc=com"
45+
# ldapFilter: "objectClass=organizationalPerson"
46+
# ldapBindDN: "cn=reader,dc=example,dc=com"
47+
# requires:
48+
# - name: "ELK-USER"
49+
# filter: "cn=elkuser,ou=groups,dc=example,dc=com"
50+
# ingress:
51+
# enabled: true
52+
# hosts:
53+
# - "elk.example.com"
54+
# annotations:
55+
# kubernetes.io/ingress.class: nginx
56+
# tls:
57+
# - hosts:
58+
# - elk.example.com
59+
# secretName: example-elk-tls
60+
# secrets:
61+
# ldapBindPassword: PASSWORD
62+
elasticsearch-curator:
63+
enabled: false
64+
65+
elasticsearch-exporter:
66+
enabled: false

0 commit comments

Comments
 (0)