Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> डेटाबेस

ObjectRocket Elasticsearch पर Kibana 4 के साथ शुरुआत करना

यदि आप अपने लाखों (या अरबों!) Elasticsearch डॉक्यूमेंट्स को आकर्षक चार्ट, ग्राफ़ और टेबल में बदलना चाहते हैं, तो Kibana उत्तर है। एक Elastic उत्पाद के रूप में, यह Elasticsearch के साथ घनिष्ठ रूप से एकीकृत होता है और डेटा के पहाड़ों को समझने के लिए एक उपयोग में आसान इंटरफ़ेस प्रदान करता है।

वर्तमान में, सभी ObjectRocket Elasticsearch इंस्टेंस Kibana 3 के साथ प्री-लोडेड आते हैं, जिसे आप अपने किसी भी Elasticsearch HTTP एंडपॉइंट पर /_plugin/kibana पर एक्सेस कर सकते हैं। हालांकि, Kibana 4 कई सुधारों और नई सुविधाओं का परिचय देता है, इसलिए हम आपके द्वारा ObjectRocket के साथ बनाए गए हर Elasticsearch इंस्टेंस के साथ इसे प्रदान करने के लिए कड़ी मेहनत कर रहे हैं। इस बीच, यह ट्यूटोरियल आपको Docker कंटेनर में चल रहे Kibana 4 का उपयोग करके अपने Elasticsearch इंस्टेंस से कनेक्ट करने के बारे में बताएगा।

पूर्वापेक्षाएँ

यदि आपके पास पहले से Docker इंस्टॉल है और हमारे साथ एक Elasticsearch इंस्टेंस है, तो आप जाने के लिए अच्छे हैं। बस सुनिश्चित करें कि आपके Docker होस्ट का IP पता Elasticsearch इंस्टेंस पर व्हाइटलिस्टेड है और "Docker में Kibana 4 चलाना" खंड नीचे अपने कनेक्शन जानकारी ले जाएं।

Elasticsearch

शुरू करने के लिए, आपको ObjectRocket पर एक Elasticsearch इंस्टेंस की आवश्यकता होगी। यदि आपके पास पहले से एक नहीं है, तो हमारे पास Elasticsearch के साथ शुरुआत करने पर उत्कृष्ट दस्तावेज हैं। हम स्थानीय रूप से Docker चलाने जा रहे हैं, इसलिए ACLs में अपने वर्तमान IP पते (icanhazip.com से) को व्हाइटलिस्ट करना सुनिश्चित करें। एक बार आपका इंस्टेंस चालू हो जाने पर, आपको Kibana 4 से कनेक्ट करने के लिए निम्नलिखित जानकारी की आवश्यकता होगी:

  • आपके इंस्टेंस के लिए HTTPS कनेक्शन स्ट्रिंग, उदा. https://iad1-19999-0.es.objectrocket.com:29999। HA उद्देश्यों के लिए, प्रत्येक इंस्टेंस में चार क्लाइंट नोड्स होते हैं जिनसे आप कनेक्ट कर सकते हैं, हालांकि इस मामले में आपको केवल एक की आवश्यकता होगी।
  • इंस्टेंस पर एक एडमिन उपयोगकर्ता के लिए उपयोगकर्ता नाम/पासवर्ड संयोजन।

Docker

इन दिनों Docker के साथ शुरुआत करने का सबसे आसान तरीका Docker Machine है। इसे इंस्टॉल और कॉन्फ़िगर करना इस लेख के दायरे से बाहर है, लेकिन उनका स्टार्टिंग गाइड शुरू करने के लिए एक अच्छी जगह है।

Docker में Kibana 4 चलाना

अब जब आपके पास एक Elasticsearch इंस्टेंस ऑनलाइन है और Docker इंस्टॉल है, तो Kibana 4 को चालू और चलाने का समय आ गया है!

यदि आप Docker Machine का उपयोग कर रहे हैं, तो अपने वातावरण को उचित रूप से सेट अप करना सुनिश्चित करें:

