Elasticsearch Usuń wszystkie indeksy

Elasticsearch Usun Wszystkie Indeksy



Elasticsearch to darmowy mechanizm wyszukiwania i analizy typu open source, który obsługuje stos ELK. Elasticsearch umożliwia różnym potokom danych zbieranie i agregowanie danych przy użyciu narzędzi takich jak Logstash. Elasticsearch następnie przechowuje dostarczone dane, umożliwiając aplikacjom dostęp, wyszukiwanie, sortowanie i filtrowanie dużych ilości danych w czasie zbliżonym do rzeczywistego. Elasticsearch umożliwia również wizualizację różnych danych za pomocą wbudowanych narzędzi.

Takie cechy sprawiają, że Elasticseach doskonale nadaje się do wyszukiwania i sortowania dużych ilości danych przy minimalnym lub zerowym opóźnieniu. Niezależnie od tego, czy tworzysz wyszukiwarkę, czy analizujesz logi, metryki i inne dane tekstowe, Elasticsearch to doskonały wybór.







Sercem Elasticsearch jest indeks. Indeks odnosi się do jednostki odpowiedzialnej za przechowywanie dokumentów w Elasticsearch. Indeks jest względnie odpowiednikiem bazy danych w kontekście relacyjnych baz danych. Na przykład możesz mieć indeks, który przechowuje wszystkie dane dla dzienników aplikacji sieci Web.



Podobnie jak w przypadku wszystkich baz danych, możesz napotkać scenariusz, w którym musisz usunąć wszystkie dane z klastra, co pozwala na rozpoczęcie z czystym kontem.



W tym artykule pokazano, jak używać funkcji interfejsu API Elasticsearch do usuwania wszystkich indeksów z klastra.





UWAGA: Metody i techniki użyte w tym artykule doprowadzą do utraty danych. Nie ponosimy odpowiedzialności za utratę danych, która może nastąpić w wyniku instrukcji zawartych w tym artykule.

Elasticsearch Usuń indeks API

Jeśli zaczynasz Elasticsearch, musisz wiedzieć, jak wykonać podstawowe wywołania API. Dzieje się tak, ponieważ Elasticsearch maksymalnie wykorzystuje interfejsy API.



Jak można się domyślić, do usunięcia indeksu z klastra używamy interfejsu API Delete Index. Składnia żądań usunięcia indeksu jest następująca:

KASOWAĆ /< indeks >


Żądanie usuwa określony indeks oraz przechowywane dokumenty, fragmenty i wszystkie jego metadane.

Pamiętaj, że nie usunie to żadnych komponentów Kibany powiązanych z określonym indeksem, takich jak widoki danych itp.

Możesz określić jeden lub wiele indeksów, oddzielając je przecinkami. Przykładowa składnia jest następująca:

KASOWAĆ / nazwa_indeksu
KASOWAĆ / indeks1,indeks2,indeks3...indeksN


Elasticsearch uniemożliwia korzystanie z aliasu Index podczas usuwania indeksu. Zamiast tego musisz użyć nazwy indeksu.

Przykład 1: Indeks usuwania Elasticsearch

Poniższy przykład pokazuje, jak używać interfejsu API usuwania indeksu Elasticsearch do usuwania istniejącego indeksu z klastra:

kędzior -XDELETE 'http://localhost:9200/kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: raportowanie'


Poprzednie żądanie wysyła żądanie DELETE do interfejsu API usuwania. Powinno to usunąć indeks o nazwie „kibana_sample_data_logs”.

Wynikowy wynik jest następujący:

{
'potwierdzony' : PRAWDA
}

Przykład 2: Elasticsearch usuwa wiele indeksów

Możemy usunąć wiele indeksów, przekazując je jako listę oddzieloną przecinkami. Przykładowe zapytanie wygląda tak:

kędzior -XDELETE „http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true” -H 'kbn-xsrf: raportowanie'


Poprzednie polecenie usuwa określone indeksy i zwraca następujący komunikat:

{
'potwierdzony' : PRAWDA
}


Uwaga: Jeśli indeks nie istnieje, Elasticsearch zwraca błąd, jak pokazano:

Przykład 3: Elasticsearch Usuń wszystkie indeksy

Możemy użyć symbolu wieloznacznego _all w interfejsie API usuwania indeksu, aby usunąć wszystkie indeksy z klastra. Interfejs API usuwania indeksu domyślnie uniemożliwi przekazywanie symboli wieloznacznych w żądaniu.

Możesz to wyłączyć, ustawiając action.desctructive_requires_name na false.

Poniższa kwerenda pokazuje, jak włączyć użycie symboli wieloznacznych w interfejsie API usuwania indeksu:

kędzior -XPUT 'localhost:9200 /_klaster/ustawienia' -H 'kbn-xsrf: raportowanie' -H „Typ treści: aplikacja/json” -d '
{
'przejściowe': {
'action.Destant_requires_name' : fałsz
}
}'


UWAGA: Chociaż Elasticsearch nie zaleca używania przejściowych ustawień klastra, należy unikać ustawiania destrukcyjnych parametrów klastra, takich jak używanie symboli wieloznacznych jako trwałego ustawienia klastra.

Poprzednie zapytanie powinno zwrócić wynik w postaci:

{
'potwierdzony' : PRAWDA ,
'uporczywy' : { } ,
'przejściowy' : {
'akcja' : {
„destrukcyjna_wymagana_nazwa” : 'fałszywy'
}
}
}


Po pomyślnym zakończeniu możesz usunąć wszystkie indeksy w klastrze, uruchamiając następujące polecenie:

kędzior -XDELETE „http://localhost:9200/_all?pretty=true” -H 'kbn-xsrf: raportowanie'

Przykład 4: Elasticsearch usuwa wszystkie indeksy pasujące do określonych nazw

Jeśli chcesz usunąć wszystkie indeksy pasujące do określonego wzorca, możesz użyć symbolu wieloznacznego (*).

Na przykład, aby usunąć wszystkie indeksy zaczynające się od nazwy kibana, możemy wykonać następujące zapytanie:

kędzior -XDELETE „http://localhost:9200/kibana*” -H 'kbn-xsrf: raportowanie'


Poprzednie żądanie usuwa wszystkie indeksy zaczynające się od kibana.

UWAGA: Poprzednie żądanie wymaga użycia symboli wieloznacznych. Dlatego musisz włączyć obsługę symboli wieloznacznych, jak pokazano w poprzedniej sekcji.

Wniosek

Z tego przewodnika dowiesz się, jak korzystać z interfejsu API usuwania indeksu Elasticsearch. Dowiedziałeś się również, jak włączyć obsługę symboli wieloznacznych w klastrze, usunąć wszystkie indeksy i usunąć indeksy pasujące do określonego wzorca.