Uptime Kuma . के साथ वेबसाइट और एप्लिकेशन की निगरानी कैसे करें


अपटाइम कुमा एक फैंसी स्व-होस्टेड निगरानी उपकरण है जिसका उपयोग आप वास्तविक समय में वेबसाइटों और अनुप्रयोगों की निगरानी के लिए कर सकते हैं।

  • HTTP(s) वेबसाइटों, TCP पोर्ट और Docker कंटेनरों के लिए अपटाइम की निगरानी करता है और DNS रिकॉर्ड जैसी जानकारी को पुनः प्राप्त करता है।
  • ईमेल (SMTP), Telegram, Discord, Microsoft Teams, Slack, Promo SMS, Gotify, और 90+ अधिसूचना सेवाओं के माध्यम से सूचनाएं भेजता है।
  • कई भाषाओं का समर्थन करता है।
  • एकाधिक स्थिति पृष्ठ प्रदान करता है।
  • प्रॉक्सी सहायता प्रदान करता है।
  • एसएसएल प्रमाणपत्र जानकारी प्रदर्शित करता है।
  • मानचित्र स्थिति पृष्ठ से डोमेन।

इस गाइड में, आप सीखेंगे कि अपटाइम कुमा स्व-होस्टेड निगरानी उपकरण कैसे स्थापित करें और आप उपकरण का उपयोग करके वेबसाइटों की निगरानी कैसे कर सकते हैं।

प्रदर्शन के लिए, हम उबंटू 20.04 पर अपटाइम कुमा मॉनिटरिंग टूल इंस्टॉल करेंगे। वही निर्देश डेबियन डेरिवेटिव पर भी काम करते हैं।

चरण 1: Linux में Node.JS स्थापित करना

आरंभ करने के लिए, अपने सर्वर में लॉग इन करें और स्थानीय पैकेज इंडेक्स को अपडेट करें।

$ sudo apt update
$ sudo dnf update

चूंकि Uptime Kuma Node.JS में लिखा गया है, इसलिए आगे बढ़ने से पहले आपको Node.JS इंस्टॉल करना होगा। हम नवीनतम एलटीएस रिलीज स्थापित करेंगे, जो इस गाइड को लिखने के समय, नोड.जेएस 16.x है।

सबसे पहले, अपने सिस्टम में Nodesource रिपॉजिटरी जोड़ें। ऐसा करने के लिए, रूट उपयोगकर्ता पर स्विच करें।

$ sudo su

फिर निम्नलिखित कर्ल कमांड का उपयोग करके अपने सिस्टम में Nodesource 16.x रिपॉजिटरी जोड़ें।

$ curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -   [On Debian systems]
$ curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -   [On RHEL systems]

कमांड इंस्टॉलेशन स्क्रिप्ट को डाउनलोड करता है जो पैकेज लिस्ट को अपडेट करता है, नोडसोर्स साइनिंग की जोड़ता है और नोडसोर्स 16.x रिपॉजिटरी के लिए एक dnf लिस्ट फाइल बनाता है।

एक बार Nodesource रिपॉजिटरी जोड़ लेने के बाद, दिखाए गए अनुसार पैकेज मैनेजर का उपयोग करके Node.JS इंस्टॉल करें।

$ sudo apt install nodejs -y   [On Debian systems]
$ sudo dnf install nodejs -y   [On RHEL systems]

एक बार स्थापित होने के बाद, दिखाए गए अनुसार स्थापित NodeJS के संस्करण की पुष्टि करें।

$ node --version

V16.17.0

चरण 2: लिनक्स में अपटाइम कुमा स्थापित करना

एक बार Node.JS इंस्टॉल हो जाने के बाद, अब आप Uptime Kuma मॉनिटरिंग टूल को इंस्टॉल करने के लिए आगे बढ़ सकते हैं। सबसे पहले, GitHub से Uptime Kuma रिपॉजिटरी को क्लोन करें।

# git clone https://github.com/louislam/uptime-kuma.git

इसके बाद, Uptime Kuma डायरेक्टरी में नेविगेट करें।

# cd uptime-kuma/

फिर, निम्न आदेश का उपयोग करके निगरानी उपकरण सेट करें:

# npm run setup

चरण 3: अपटाइम कुमा को pm2 . के साथ चलाएं

PM2 NodeJS अनुप्रयोगों के लिए एक उत्पादन प्रक्रिया प्रबंधक है जो एक लोड बैलेंसर प्रदान करता है और अनुप्रयोगों को अनिश्चित काल तक जीवित रखने में मदद करता है और बिना किसी रुकावट या सेवा डाउनटाइम के उन्हें पुनः लोड करता है।

