Ben (kendi adına bir küme birkaç dizinleri yeniden adlandırmak gerekir gerekir , ben kullanamıyorum değiştirilebilir takma adları ).
Bunu yapmanın desteklenen bir yolu olmadığını gördüm, en yakın bulduğum dizin dizinini yeniden adlandırmak , bunu bir kümede denedim.
Küme 3 makineleri vardır A, Bve Cve kırıkları bunların her biri üzerinde çoğaltılır. Elasticsearch'ü kapattım A, adını /var/lib/elasticsearch/security/nodes/0/indices/oldindexnamedeğiştirdim /var/lib/elasticsearch/security/nodes/0/indices/newindexnameve yeniden başlattım A.
Kümenin durumu sarıydı ve elasticsearch, doğru durumu geri getirmek için biraz sihir yapıyordu. Bir süre sonra bitirdim
oldindexnamemevcut ve tamamen kopyalanmış (kurtarıldıBveCsanırım)newindexnamemevcut (arama yapabilirim) ancak head eklentisi, parçalarının "Atanmamış" durumda olduğunu ve gri renkte olduğunu (kopyalanmamış) gösteriyor
Kurtarma sırasında security.logaşağıdaki mesajı gösterdi:
[2015-02-20 11:02:33,461][INFO ][gateway.local.state.meta ] [A.example.com] dangled index directory name is [newindexname], state name is [oldindexname], renaming to directory name
newindexnameAranabilir olsa da, kesinlikle normal bir durumda değildir.
Silerek önceki duruma geri döndüm newindexname. Küme, herhangi bir "Atanmamış" giriş olmadan yeşile döner.
Olduğu göz önüne alındığında, nasıl yeniden adlandırabilir oldindexnameiçin newindexnamebir kümede?
Not: Aklımdaki nihai çözüm kaydırma kopya etmektir oldindexiçine newindexve silme oldindexsonradan. Bu zaman alacaktır, bu yüzden daha doğrudan bir çözüm varsa harika olur.