Šiame straipsnyje mes išnagrinėsime, kaip įdiegti Elasticsearch ir Kibana naudoti Docker Compose. Tai yra du pagrindiniai ELK Stack( Elasticsearch, Logstash, Kibana) komponentai, padedantys efektyviai ieškoti, analizuoti ir vizualizuoti duomenis. Žemiau pateikiamos išsamios konfigūracijos ir kiekvieno komponento veikimo principas.
1. Elasticsearch
a. Pagrindinė konfigūracija
Elasticsearch sukonfigūruotas veikti Docker konteineryje su šiais parametrais:
Vaizdas: naudojamas oficialus Elasticsearch vaizdas, versija .
8.17.2
Vieno mazgo režimas: įgalinamas naudojant aplinkos kintamąjį
discovery.type=single-node
.Sauga: X-Pack sauga įjungta(
xpack.security.enabled=true
), o vartotojo slaptažodiselastic
nustatytas įYVG6PKplG6ugGOw
.Tinklas: „Elasticsearch“ klausosi visose tinklo sąsajose(
network.host=0.0.0.0
).JVM atmintis: sukonfigūruota
-Xms1g
(pradinė atmintis) ir-Xmx1g
(maksimali atmintis).
b. Ports ir Volumes
Ports: Prievadas
9200
(HTTP) ir9300
(vidinis ryšys) susiejami iš konteinerio su pagrindiniu kompiuteriu.Volumes: Elasticsearch duomenys saugomi
elasticsearch-data
tome.
c. Sveikatos patikrinimas
Būsenos patikra nustatyta, kad būtų galima stebėti Elasticsearch būseną, paskambinus /_cluster/health
API su elastic
vartotoju. Jei API neatsako, sudėtinis rodinys bus paleistas iš naujo.
2. Kibana
a. Pagrindinė konfigūracija
Kibana sukonfigūruotas prisijungti Elasticsearch prie Docker konteinerio ir paleisti jame su šiais parametrais:
Vaizdas: naudojamas oficialus Kibana vaizdas, versija .
8.17.2
Elasticsearch Ryšys: adresas Elasticsearch nustatytas į
http://elasticsearch:9200
.Autentifikavimas: „Kibana“ naudoja
kibana_user
su slaptažodžiuYVG6PKplG6ugGOw
, kad prisijungtų prie Elasticsearch.
b. Ports ir tinklai
Ports: prievadas
5601
susietas iš konteinerio su pagrindiniu kompiuteriu, kad būtų galima pasiekti Kibana sąsają.Tinklai: Kibana yra prijungta prie
elk-network
.
c. Priklausomybė nuo Elasticsearch
Kibana prasideda tik po to, kai Elasticsearch yra paruošta, užtikrinant sėkmingą dviejų paslaugų ryšį.
3. Apimtis ir tinklas
a. Apimtis
elasticsearch-data: šis tūris naudojamas Elasticsearch duomenims saugoti, užtikrinant duomenų išlikimą, net jei konteineris ištrintas.
b. Tinklas
elk-network: Tinklas
bridge
sukurtas prisijungti Elasticsearch ir Kibana aptarnauti.
4. Kaip naudoti
a. Paslaugų paleidimas
Norėdami pradėti Elasticsearch ir Kibana, paleiskite šią komandą:
b. Vartotojo sukūrimas Kibana(jei reikia)
Jei norite naudoti skirtą vartotoją Kibana, galite jį sukurti naudodami šią komandą:
Norėdami naudoti token ne slaptažodį, galite sukurti jį naudodami šią komandą:
5. Trikčių šalinimas
Jei atsiranda klaidų, galite patikrinti sudėtinio rodinio žurnalus naudodami:
Norėdami paleisti iš naujo Kibana:
Docker Compose Visas failo turinys
Žemiau pateikiamas visas failo turinys docker-compose-els.yml
:
Išvada
Naudodami šią Docker Compose konfigūraciją galite lengvai įdiegti Elasticsearch ir Kibana patenkinti duomenų paieškos, analizės ir vizualizavimo poreikius. Tinkinkite ir išplėskite šią konfigūraciją, kad ji atitiktų konkrečius jūsų projekto reikalavimus!