Anasayfa » Elasticsearch 8.11 Kurulumu ve Yapılandırması

Elasticsearch 8.11 Kurulumu ve Yapılandırması

Bu yazımızda Debian işletim sistemi üzerinde SSL sertifika yapılandırması ile birlikte Elasticsearch 8.11 kurulumu ve yapılandırması nı adım adım birlikte yapacağız.
Resmi döküman için Elasticsearch

elasticsearch8-11kurulumuveyapilandirmasi.png

🔧 Gerekli Ön Hazırlıklar

Kurulum adımlarını takip ederek 3 sanal sunucu üzerinde kurulumunu yapacağız.

Debian 12 İşletim Sistemi

- 192.168.116.155 ( elasticsearch01 )
- 192.168.116.156 ( elasticsearch02 )
- 192.168.116.157 ( elasticsearch03 )

Sanal sunucuların hostnamelerini değiştirelim ve /etc/hosts dosyasına eklemeleri yapalım.

## Tüm Nodelarda ##

hostnamectl set-hostname <hostname>
  • GPG Anahtarını Ekleme ve Elasticsearch Kaynağını Tanıtma
    • Ortamınıza Elasticsearch e ait Keyring ve Repoyu dahil etmek için aşağıdaki komutları kullanabilirsiniz. Eski veya yeni repoları kullanmak için Elasticsearch dökümanına gözatın.
## Tüm Nodelarda ##

apt install gpg zip -y

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/elastic-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
  • OpenJDK 17 Kurulumu ve JAVA_HOME Tanımlama
## Tüm Nodelarda ##

apt install -y openjdk-17-jdk

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed 's:/bin/java::')" | tee -a /etc/environment

source /etc/environment

echo $JAVA_HOME

Elasticsearch 8.11 Kurulumu

  • Elasticsearch 8.11.1 versiyonunun kurulumunu yapıyoruz. işlemlerimiz devam edeceği için Elasticsearch servisini durduruyoruz.
## Tüm Nodelarda ##

apt-get update && apt-get install elasticsearch=8.11.1

systemctl stop elasticsearch

Elasticsearch 8.11 SSL Sertifikalarının Oluşturulması

  • CA (Certificate Authority) Oluşturulması
## İlk Node elasticsearch01 ##

/usr/share/elasticsearch/bin/elasticsearch-certutil ca --pem

unzip /usr/share/elasticsearch/elastic-stack-ca.zip -d /usr/share/elasticsearch/
  • Cluster Sertifikasının Oluşturulması
    • Cluster sertifikası üretmek için aşağıdaki komutu kullanmalısınız. Biz bu yazıda 3 node lu Cluster kuracağız eğer siz single node kurmak istiyorsanız. dns ve ip bölümünü ona uygun olarak değiştirmeniz gerekiyor.
## İlk Node elasticsearch01 ##

/usr/share/elasticsearch/bin/elasticsearch-certutil cert \
  --ca-cert /usr/share/elasticsearch/ca/ca.crt \
  --ca-key /usr/share/elasticsearch/ca/ca.key \
  --pem \
  --name els-efpa \
  --dns 192.168.116.155,192.168.116.156,192.168.116.157 \
  --ip 192.168.116.155,192.168.116.156,192.168.116.157 \
  --out /usr/share/elasticsearch/elasticsearch-cluster-certs.zip

unzip /usr/share/elasticsearch/elasticsearch-cluster-certs.zip -d /usr/share/elasticsearch/
  • Sertifikaların Elasticsearch’e Tanımlanmasını yapacağımız path oluşturup taşıma ve yetki komutlarımız

NOT : elasticsearch01 makinasında oluşturulan sertifikalar diğer 2 makinayada scp ile aktarabilirsiniz.

## Tüm Nodelarda ##

mkdir -p /etc/elasticsearch/certs

