Bu makalemizde, Elastic Cloud on Kubernetes operatörü, operatörün kurulumu ve bir elastic stack’ i ayağa kaldırıp çalıştırmak üzerine yoğunlaşacağız.

Elastic Cloud on Kubernetes (ECK), Kubernetes üzerinde Elasticsearch ve diğer Elastic Stack bileşenlerinin dağıtımını, yönetimini ve ölçeklendirilmesini otomatikleştiren bir operatördür. ECK, Elastic Stack’i Kubernetes ekosistemine entegre ederek, verilerinizi güvenilir, esnek ve ölçeklenebilir bir şekilde yönetmenizi sağlar.
ECK kullanımının avantajları;
Otomatik Dağıtım ve Yönetim: ECK, Elasticsearch, Kibana ve diğer Elastic Stack bileşenlerinin Kubernetes üzerinde otomatik olarak kurulmasını, yapılandırılmasını ve yönetilmesini sağlar. Bu sayede manuel müdahale ihtiyacını ortadan kaldırarak operasyonel süreçleri sadeleştirir ve yönetimi kolaylaştırır.
Kolay Ölçeklendirme: ECK, Kubernetes’in yerel özelliklerinden yararlanarak elastic küme kapasitesini hızlı ve kolay bir şekilde artırma veya azaltma imkanı sunar.
Sürüm Güncellemeleri: ECK, Elastic Stack bileşenlerini güvenli ve kesintisiz bir şekilde güncellemenizi sağlar. Bu, sisteminizin her zaman en son sürümde kalmasını ve oluşabilecek güvenlik açıklarını daha az operasyonel yük ile hızlı bir şekilde kapatmanızı sağlar.
Yüksek Erişilebilirlik: Kubernetes altyapısını kullanan ECK, Elastic Stack bileşenlerinin her zaman çalışır durumda olmasını ve veri kaybı riskini minimize eder.
Veri Yönetimi ve Yedekleme: ECK, dinamik depolama yönetimi ve planlanabilir yedeklemeler gibi özelliklerle veri yönetimini kolaylaştırır. Bu, verilerinizi güvenli bir şekilde saklamanızı ve gerektiğinde hızla geri yüklemenizi sağlar.
ECK github reposunu buraya tıklayarak inceleyebilirsiniz, example yaml dosyalarına ulaşabilirsiniz.
Ön bilgilendirme sonrasında kurulum adımlarına geçelim, Paylaştığım YAML dosyaları, Elasticsearch 8.15.0 sürümünü kullanarak Kubernetes üzerinde temel bir Elasticsearch kümesi oluşturmak için yapılandırılmıştır; bu yapılandırma, minimum düzeyde bir kurulum sağlar ve veri depolama ile temel küme yönetimini içerir.
Github reposu üzerindeki example’ lardaki objeleri de yaml dosyanıza ekleyerek, eck yarıdmıyla mimariniz için ideal olan yapının kurulumunu gerçekleştirebilirsiniz.
ECK için kubernetes cluster’ımızda yeni bir namespace açıp operatörü içerisine yapılandıralım.
kubectl create ns eck-operator
helm repo add elastic https://helm.elastic.co
helm install elastic-operator elastic/eck-operator --version 2.14.0 -n eck-operator
kubectl get pods -n eck-operator
elastic-operator-0 1/1 Running
Operatörümüz running state’ e geçti, şimdi operatörü tetikleyerek, 3 node’ lu elastic ve 1 kibana çalıştıralım.
elasticsearch.yaml
kubectl apply -f elasticsearch.yaml -n eck-operator
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
name: elasticsearch
spec:
version: 8.15.0
nodeSets:
- name: default
count: 3
config:
node.store.allow_mmap: false
volumeClaimTemplates:
- metadata:
name: elasticsearch-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Gi
# storageClassName: default -> defaulttan farklı bir sc kullanılacaksa ayarlayabilirsiniz.
kibana.yaml
kubectl apply -f kibana.yaml -n eck-operator
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
name: kibana
spec:
version: 8.15.0
count: 1
elasticsearchRef:
name: elasticsearch
http:
tls:
selfSignedCertificate:
disabled: true
eck-operator namespace’ indeki podlarınız running state’ e geçtiğinde elastic ve kibana hazır demektir.
Web arayüzüne erişmek için kibana-http servis objenizi yapılandırabilirsiniz,

ECK kullanarak kurulumu tamamladığınızda eck-operator namespacesinizde configmap ve secretlarınız oluşur, oluşturmuş olduğunuz kümeye dair bilgileri görüntüleyebilirsiniz.
Kurulum sonrasında Elastic tarafındaki operasyonlarınızı elasticsearch CRD’ si üzerinden yönetebilirsiniz.
Faydalı Olması Dileğiyle.