$ docker-machine ls
NAME   ACTIVE   DRIVER   STATE   URL   SWARM
dockerbox   virtualbox   Running   tcp://192.168.99.100:2376
$ eval "$(docker-machine env dockerbox)"
$ docker ps
CONTAINER ID   IMAGE   COMMAND   CREATED   STATUS   PORTS   NAMES

एनवायरनमेंट फाइल बनाएं

हम जिस Kibana 4 Docker इमेज का उपयोग करेंगे (objectrocket/kibana) के लिए आवश्यक है कि ELASTICSEARCH_URL एनवायरनमेंट वेरिएबल सेट हो ताकि यह जान सके कि Elasticsearch से कैसे कनेक्ट करना है। इस उदाहरण में, हम होस्ट iad1-19999-3.es.objectrocket.com से पोर्ट 29999 (HTTPS) पर उपयोगकर्ता नाम alice और पासवर्ड password के साथ कनेक्ट कर रहे हैं।

$ echo 'ELASTICSEARCH_URL=https://alice:password@iad1-19999-3.es.objectrocket.com:29999' > kibana4.env

नोट: आप इन एनवायरनमेंट वेरिएबल्स को -e फ्लैग के साथ भी पास कर सकते हैं, लेकिन चूंकि उनमें संवेदनशील क्रेडेंशियल्स हैं, उन्हें env फाइल में रखना बुद्धिमानी है।

कंटेनर शुरू करें

अब हम अपना Kibana 4 कंटेनर शुरू कर सकते हैं:

# Use `-p $PORT:5601` if you wish to change the bind port
$ docker run -d --name kibana4 -p 5601:5601 --env-file kibana4.env objectrocket/kibana:4.1.2
Unable to find image 'objectrocket/kibana:4.1.2' locally
4.1.2: Pulling from objectrocket/kibana
8a648f689ddb: Pull complete
6a9f09112d11: Pull complete
98c91eb0b06a: Pull complete
f5030fbbffc3: Pull complete
0a7a2d9eb5d6: Pull complete
1f9563800fc7: Pull complete
f43ab0bd66e0: Pull complete
Digest: sha256:352e95077d0312fa12de6cec3bc66d221391952b8cf98e890cd7324b6b6605ce
Status: Downloaded newer image for objectrocket/kibana:4.1.2
cc341ff14d492a30e106007896201639964bdef6a93d03d497957a2738f5ac24

अपडेट: यदि आप Elasticsearch 2.0+ चला रहे हैं, तो आपको objectrocket/kibana:4.2.0 (या उच्चतर) इमेज का उपयोग करना होगा।

आपके कंटेनर के बनने के बाद, यह docker ps के आउटपुट में दिखाई देना चाहिए:

$ docker ps
CONTAINER ID   IMAGE   COMMAND   CREATED   STATUS   PORTS   NAMES
cc341ff14d49   objectrocket/kibana   "/opt/kibana/run.sh"   About a minute ago   Up About a minute   0.0.0.0:5601->5601/tcp   kibana4

यदि आपको कंटेनर चलाने में समस्या हो रही है, तो अपने ELASTICSEARCH_URL वेरिएबल को दोबारा जांचें और सुनिश्चित करें कि URL का प्रत्येक भाग सही है। यह भी ध्यान देने योग्य है कि @ या : जैसे प्रतीकों वाले पासवर्ड URL स्कीम को तोड़ सकते हैं। आप Kibana द्वारा stdout या stderr पर भेजे गए किसी भी त्रुटि संदेश को दिखाने के लिए docker logs kibana4 भी चला सकते हैं।

Kibana 4 से कनेक्ट करें

अब आप अपने Docker होस्ट पर पोर्ट 5601 (या पिछले चरण में आपके द्वारा चुने गए किसी भी पोर्ट) पर Kibana 4 से कनेक्ट करने में सक्षम होना चाहिए। यदि आप स्थानीय रूप से चला रहे हैं, तो https://localhost:5601 का उपयोग करें। यदि आप Docker Machine चला रहे हैं, तो docker-machine ip से अपने Docker Machine VM का IP पता उपयोग करें, उदा. https://192.168.99.100:5601।

