Elasticsearch Cluster Hatası Nedir?
Bu yazıda, karşılaşabileceğiniz en yaygın Elasticsearch cluster hatalarından bazılarını inceleyeceğiz ve bu hataları nasıl düzeltebileceğinize dair etkili çözümler sunacağız.
Hata 1: "Cluster is blocked" Hatası
# Çözüm:
İlk olarak, sunucunuzda yeterli disk alanı olup olmadığını kontrol edin. Aşağıdaki komutla disk kullanımını kontrol edebilirsiniz:
df -h
Eğer disk alanı dolmuşsa, eski verileri silmeyi veya daha fazla alan açmayı deneyebilirsiniz. Ardından, Elasticsearch konfigürasyon dosyanızda cluster.routing.allocation.disk.threshold_enabled parametresini false yaparak, disk alanı ile ilgili uyarıları geçici olarak kapatabilirsiniz.
curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d '{
"persistent": {
"cluster.routing.allocation.disk.threshold_enabled": false
}
}'
Hata 2: "No node available" Hatası
# Çözüm:
Bu tür hatalar genellikle Elasticsearch sunucularındaki ağ bağlantı problemlerinden kaynaklanır. İlk olarak, tüm Elasticsearch düğümlerinin birbirleriyle düzgün bir şekilde iletişim kurabildiğinden emin olun. Sunucular arası bağlantıyı test etmek için aşağıdaki komutu kullanabilirsiniz:
ping
Eğer düğümler birbirleriyle iletişim kuramıyorsa, ağ yapılandırmalarını gözden geçirin ve Elasticsearch'ün kullandığı portların açık olduğundan emin olun.
Ayrıca, Elasticsearch konfigürasyon dosyanızdaki discovery.seed_hosts parametresini kontrol edin ve doğru düğüm IP adreslerini eklediğinizden emin olun.
discovery.seed_hosts: ["192.168.1.1", "192.168.1.2"]
Hata 3: "Node [X] failed to join the cluster" Hatası
# Çözüm:
Düğümün başarısız olma nedenini anlamak için Elasticsearch log dosyalarını kontrol edin. Hata mesajları genellikle bu tür sorunları teşhis etmenize yardımcı olur.
tail -f /var/log/elasticsearch/elasticsearch.log
Eğer düğüm, küme yapılandırmasını düzgün yükleyemiyorsa, network.host ve discovery.seed_hosts parametrelerini doğru şekilde yapılandırdığınızdan emin olun. Ayrıca, JVM heap boyutunun yeterli olduğundan da emin olun, çünkü kaynak yetersizliği nedeniyle düğüm katılımı reddedilebilir.
-Xms2g
-Xmx2g
Hata 4: "Zen Discovery" Hatası
# Çözüm:
Zen Discovery ayarlarını kontrol edin ve aşağıdaki parametrelerin doğru olduğundan emin olun:
discovery.type: zen-discovery
discovery.zen.ping.unicast.hosts: ["192.168.1.1", "192.168.1.2"]
Bu ayarları güncelledikten sonra, Elasticsearch servisini yeniden başlatın.
systemctl restart elasticsearch