Jak skonfigurować szablony indeksu ElasticSearch

Jak skonfigurować szablony indeksu ElasticSearch
Indeksy są niezbędną funkcją elasticsearch, bez której prawdopodobnie nie działałoby tak, jak to robi. Chociaż wskaźniki Elasticsearch mogą się różnić w zależności od zamierzonego użycia, mają tendencję do dzielą wspólnych właściwości. Biorąc to pod uwagę, tworzenie podobnych właściwości dla wszystkich wskaźników może być męczące. Zamiast tego tworzenie szablonu, do którego możemy się odnosić podczas tworzenia indeksu, jest o wiele bardziej wydajne.

Ten samouczek przeprowadzi Cię przez tajniki szablonów indeksu Elasticsearch, które pozwalają zdefiniować szablony lub plany dla wspólnych wskaźników. Na przykład, jeśli nieustannie rejestrujesz dane ze źródeł zewnętrznych, możesz zdefiniować plan dla wszystkich wskaźników rejestrowania.

NOTATKA: Zanim zaczniemy, warto zauważyć, że samouczek koncentruje się na najnowszej wersji ElasticSearch-7.8 W momencie pisania-i może się różnić od innych wersji. Zakładamy również, że masz gdzieś działający ElasticSearch.

Rozpocznijmy pracę z szablonami indeksu ElasticSearch.

Co to jest szablon indeksu ElasticSearch?

Szablon indeksu ElasticSearch to metoda używana do instruktażu ElasticSearch do konfigurowania wskaźników po utworzeniu. Na przykład szablon indeksu używany w strumieniu danych konfiguruje wskaźniki podkładu strumienia po utworzeniu. Szablon indeksu jest tworzony ręcznie przed utworzeniem indeksu. Podczas tworzenia indeksu szablon stosuje ustawienia konfiguracji dla indeksu.

Najnowsza wersja ElasticSearch ma dwa rodzaje użytecznych szablonów. Jeden to szablon indeksu, a drugi jest Szablony komponentów. Jak już ustaliliśmy, szablony indeksu pomagają tworzyć indeksy elasticsearch.

Szablony komponentów to moduły lub bloki wielokrotnego użytku używane do konfigurowania ustawień, mapowania i aliasów. Szablony komponentów nie są stosowane bezpośrednio do utworzonych wskaźników, ale mogą pomóc w tworzeniu szablonów indeksu.

Niektóre domyślne szablony indeksu używane przez ElasticSearch obejmują: Metryki-*-*, dzienniki-*-* .

Jak utworzyć szablon indeksu

Aby utworzyć nowe szablony indeksu lub zaktualizować istniejące, używamy API PUT THE SBARD. Korzystając z punktu końcowego _INDEX_TEMPLAP, możemy wysłać żądanie HTTP, aby dodać szablon.

Ogólna składnia do tworzenia szablonu to:

Umieść _INDEX_TEMPLATE/THAMPLATE_NAME

Warto zauważyć, że nazwa szablonu jest wymaganym parametrem. Rozważ poniższe żądanie, które tworzy szablon indeksu jako szatpel_1

Umieść _INDEX_TEMPLATE/THATPLATE_1

/ * Zdefiniuj wzór indeksu */
„index_patterns”: [„te*”],
„Priorytet”: 1,
/* Zdefiniuj ustawienia dla indeksów*/
"szablon":
„Ustawienia”:
„Number_of_shards”: 2


W przypadku użytkowników Curl polecenie to:

curl -xput "http: // localhost: 9200/_INDEX_TEMPLATE/THATPLATE_1" -h 'content -Type: Application/Json' -D '/*Zdefiniuj wzór indeksu*/"index_patterns": ["te*"], „Priorytet”: 1, /* Zdefiniuj ustawienia dla wskaźników* / „szablon”: „Ustawienia”: „Number_of_shards”: 2 '

ElasticSearch używa wzorca wieloznacznego do dopasowania nazw indeksów, w których stosowane są szablony. Zmiana lub aktualizacja szablonu indeksu nie wpływa na już utworzone wskaźniki tylko te, które zostaną utworzone po użyciu tego szablonu.

Z góry możesz komentować swoje szablony za pomocą metody komentowania C-Language. Możesz dodać tyle komentarzy, ile chcesz, w dowolnym miejscu w ciele, z wyjątkiem otwierania klamrowych.

