"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > प्रोमेथियस मॉनिटरिंग के लिए गैलेरा क्लस्टर नोड्स पर MariaDB/MySQL एक्सपोर्टर कैसे सेट करें

प्रोमेथियस मॉनिटरिंग के लिए गैलेरा क्लस्टर नोड्स पर MariaDB/MySQL एक्सपोर्टर कैसे सेट करें

2024-11-08 को प्रकाशित
ब्राउज़ करें:632

How to Set Up MariaDB/MySQL Exporter on Galera Cluster Nodes for Prometheus Monitoring

हैलो, समुदाय के लिए देव! ?

इस पोस्ट में, मैं आपको प्रोमेथियस के साथ निगरानी के लिए गैलेरा क्लस्टर नोड्स पर मारियाडीबी/माईएसक्यूएल एक्सपोर्टर स्थापित करने के लिए उठाए गए कदमों के बारे में बताऊंगा। मेरे मामले में, मैं अपने क्लाउड सर्वर प्रदाता पर तीन नोड्स के साथ एक मारियाडीबी गैलेरा क्लस्टर चला रहा हूं और अपने सेटअप की निगरानी के लिए प्रोमेथियस ग्राफाना का उपयोग कर रहा हूं। गैलेरा क्लस्टर सेटअप और मॉनिटरिंग उपकरण अविश्वसनीय रूप से उपयोगी रहे हैं, लेकिन मारियाडीबी से सही मेट्रिक्स प्राप्त करना आसान नहीं था, इसलिए मैंने अपने समाधान का दस्तावेजीकरण करने का फैसला किया।

मारियाडीबी और गैलेरा क्लस्टर मेट्रिक्स जैसे प्रति सेकंड प्रश्नों की संख्या, कनेक्शन, प्रतिकृति स्थिति इत्यादि की निगरानी करने के लिए, आपको प्रोमेथियस के साथ संयोजन में एक MySQL निर्यातक का उपयोग करने की आवश्यकता है। यह निर्यातक गैलेरा और मारियाडीबी आंकड़ों सहित डेटाबेस-विशिष्ट मेट्रिक्स को उजागर करेगा।

गैलेरा क्लस्टर नोड्स पर MariaDB/MySQL निर्यातक स्थापित करने के चरण:

आवश्यक शर्तें

  • एक मारियाडीबी गैलेरा क्लस्टर एकाधिक नोड्स के साथ।
  • एक प्रोमेथियस सर्वर चालू है और चल रहा है।
  • ग्राफाना मेट्रिक्स को विज़ुअलाइज़ करने के लिए (वैकल्पिक लेकिन अनुशंसित)।
  • निर्यातक को स्थापित करने के लिए नोड्स तक पहुंच।

नोट: आप अपने क्लाउड सर्वर प्रदाता के मार्केटप्लेस पर पहले से ही प्रोमेथियस ग्राफाना की मशीनों का उपयोग कर सकते हैं। हेट्ज़नर, डिजिटलोसियन

चरण 1: MySQL/MariaDB निर्यातक स्थापित करें

प्रत्येक गैलेरा नोड पर, हमें MySQL एक्सपोर्टर स्थापित करने की आवश्यकता है, जो मेट्रिक्स एकत्र करता है और उन्हें प्रोमेथियस के लिए उजागर करता है। यहां बताया गया है कि आप ऐसा कैसे कर सकते हैं:

आधिकारिक स्रोत से निर्यातक को डाउनलोड और इंस्टॉल करें

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz

फ़ाइलें निकालें

tar xvfz mysqld_exporter-0.15.1.linux-amd64.tar.gz

बाइनरी को सिस्टम पथ पर ले जाएँ

sudo cp mysqld_exporter-0.15.1.linux-amd64/mysqld_exporter /usr/local/bin/

निर्यातक के लिए एक सिस्टम उपयोगकर्ता जोड़ें

sudo useradd -rs /bin/false mysqld_exporter

चरण 2: निर्यातक को MySQL/MariaDB क्रेडेंशियल के साथ कॉन्फ़िगर करें

निर्यातक को MariaDB मेट्रिक्स तक पहुंच की आवश्यकता है। कनेक्शन क्रेडेंशियल संग्रहीत करने के लिए निर्यातक की होम निर्देशिका में एक .my.cnf फ़ाइल बनाएं:

sudo mkdir /etc/.mysqld_exporter
सुडो नैनो /etc/.mysqld_exporter/.my.cnf

फ़ाइल में निम्नलिखित जोड़ें:


[client]
user=exporter
password=yourpassword


सुनिश्चित करें कि उपयोगकर्ता के पास आवश्यक मेट्रिक्स तक पहुंचने के लिए उचित अनुमतियां हैं:

एक्सेस के लिए mysql -u root या mariadb -u root का उपयोग करें

'आपके पासवर्ड' द्वारा पहचाना गया उपयोगकर्ता 'निर्यातक'@'लोकलहोस्ट' बनाएं;
अनुदान प्रक्रिया, प्रतिकृति ग्राहक, *.* पर 'exporter'@'localhost' का चयन करें;
फ्लश विशेषाधिकार;

चरण 3: निर्यातक को एक सेवा के रूप में स्थापित करें

यह सुनिश्चित करने के लिए कि MySQL एक्सपोर्टर बूट पर शुरू हो, आइए इसे एक सिस्टमडी सेवा के रूप में कॉन्फ़िगर करें:

sudo nano /etc/systemd/system/mysqld_exporter.service

फ़ाइल में निम्नलिखित सामग्री जोड़ें:


[Unit]
Description=Prometheus MySQL Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=mysqld_exporter
Group=mysqld_exporter
ExecStart=/usr/local/bin/mysqld_exporter \
  --config.my-cnf=/etc/.mysqld_exporter/.my.cnf

[Install]
WantedBy=multi-user.target


फ़ाइल सहेजें और सिस्टम पुनः लोड करें:

sudo systemctl डेमॉन-रीलोड
sudo systemctl mysqld_exporter प्रारंभ करें
sudo systemctl mysqld_exporter सक्षम करें

चरण 4: प्रोमेथियस में निर्यातक लक्ष्य जोड़ें

इसके बाद, नोड्स से मेट्रिक्स को स्क्रैप करने के लिए अपने प्रोमेथियस कॉन्फ़िगरेशन को अपडेट करें। अपनी prometheus.yml फ़ाइल में निम्नलिखित जोड़ें:

इससे पहले आप यहां जाकर जांच सकते हैं कि MySQL एक्सपोर्टर चल रहा है या नहीं:

कर्ल http://:9104/मेट्रिक्स

उदाहरण के लिए इस फ़ाइल तक पहुंचने के लिए prometheus.yml का उपयोग करें:
सुडो नैनो /opt/containers/prometheus-grafana/prometheus/prometheus.yml

स्क्रैप_कॉन्फ़िग्स के अंदर जोड़ें::


- job_name: 'mariadb-galera'
  static_configs:
    - targets: ['node1-ip:9104', 'node2-ip:9104', 'node3-ip:9104']


कृपया आपको अपने डेटाबेस नोड्स का आईपी बताएं

फिर, प्रोमेथियस को पुनः लोड करें:

sudo systemctl पुनः लोड प्रोमेथियस

चरण 5: ग्राफ्टाना में विज़ुअलाइज़ करें

यदि आप ग्राफाना का उपयोग कर रहे हैं, तो आप MySQL/MariaDB मॉनिटरिंग के लिए पूर्व-निर्मित डैशबोर्ड आयात कर सकते हैं। MySQL/MariaDB मेट्रिक्स के लिए एक लोकप्रिय डैशबोर्ड आईडी 7362 है।

आयात करना:

  1. ग्राफाना खोलें।
  2. डैशबोर्ड > आयात पर जाएँ।
  3. "Grafana.com डैशबोर्ड" फ़ील्ड में 7362 दर्ज करें, फिर लोड पर क्लिक करें।

अब आपको अपने ग्राफाना डैशबोर्ड में अपने मारियाडीबी गैलेरा क्लस्टर नोड्स से विस्तृत मेट्रिक्स देखना चाहिए!

निष्कर्ष

प्रत्येक गैलेरा क्लस्टर नोड पर मारियाडीबी एक्सपोर्टर की स्थापना के साथ, प्रोमेथियस अब प्रमुख डेटाबेस मेट्रिक्स को स्क्रैप और मॉनिटर कर सकता है। यह सेटअप आपके क्लस्टर के स्वास्थ्य और प्रदर्शन के बारे में बेहतर जानकारी प्रदान करता है, जिससे आवश्यकतानुसार समस्या निवारण और अनुकूलन करना आसान हो जाता है।

यदि आप कुछ इसी तरह की व्यवस्था कर रहे हैं या आपके पास कोई सुझाव है तो बेझिझक नीचे कोई प्रश्न या टिप्पणी छोड़ें। पढ़ने के लिए धन्यवाद!

विज्ञप्ति वक्तव्य इस लेख को यहां पुन: प्रस्तुत किया गया है: https://dev.to/alidhamia/how-to-set-up-mariadbmysql-exporter-on-galera-cluster-nodes-for-prometheus-monitoring-4b3l?1 यदि कोई उल्लंघन है , कृपया स्टडी_गोलंग @163.कॉमडिलीट से संपर्क करें
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3