ამ სტატიაში ჩვენ განვიხილავთ როგორ განვათავსოთ Elasticsearch და Kibana გამოიყენოთ Docker Compose. ეს არის ELK Stack-ის ორი ძირითადი კომპონენტი( Elasticsearch, Logstash, Kibana), რომელიც გეხმარებათ მონაცემების ეფექტურად ძიებაში, გაანალიზებაში და ვიზუალიზაციაში. ქვემოთ მოცემულია დეტალური კონფიგურაციები და როგორ მუშაობს თითოეული კომპონენტი.
1. Elasticsearch
ა. ძირითადი კონფიგურაცია
Elasticsearch კონფიგურირებულია Docker კონტეინერში გასაშვებად შემდეგი პარამეტრებით:
გამოსახულება: გამოყენებულია ოფიციალური Elasticsearch სურათი, ვერსია .
8.17.2
ერთი კვანძის რეჟიმი: ჩართულია გარემოს ცვლადის მეშვეობით
discovery.type=single-node
.უსაფრთხოება: X-Pack-ის უსაფრთხოება ჩართულია(
xpack.security.enabled=true
) და მომხმარებლისთვის პაროლიelastic
დაყენებულიაYVG6PKplG6ugGOw
.ქსელი: Elasticsearch უსმენს ქსელის ყველა ინტერფეისს(
network.host=0.0.0.0
).JVM მეხსიერება: კონფიგურირებულია
-Xms1g
(საწყისი მეხსიერებით) და-Xmx1g
(მაქსიმალური მეხსიერებით).
ბ. Ports და Volumes
Ports: პორტი
9200
(HTTP) და9300
(შიდა კომუნიკაცია) დატანილია კონტეინერიდან ჰოსტამდე.Volumes: Elasticsearch მონაცემები ინახება მოცულობაში
elasticsearch-data
.
გ. ჯანმრთელობის შემოწმება
ჯანმრთელობის შემოწმება დაყენებულია Elasticsearch მომხმარებლის სტატუსის მონიტორინგისთვის /_cluster/health
API-ზე დარეკვით elastic
. თუ API ვერ პასუხობს, კონტეინერი გადაიტვირთება.
2. Kibana
ა. ძირითადი კონფიგურაცია
Kibana Elasticsearch კონფიგურირებულია Docker კონტეინერში დასაკავშირებლად და გასაშვებად შემდეგი პარამეტრებით:
გამოსახულება: გამოყენებულია ოფიციალური Kibana სურათი, ვერსია .
8.17.2
Elasticsearch კავშირი: მისამართი Elasticsearch დაყენებულია
http://elasticsearch:9200
.ავთენტიფიკაცია: Kibana იყენებს
kibana_user
პაროლსYVG6PKplG6ugGOw
, რომ დაუკავშირდეს Elasticsearch.
ბ. Ports და ქსელები
Ports: პორტი
5601
დატანილია კონტეინერიდან ჰოსტამდე Kibana ინტერფეისის წვდომისთვის.ქსელები: კიბანა დაკავშირებულია
elk-network
.
გ. დამოკიდებულებაზე Elasticsearch
Kibana იწყება მხოლოდ Elasticsearch მზადყოფნის შემდეგ, რაც უზრუნველყოფს ორ სერვისს შორის წარმატებულ კავშირს.
3. მოცულობა და ქსელი
ა. მოცულობა
elasticsearch-data: ეს ტომი გამოიყენება Elasticsearch მონაცემების შესანახად, რაც უზრუნველყოფს მონაცემთა მდგრადობას კონტეინერის წაშლის შემთხვევაშიც კი.
ბ. ქსელი
elk-network: ქსელი
bridge
იქმნება დასაკავშირებლად Elasticsearch და Kibana სერვისებისთვის.
4. როგორ გამოვიყენოთ
ა. სერვისების დაწყება
დასაწყებად Elasticsearch და Kibana აწარმოეთ შემდეგი ბრძანება:
ბ. მომხმარებლის შექმნა Kibana(საჭიროების შემთხვევაში)
თუ გსურთ გამოიყენოთ გამოყოფილი მომხმარებელი Kibana, შეგიძლიათ შექმნათ ერთი შემდეგი ბრძანებით:
პაროლის ნაცვლად გამოსაყენებლად token, შეგიძლიათ შექმნათ ის შემდეგი ბრძანებით:
5. პრობლემების მოგვარება
თუ შეცდომებს წააწყდებით, შეგიძლიათ შეამოწმოთ კონტეინერის ჟურნალი:
გადატვირთვისთვის Kibana:
Docker Compose ფაილის სრული შინაარსი
ქვემოთ მოცემულია ფაილის სრული შინაარსი docker-compose-els.yml
:
დასკვნა
ამ Docker Compose კონფიგურაციით, თქვენ შეგიძლიათ მარტივად განათავსოთ Elasticsearch და Kibana მოემსახუროთ თქვენი მონაცემთა ძიების, ანალიზისა და ვიზუალიზაციის საჭიროებებს. დააკონფიგურირეთ და გააფართოვეთ ეს კონფიგურაცია თქვენი პროექტის სპეციფიკური მოთხოვნების შესაბამისად!