W treści szablonu indeksu możesz dołączyć różne definicje, takie jak:

  • Szablon: Właściwość szablonu (obiekt) określa, który szablon należy zastosować; Może obejmować aliasy, mapowania i ustawienia-to opcjonalny parametr.
  • Złożony z: Ta właściwość określa listę nazw szablonów komponentów. Po zdefiniowaniu szablony składników są połączone w kolejności specyfikacji. Oznacza to, że zdefiniowany szablon ostatniego komponentu ma najwyższe pierwszeństwo.
  • Priorytet: Właściwość priorytetowego określa pierwszeństwo szablonu indeksu podczas tworzenia indeksu. Jeśli jakiekolwiek pierwszeństwo ma najwyższą wartość, ma wyższe pierwszeństwo w porównaniu z niższymi wartościami. Wartość priorytetu nie jest wymagana i jest typową liczbą całkowitą. 0 jest domyślną wartością dla szablonów niestosowanych.
  • Wersja: Parametr wersji określa wersję szablonu indeksu, która pomaga zarządzać szablonami.

Istnieją inne właściwości, które możesz dołączyć w korpusie szablonu indeksu. Rozważ dokumentację, aby dowiedzieć się więcej.

https: // www.elastyczny.co/przewodnik/en/elasticsearch/reference/7.10/Templaty indeksu.html

Poniżej znajduje się przykładowe żądanie utworzenia nowego szablonu z wersją 1.0

PUT /_INDEX_TEMPLAPE /THATPLATE_2

„index_patterns”: [„remp*”, „re*”],
„Priorytet”: 1,
"szablon":
„Ustawienia”:
„Number_of_shards”: 2,
„Number_of_replicas”: 0

,
"wersja 1.0

Nie możesz mieć więcej niż jednego szablonu indeksu z dopasowanym wzorem i tym samym priorytetem. Stąd upewnij się, że przypisuje różne priorytety, aby dopasować szablony wzorów.

Jak uzyskać szablon indeksu

Aby wyświetlić informacje o szablonie indeksu, wyślij żądanie GET do interfejsu API _INDEX_TEMPLAT. Na przykład, aby wyświetlić informacje o Template_2, użyj żądania:

Pobierz _INDEX_TEMPLATE/THATPLATE_2

Polecenie Curl to:

curl -xget "http: // localHost: 9200/_INDEX_TEMPLATE/THATPLATE_2"

To polecenie powinno wyświetlać informacje o Template_2


„Index_Templates”: [

„Nazwa”: „THAMPLATE_2”,
„index_template”:
„index_patterns”: [
„REMP*”,
"Odnośnie*"
],
"szablon" :
„Ustawienia”:
„Indeks”:
„Number_of_shards”: „2”,
„Number_of_replicas”: „0”


,
"złożony z" : [ ],
„Priorytet”: 1,
"wersja 1


]

Możesz także użyć dzikich kart, aby uzyskać pasujące szablony. Na przykład rozważ poniższe żądanie, aby wyświetlić wszystkie szablony w ElasticSearch.

Pobierz _INDEX_TEMPLATE/*

Polecenie Curl jest.

curl -xget http: // localhost: 9200/_index_template/*

To polecenie powinno przekazać informacje o wszystkich szablonach w ElasticSearch


„Index_Templates”: [

„Nazwa”: „ILM-History”,
„index_template”:
„index_patterns”: [
„ILM-History-3*”
],
"szablon" :
„Ustawienia”:
„Indeks”:
„Format”: „1”,
"koło życia" :
„Nazwa”: „Ilm-History-Ilm-Policy”,
„Rollover_alias”: „ILM-History-3”
,
„ukryty”: „Prawda”,
„Number_of_shards”: „1”,
„Auto_expand_replicas”: „0-1”,
„Number_of_replicas”: „0”

,
„Mapowania”:
„Dynamic”: False,
"nieruchomości" :
„index_age”:
„Typ”: „Long”
,
"@znak czasu" :
„Format”: „epoch_millis”,
„Typ”: „Data”
,
"szczegóły błędu" :
"Wpisz tekst"
,
"powodzenie":
„Typ”: „boolean”
,
„Indeks”:
„Typ”: „Słowo kluczowe”
,
"państwo" :
„Dynamic”: True,
„Typ”: „Obiekt”,
--------------------------Wyjście obcięte-----------------------------------

Jak usunąć szablony

Usuwanie szablonu jest tak samo proste, jak szablon GET, ale używając żądania usuwania jak:

Usuń _Index_Template/THAMPLATE_2

Możesz użyć polecenia curl:

curl -xDelete "http: // localhost: 9200/_INDEX_TEMPLATE/THATPLATE_2"

To polecenie automatycznie usuwa określony szablon.

Wniosek

Ten samouczek obejmował szablony indeksu ElasticSearch, jak działają i jak tworzyć, przeglądać i usuwać szablony indeksu. Ta podstawowa informacja powinna pomóc w korzystaniu z szablonów indeksu ElasticSearch.