Инсталляция с помощью Helm инструментов логирования Elastic


Делаю:
2024.03.30

Из за бана РФ, ничего не работает с российских IP. Нужно менять image на те, что лежат на dockerhub

С 8 версией чего-то не оч. все хорошо! Нужно разбираться!



https://github.com/elastic/helm-charts/tree/main/elasticsearch/examples/minikube


$ minikube --profile ${PROFILE} addons enable default-storageclass
$ minikube --profile ${PROFILE} addons enable storage-provisioner


$ kubectl create namespace logging


$ helm repo add elastic https://helm.elastic.co


// $ helm search repo elastic/elasticsearch --versions

// $ helm show values elastic/elasticsearch

$ helm repo update


$ cd ~/tmp

$ curl -O https://raw.githubusercontent.com/elastic/Helm-charts/master/elasticsearch/examples/minikube/values.yaml

$ helm upgrade \
  --namespace logging \
  --install elasticsearch elastic/elasticsearch \
  --values ./values.yaml \
  --version 8.5.1


// Watch all cluster members come up
// $ kubectl get pods --namespace=logging -l app=elasticsearch-master -w


// Retrieve elastic user's password
// $ kubectl get secrets --namespace=logging elasticsearch-master-credentials -ojsonpath='{.data.password}' | base64 -d


// Нужно как-то передать пароль, чтобы норм отрабатывало
// Test cluster health using Helm test
// $ helm --namespace=logging test elasticsearch


// Если нужно проверить
// $ kubectl --namespace logging port-forward svc/elasticsearch-master 9200


// [OK!]
// $ curl -k -u elastic:password https://localhost:9200


{
  "name": "elasticsearch-master-0",
  "cluster_name": "elasticsearch",
  "cluster_uuid": "5AIZquHDR9GNLpp-o7oNCA",
  "version": {
    "number": "8.5.1",
    "build_flavor": "default",
    "build_type": "docker",
    "build_hash": "c1310c45fc534583afe2c1c03046491efba2bba2",
    "build_date": "2022-11-09T21:02:20.169855900Z",
    "build_snapshot": false,
    "lucene_version": "9.4.1",
    "minimum_wire_compatibility_version": "7.17.0",
    "minimum_index_compatibility_version": "7.0.0"
  },
  "tagline": "You Know, for Search"
}


// Удаление
// $ helm delete \
  --namespace logging \
  elasticsearch


Kibana


// $ helm show values elastic/kibana


$ helm upgrade \
  --namespace logging \
  --install kibana elastic/kibana


$ helm test kibana


// Если нужно
// $ kubectl port-forward deployment/kibana-kibana 5601 --namespace logging


// Удаление
// $ helm delete \
  --namespace logging \
  kibana


Fluentd


Делаю:
2024.04.14


// $ helm search repo bitnami/fluentd --versions


$ helm repo add bitnami https://charts.bitnami.com/bitnami
$ helm install fluentd bitnami/fluentd -n logging


// $ helm list -n logging
NAME   	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART        	APP VERSION
fluentd	logging  	1       	2024-04-14 16:33:36.312796172 +0300 MSK	deployed	fluentd-6.1.1	1.16.5


$ kubectl get pods -n logging
NAME                      READY   STATUS    RESTARTS      AGE
es-cluster-0              1/1     Running   0             42m
es-cluster-1              1/1     Running   0             41m
es-cluster-2              1/1     Running   0             41m
fluentd-0                 1/1     Running   0             2m39s
fluentd-p9bd9             1/1     Running   3 (80s ago)   2m39s
kibana-576c557879-jdjst   1/1     Running   0             39m


$ kubectl get configmaps -n logging
NAME                    DATA   AGE
fluentd-aggregator-cm   4      2m57s
fluentd-forwarder-cm    4      2m57s
kube-root-ca.crt        1      42m


$ kubectl get statefulsets -n logging
NAME         READY   AGE
es-cluster   3/3     97m
fluentd      1/1     58m


Metricbeat (Не пробовал)


// $ helm show values elastic/metricbeat


$ helm upgrade \
  --namespace logging \
  --install metricbeat elastic/metricbeat


// Удаление
// $ helm delete \
  --namespace logging \
  metricbeat