Yedekleme Politikası
İlk olarak yedeklemenin nasıl yapılacağı konusu netleştirilmelidir. Sık kullanılan yöntemler şunlardır:
-
Elasticsearch'ün konfigürasyon dosyasında yazan path.data adresi sistem yöneticileri tarafından incremental şekilde veya belirli aralıklarla olduğu gibi yedeklenebilir.
bilgi
ARTI Geçmiş verilere erişim her zaman aynı kolaylıkta devam edecektir.
:::
EKSI Hem aktif hem de yedek disk sürekli büyümeye devam edecektir.
EKSI Asıl diskte sorun olduğunda yedek disk üzerindeki verilere erişebilecek şekilde tekrar kurulum yapılması gerekecektir.
-
Elasticsearch'ün bulunduğu sunucu Raid-0 yöntemiyle ya da belirli aralıklarla olduğu gibi yedeklenebilir.
bilgi
ARTI Geçmiş verilere erişim her zaman aynı kolaylıkta devam edecektir.
:::
ARTI Asıl diskte sorun olduğunda yedek disk network yönlendirmesiyle anında kullanıma başlanılabilecektir.
EKSI Hem aktif hem de yedek disk sürekli büyümeye devam edecektir.
-
Elasticsearch verileri Elasticsearch Snapshot api'si ile dump al ınabilir. Snapshot politikası ayarlanarak belirli bir sistem adresine bu yedek dosyalarının çıkarılması sağlanabilir, sonrasında bu yedek dosyaları farklı bir sunucuya ayrıca yedeklenmelidir.
bilgi
ARTI Geçmiş verilere erişim her zaman aynı kolaylıkta devam edecektir.
:::
EKSI Hem aktif hem de yedek disk sürekli büyümeye devam edecektir.
ÖNERİ Yukarıdaki yöntemlerden hangisi kullanılırsa kullanılsın, düzenli yedekleme ayarlandıktan sonra yedeği alınmış loglar Elasticsearch ILM'siyle otomatik silmeye ayarlanabilir ya da istenilen zamanlarda istenilen kadarı Elasticsearch API'si ile manuel olarak silinebilir.
ARTI Aktif sunucuda çok daha düşük bir disk kaynağıyla çalışılmaya devam edilecektir.
EKSI Geçmiş verilere erişim için yedek diskine bir uygulama kurulması veya yedeklerin belirli bir sunucuya aktarılarak çalışılması gerekecektir.
EKSI Sadece yedek disk sürekli büyümeye devam edecektir.
Elasticsearch Manuel Yedek Alma ve Geri Yükleme
Bu bölüm, Elasticsearch üzerindeki logların cron tanımı üzerinden otomatik olarak yedeklenmesi için oluşturulan Snapshot Lifecycle Management (SLM) politikasını oluşturmayı ve anlık olarak yedek alıp geri yükleme yöntemlerini açıklar.
Değişkenler
İstekler yer alan dinamik değerler ve açıklamaları aşağıdaki tabloda görülmektedir.
| Değişken | Açıklama |
|---|---|
<ELASTICSEARCH_IP_ADDRESS> | Elasticsearch cluster'ının host bilgisidir. |
<INDEX_KEY> | Cluster bazında bu değer tanımlayıcı nitelik taşıdığı için tekil olmalıdır. Bu yüzden, tüm isteklerde aynı değer kullanılmalıdır. |
Yedeklerin Dosya Konumunu Belirtme
Kümedeki tüm node'lara ait elasticsearch.yml konfigürasyon dosyasına, path.repo alanı eklenerek, yedekleme dosyalarının saklanacağı dosya konumu yazılır.
Eğer bu bilgi sonradan konfigürasyon dosyasına eklendiyse, node yeniden başlatılmalıdır.
path:
repo:
- /backups/my_backup_location
Snapshot Repository Bilgisini Tanımlama
Repository, snapshot işleminde yedeklenecek dosyaların nerede depolanacağı bilgisini tutar.
curl -X PUT "http://<ELASTICSEARCH_IP_ADDRESS>:9200/_snapshot/apinizer-repository-<INDEX_KEY>?pretty" -H 'Content-Type: application/json' -d'
{
"type": "fs",
"settings": {
"location": "/backups/my_backup_location",
"compress": true
}
}
'