सफलतापूर्वक कनेक्ट होने के बाद, आपको अपने Elasticsearch इंस्टेंस से इंडेक्स का उपयोग करने के लिए Kibana को कॉन्फ़िगर करने की आवश्यकता है। अधिक जानकारी के लिए Elastic से Kibana को Elasticsearch से कनेक्ट करें दस्तावेज देखें। आप Kibana 4 में कुछ प्रमुख विशेषताओं के बारे में अधिक जानने के लिए उनका Kibana के साथ शुरुआत करना गाइड भी पढ़ना चाह सकते हैं।

समापन

जब आप Kibana में विज़ुअलाइज़ेशन बनाना समाप्त कर लेते हैं, तो आप निम्न कमांड चलाकर Docker कंटेनर को रोक सकते हैं:

$ docker stop kibana4
kibana4

और फिर अगली बार जब आप कनेक्ट करना चाहें, तो बस docker start kibana4 चलाएं और आप जाने के लिए तैयार हैं।

जैसा कि पहले उल्लेख किया गया है, होस्टेड Kibana 4 पहले से ही हमारे Elasticsearch उत्पाद पेशकश के लिए काम में है, लेकिन Kibana को स्थानीय रूप से चलाने से आप בינे समय में जल्दी से शुरू कर सकेंगे। और चूंकि Kibana अपनी सभी कॉन्फ़िगरेशन को Elasticsearch इंडेक्स में संग्रहीत करता है, जब आप स्विच करते हैं तो आप अपने किसी भी कीमती डैशबोर्ड या विज़ुअलाइज़ेशन को नहीं खोएंगे!

  1. Filebeat मॉड्यूल के साथ लॉग विश्लेषण सरल बनाएं: त्वरित सेटअप और अंतर्दृष्टि Filebeat मॉड्यूल के साथ लॉग विश्लेषण सरल बनाएं: त्वरित सेटअप और अंतर्दृष्टि

    Elastic{on} 17 के बाद से, हम Elastic Stack में आने वाली सभी नई सुविधाओं के बारे में उत्साहित हैं, विशेष रूप से नई Filebeat मॉड्यूल अवधारणा। आमतौर पर, जब आप Filebeat के साथ डेटा हथियाना शुरू करना चाहते हैं, तो आपको Filebeat को कॉन्फ़िगर करने, एक Elasticsearch मैपिंग टेम्पलेट बनाने, एक इंजेस्ट पाइपलाइ

  1. Filebeat और Elasticsearch इंजेस्ट पाइपलाइन्स के साथ CSV फाइलों को सहजता से पार्स करें Filebeat और Elasticsearch इंजेस्ट पाइपलाइन्स के साथ CSV फाइलों को सहजता से पार्स करें

    Elasticsearch 5 में सबसे अच्छी नई सुविधाओं में से एक इंजेस्ट नोड है, जो Elasticsearch क्लस्टर में कुछ Logstash-शैली प्रोसेसिंग जोड़ता है, ताकि डेटा को इंडेक्स करने से पहले किसी अन्य सर्विस और/या इंफ्रास्ट्रक्चर की आवश्यकता के बिना ट्रांसफॉर्म किया जा सके। थोड़ी देर पहले, हमने Logstash के साथ CSV फाइ

  1. Fluentd और ObjectRocket के साथ हाइब्रिड क्लाउड लॉगिंग को सुव्यवस्थित करें Fluentd और ObjectRocket के साथ हाइब्रिड क्लाउड लॉगिंग को सुव्यवस्थित करें

    यह पोस्ट Hart Hoover और Ryan Walker द्वारा सह-लिखित है हाल ही में, Rackspace DevOps ऑटोमेशन टीम ने एक सेवा की घोषणा की जो New Relic से Rackspace सपोर्ट को अलर्ट भेजती है। ये अलर्ट हमारे DevOps इंजीनियरों के जवाब देने के लिए टिकट जनरेट करेंगे, ताकि हमारे ग्राहक 3 बजे अलर्ट जनरेट होने पर चैन की नींद