Nastavte inštanciu Elasticsearch pomocou kontajnerov Docker

Nastavte Instanciu Elasticsearch Pomocou Kontajnerov Docker



Elasticsearch je distribuovaný, bezplatný a otvorený vyhľadávací a analytický nástroj pre všetky typy údajov vrátane textových, numerických, geopriestorových, štruktúrovaných a neštruktúrovaných údajov.

Elasticsearch je postavený na Apache Lucene a bol prvýkrát vydaný v roku 2010. Známy pre svoje jednoduché REST API, distribuovaný charakter, rýchlosť a škálovateľnosť, Elasticsearch je centrálnou súčasťou Elastic Stack, sady bezplatných a otvorených nástrojov na prijímanie a obohacovanie údajov. skladovanie, analýza a vizualizácia.

V tomto návode si rýchlo prejdeme proces nastavenia inštancie Elasticsearch pomocou kontajnerov Docker.







Požiadavky:

Ak chcete spustiť príkazy a kroky uvedené v tomto príspevku, uistite sa, že máte nasledujúce:



  1. Nainštalovaný Docker Engine
  2. Nainštalovaný Docker Compose
  3. Dostatočné povolenia na spustenie kontajnerov Docker

Definujte súbor Docker Compose File

Prvým krokom je definovanie konfigurácie Docker Compose na spustenie kontajnera Docker. Začnite vytvorením adresára na uloženie konfiguračného súboru:



$ mkdir elastické
$ cd elastické

Vytvorte súbor „docker-compose.yml“ na spustenie klastra Elasticsearch, ako je znázornené v nasledujúcom príklade konfigurácie:





verzia: '3'
služby:
elasticsearch01:
obrázok: docker.elastic.co / elasticsearch / elasticsearch:8.9.2
názov_kontajnera: elasticsearch01
porty:
- 9200 : 9200
- 9300 : 9300
prostredie:
discovery.type: single-node
siete:
- elastický
kibana01:
obrázok: docker.elastic.co / kibana / kibana: 8.9.2
názov_kontajnera: kibana01
porty:
- 5601 : 5601
prostredie:
ELASTICSEARCH_URL: http: // elasticsearch01: 9200
ELASTICSEARCH_HOSTS: http: // elasticsearch01: 9200
siete:
- elastický
siete:
elastický:
vodič: most

V tomto vzorovom súbore definujeme dve služby. Prvý nastaví službu Elasticsearch a druhý nastaví inštanciu Kibana. Kroky sú opísané nižšie:

  • Použite obrázok Elasticsearch 8.9.2.
  • Namapujte porty 9200 a 9300 z kontajnera na hostiteľa.
  • Nastavte premennú prostredia „discovery.type tosingle-node“ pre Elasticsearch.
  • Pripojte sa k vlastnej sieti nazývanej „elastická“.

V službe Kibana vykonávame nasledujúce akcie:



  • Použite obrázok Kibana 8.9.2.
  • Namapujte port 5601 z kontajnera na hostiteľa.
  • Zadajte adresy URL pripojenia Elasticsearch prostredníctvom premenných prostredia ELASTICSEARCH_URL a ELASTICSEARCH_HOSTS.
  • Pripojte sa k elastickej sieti.

Nakoniec nastavíme vlastnú sieť s názvom „elastická“ pomocou ovládača mosta, ktorý umožňuje komunikáciu kontajnerov Elasticsearch a Kibana.

Spustite kontajner

Keď máme definované služby, môžeme pokračovať a spustiť kontajnery pomocou príkazu Docker Compose takto:

$ docker zostaviť -d

Prístup k Elasticsearch a Kibana

Po spustení kontajnerov môžeme pokračovať a pristupovať k ich inštanciám na nasledujúcich adresách:

http: // localhost: 9200 - > Elasticsearch

http: // localhost: 5601 - > Kibana

Spustite Elasticsearch pomocou príkazu Docker „Spustiť“.

Elasticsearch môžete tiež rýchlo spustiť pomocou príkazu docker „run“ bez toho, aby ste museli definovať vlastnú konfiguráciu.

Začnite vytvorením siete Docker na pripojenie k inštancii Elasticsearch:

$ docker network vytvoriť elk

Po vytvorení spustite nasledujúci príkaz na vytvorenie inštancie Elasticsearch a pripojte ju k vytvorenej sieti:

$ docker spustiť -d --názov elasticsearch --net los -p 9200 : 9200 -p 9300 : 9300 -To je 'discovery.type=single-node' elasticsearch:tag

To zjednodušuje proces vytvárania vlastného súboru „docker-compose“ a rýchleho spustenia inštancie Elasticsearch.

Záver

Tento článok pokrýval základné kroky definovania a spustenia inštancií Elasticsearch a Kibana pomocou kontajnerov Docker.