या लेखात, आपण कसे तैनात करायचे Elasticsearch आणि Kibana कसे वापरायचे ते शोधू Docker Compose. हे ELK स्टॅक( Elasticsearch, Logstash, Kibana) चे दोन प्रमुख घटक आहेत, जे तुम्हाला डेटा प्रभावीपणे शोधण्यास, विश्लेषण करण्यास आणि दृश्यमान करण्यास मदत करतात. खाली तपशीलवार कॉन्फिगरेशन आणि प्रत्येक घटक कसे कार्य करतो ते दिले आहे.
१. Elasticsearch
अ. मूलभूत संरचना
Elasticsearch खालील पॅरामीटर्ससह डॉकर कंटेनरमध्ये चालविण्यासाठी कॉन्फिगर केले आहे:
प्रतिमा: अधिकृत Elasticsearch प्रतिमा, आवृत्ती
8.17.2, वापरली आहे.सिंगल-नोड मोड: पर्यावरण चल द्वारे सक्षम
discovery.type=single-node.सुरक्षा: एक्स-पॅक सुरक्षा सक्षम केली आहे(
xpack.security.enabled=true), आणि वापरकर्त्यासाठी पासवर्डelasticवर सेट केला आहेYVG6PKplG6ugGOw.नेटवर्क: इलास्टिकसर्च सर्व नेटवर्क इंटरफेस(
network.host=0.0.0.0) वर ऐकते.JVM मेमरी:
-Xms1g(प्रारंभिक मेमरी) आणि-Xmx1g(कमाल मेमरी) सह कॉन्फिगर केलेले .
ब. Ports आणि Volumes
Ports: पोर्ट
9200(HTTP) आणि9300(अंतर्गत संप्रेषण) कंटेनरपासून होस्टपर्यंत मॅप केले जातात.Volumes: इलास्टिकसर्च डेटा व्हॉल्यूममध्ये साठवला जातो
elasticsearch-data.
क. आरोग्य तपासणी
वापरकर्त्यासह API ला Elasticsearch कॉल करून त्याच्या स्थितीचे निरीक्षण करण्यासाठी एक आरोग्य तपासणी सेट केली जाते. जर API प्रतिसाद देत नसेल, तर कंटेनर पुन्हा सुरू होईल. /_cluster/health elastic
२. Kibana
अ. मूलभूत संरचना
Kibana Elasticsearch खालील पॅरामीटर्ससह डॉकर कंटेनरशी कनेक्ट होण्यासाठी आणि चालविण्यासाठी कॉन्फिगर केले आहे:
प्रतिमा: अधिकृत Kibana प्रतिमा, आवृत्ती
8.17.2, वापरली आहे.Elasticsearch कनेक्शन: पत्ता Elasticsearch वर सेट केला आहे
http://elasticsearch:9200.प्रमाणीकरण: किबाना शी कनेक्ट होण्यासाठी
kibana_userपासवर्डसह वापरते.YVG6PKplG6ugGOwElasticsearch
b. Ports आणि नेटवर्क्स
Ports:
5601इंटरफेसमध्ये प्रवेश करण्यासाठी कंटेनरपासून होस्टपर्यंत पोर्ट मॅप केला जातो Kibana.नेटवर्क्स: किबाना शी जोडलेले आहे
elk-network.
c. अवलंबित्व Elasticsearch
Kibana तयार झाल्यानंतरच सुरू होते Elasticsearch, ज्यामुळे दोन्ही सेवांमध्ये यशस्वी कनेक्शन सुनिश्चित होते.
३. व्हॉल्यूम आणि नेटवर्क
अ. खंड
elasticsearch-data: हा व्हॉल्यूम डेटा साठवण्यासाठी वापरला जातो Elasticsearch, ज्यामुळे कंटेनर हटवला तरीही डेटा टिकून राहतो.
ब. नेटवर्क
एल्क-नेटवर्क:
bridgeकनेक्ट करण्यासाठी Elasticsearch आणि सेवा देण्यासाठी नेटवर्क तयार केले जाते Kibana.
४. कसे वापरावे
अ. सेवा सुरू करणे
सुरू करण्यासाठी Elasticsearch आणि करण्यासाठी Kibana, खालील आदेश चालवा:
docker-compose up -d
b. Kibana वापरकर्ता तयार करणे(जर आवश्यक असेल तर)
जर तुम्हाला साठी समर्पित वापरकर्ता वापरायचा असेल Kibana, तर तुम्ही खालील आदेश वापरून एक तयार करू शकता:
docker exec -it elasticsearch /bin/elasticsearch-users useradd kibana_user -p you_password-r kibana_system
token पासवर्डऐवजी a वापरण्यासाठी, तुम्ही खालील कमांड वापरून एक तयार करू शकता:
docker exec -it elasticsearch /usr/share/elasticsearch/bin/elasticsearch-service-tokens create elastic/kibana kibana-token
५. समस्यानिवारण
जर तुम्हाला त्रुटी आढळल्या, तर तुम्ही कंटेनर लॉग वापरून तपासू शकता:
docker logs elasticsearch docker logs kibanaपुन्हा सुरू करण्यासाठी Kibana:
Docker Compose फाईलची संपूर्ण सामग्री
खाली फाईलची संपूर्ण सामग्री आहे docker-compose-els.yml :
version: '3.7'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.17.2
container_name: elasticsearch
environment:
- discovery.type=single-node
- xpack.security.enabled=true
- ELASTIC_PASSWORD=you_password
- network.host=0.0.0.0
- ES_JAVA_OPTS=-Xms1g -Xmx1g
ports:
- '9200:9200'
- '9300:9300'
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
ulimits:
memlock:
soft: -1
hard: -1
networks:
- elk-network
healthcheck:
test: ["CMD-SHELL", "curl -u elastic:YVG6PKplG6ugGOw --silent --fail localhost:9200/_cluster/health || exit 1"]
interval: 10s
retries: 5
start_period: 30s
timeout: 5s
kibana:
image: docker.elastic.co/kibana/kibana:8.17.2
container_name: kibana
ports:
- '5601:5601'
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- ELASTICSEARCH_USERNAME=kibana_user
- ELASTICSEARCH_PASSWORD=you_password
networks:
- elk-network
depends_on:
elasticsearch:
condition: service_healthy
volumes:
elasticsearch-data:
driver: local
networks:
elk-network:
driver: bridge
निष्कर्ष
या Docker Compose कॉन्फिगरेशनसह, तुम्ही तुमच्या डेटा शोध, विश्लेषण आणि व्हिज्युअलायझेशन गरजा सहजपणे तैनात करू शकता Elasticsearch आणि Kibana पूर्ण करू शकता. तुमच्या प्रोजेक्टच्या विशिष्ट आवश्यकतांनुसार हे कॉन्फिगरेशन कस्टमाइझ आणि वाढवा!