PM2 डेमॉन को स्थापित करने के लिए, अपटाइम-कुमा निर्देशिका में रहते हुए निम्न कमांड चलाएँ।

# npm install [email  -g

इसके बाद, दिखाए गए अनुसार pm2 डेमॉन चलाएँ।

# pm2 start npm --name uptime-kuma -- run start-server -- --port=3001 --hostname=127.0.0.1

कमांड निम्न आउटपुट उत्पन्न करता है।

आप PM2 लॉग्स को दिखाए गए अनुसार देख सकते हैं।

# pm2 logs

इसके बाद, Node.js एप्लिकेशन को रीबूट के बाद प्रारंभ करने के लिए सक्षम करें।

# pm2 startup

इसके बाद, दिखाए गए अनुसार एप्लिकेशन स्टेट को सेव करें।

# pm2 save

इसके बाद, आपको अपाचे वेब को स्थापित करना होगा और बाद में इसे अपटाइम कुमा के लिए रिवर्स प्रॉक्सी के रूप में काम करने के लिए कॉन्फ़िगर करना होगा।

$ sudo apt install apache2 -y   [On Debian systems]
$ sudo dnf install httpd -y     [On RHEL systems]

एक बार स्थापित हो जाने पर, निम्नलिखित मॉड्यूल सक्षम करें जो डेबियन-आधारित सिस्टम पर निगरानी उपकरण के लिए आवश्यक होंगे।

# a2enmod ssl proxy proxy_ajp proxy_wstunnel proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html

इसके बाद, Uptime Kuma के लिए एक वर्चुअल होस्ट फ़ाइल बनाएँ।

$ sudo nano /etc/apache2/sites-available/uptime-kuma.conf   [On Debian systems]
$ sudo vi /etc/httpd/conf.d/uptime-kuma.conf                [On RHEL systems]

कोड की निम्नलिखित पंक्तियों को चिपकाएँ। ServerName निर्देश के लिए, अपने सर्वर का पूर्णतः योग्य डोमेन नाम या सार्वजनिक IP पता निर्दिष्ट करें।

<VirtualHost *:80>
  ServerName kuma.example.com

  ProxyPass / http://localhost:3001/
  RewriteEngine on
  RewriteCond %{HTTP:Upgrade} websocket [NC]
  RewriteCond %{HTTP:Connection} upgrade [NC]
  RewriteRule ^/?(.*) "ws://localhost:3001/$1" [P,L]
</VirtualHost>

फ़ाइल को सहेजें और बाहर निकलें।

फिर अपटाइम कुमा के लिए अपाचे वर्चुअल होस्ट को सक्रिय करें जैसा कि डेबियन-आधारित सिस्टम पर दिखाया गया है।

$ sudo a2ensite uptime-kuma

फिर परिवर्तनों को प्रभावी करने के लिए अपाचे वेब सेवा को पुनरारंभ करें।

$ sudo systemctl restart apache2   [On Debian systems]
$ sudo systemctl restart httpd     [On RHEL systems]

चरण 5: वेबयूआई से अपटाइम कुमा तक पहुंचें

Uptime Kuma के स्थापित और पूरी तरह से कॉन्फ़िगर होने के साथ, अपना ब्राउज़र लॉन्च करें और अपने सर्वर के डोमेन नाम या सार्वजनिक IP पते पर जाएँ।

http://server-ip
OR
http://domain-name

वेबयूआई दिखाए गए अनुसार दिखाई देगा और आपको एक व्यवस्थापक खाता बनाना होगा। इसलिए, उपयोगकर्ता नाम और पासवर्ड प्रदान करें और एक प्रशासक खाता बनाने के लिए 'बनाएं' पर क्लिक करें।

यह आपको Uptime Kuma के डैशबोर्ड में लॉग इन करेगा। किसी वेबसाइट की निगरानी शुरू करने के लिए, 'नया मॉनिटर जोड़ें' बटन पर क्लिक करें। उस साइट का विवरण भरें जिसे आप मॉनिटर करना चाहते हैं।

कुछ ही समय बाद, Uptime Kuma आपकी साइट की निगरानी करना शुरू कर देगा और दिखाए गए अनुसार विभिन्न अपटाइम मेट्रिक्स प्रदान करेगा।

और बस! हमने Uptime Kuma को सफलतापूर्वक स्थापित और कॉन्फ़िगर किया है और एक वेबसाइट की निगरानी करने में कामयाब रहे हैं। इस गाइड पर आपकी प्रतिक्रिया का स्वागत है।