cp /usr/share/elasticsearch/els-efpa/* /etc/elasticsearch/certs/

cp /usr/share/elasticsearch/ca/ca.crt /etc/elasticsearch/certs/

chown -R root:elasticsearch /etc/elasticsearch/certs

chmod -R 750 /etc/elasticsearch/certs

Elasticsearch 8.11 Yapılandırma Ayarları

  • elasticsearch.yml Dosyasının Düzenlenmesi
    • Eğer Single Node Elasticsearch kuruyorsanız. discovery.seed_hosts ve cluster.initial_master_nodes satırları kaldırıp yerine discovery.type: single-node satırını yazmanı gerekiyor.
## Tüm Nodelarda ##

cluster.name: els-efpa
node.name: els-01
node.roles: [ master, data, ingest ]

path.data: /elsdata/elasticsearch
path.logs: /elslog/elasticsearch
path.repo: /elsbackup/elasticsearch

network.host: 192.168.116.155
http.port: 9200

discovery.seed_hosts: ["192.168.116.155", "192.168.116.156", "192.168.116.157"]
cluster.initial_master_nodes: ["els-01", "els-02"]

xpack.security.enabled: true
xpack.security.enrollment.enabled: true

xpack.security.http.ssl:
  enabled: true
  verification_mode: certificate
  key: /etc/elasticsearch/certs/els-efpa.key
  certificate: /etc/elasticsearch/certs/els-efpa.crt
  certificate_authorities: [ "/etc/elasticsearch/certs/ca.crt" ]

xpack.security.transport.ssl:
  enabled: true
  verification_mode: certificate
  key: /etc/elasticsearch/certs/els-efpa.key
  certificate: /etc/elasticsearch/certs/els-efpa.crt
  certificate_authorities: [ "/etc/elasticsearch/certs/ca.crt" ]

JVM Bellek Ayarları

  • JVM Bellek Ayarlarının Belirlenmesi
    • JVM ayarı önem arzediyor dolayısıyla kurulum yapacağınız makinanın Memory durumuna göre 32GB’a kadar artırabilirsiniz.
## Tüm Nodelarda ##

echo "-Xms1g" | sudo tee /etc/elasticsearch/jvm.options.d/heap.options

echo "-Xmx1g" | sudo tee -a /etc/elasticsearch/jvm.options.d/heap.options

alternatif olarak;

## Tüm Nodelarda ##

nano /etc/elasticsearch/jvm.options

# Dosyanın sonuna ekleyin:
-Xms1g
-Xmx1g

Elasticsearch Veri, Log ve Backup Dizinlerinin Oluşturulması

/elsdata -> Datalar için
/elslog -> Loglar için
/elsbackup -> Snapshotlar için

## Tüm Nodelarda ##

mkdir -p /elsdata/elasticsearch
chown -R elasticsearch:elasticsearch /elsdata/elasticsearch
chmod -R 755 /elsdata

mkdir -p /elslog/elasticsearch
chown -R elasticsearch:elasticsearch /elslog/elasticsearch
chmod -R 755 /elslog

mkdir -p /elsbackup/elasticsearch
chown -R elasticsearch:elasticsearch /elsbackup/elasticsearch
chmod -R 755 /elsbackup

Elasticsearch Servisini Başlatma

## Tüm Nodelarda ##

systemctl daemon-reload

systemctl enable elasticsearch

systemctl start elasticsearch

Artık local browserdan bağlantıyı kontrol edebiliriz. URL de IP yi node IP adresleriyle değiştirip aşağıdaki gibi çıktıyı almanız lazım.

https://192.168.116.155:9200

Notlar

  • Yeni node eklendiğinde, CA ve node sertifikalarının yeniden üretilmesi ve yeni sunuculara taşınması gerekir.
  • Tüm sunucuların zamanlarının senkronize (NTP) olmalı

Sonuç

Bu yazımızda, Debian işletim sistemi üzerinde, Elasticsearch 8.11.1 Kurulumu ve Yapılandırmasını adım adım öğrendik. Kurulum sonrası güvenlik (SSL/TLS), veri ve log dizinleri gibi konulara dikkat ederek uzun vadede sürdürülebilir bir Elasticsearch altyapısı sağlamış olduk.

Elasticsearch ile ilgili diğer yazılara gözatmak için tıklayın.
Kibana Kurulumu yazımız için Tıklayın.
HAProxy Kurulum ve Yapılandırması için Tıklayın.

More Reading

Post navigation

Leave a Comment

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir