VPS पर Uptime Kuma: वेबसाइट और सर्वर मॉनिटरिंग कैसे सेट करें

2 मिनट पढ़ा
Tropic
VPS पर Uptime Kuma: वेबसाइट और सर्वर मॉनिटरिंग कैसे सेट करें

Language: hi

Uptime Kuma: VPS पर अपनी वेबसाइट की मॉनिटरिंग सेट करें

वेबसाइट टूट सकती है, फिर भी 200 OK लौटाती रह सकती है। बैकअप भी बिना किसी स्पष्ट त्रुटि के काम करना बंद कर सकता है। Uptime Kuma दोनों समस्याओं का पता लगाता है: यह वेबसाइट, API, पोर्ट और बैकग्राउंड टास्क जाँचता है और कुछ गलत होने पर सूचना भेजता है।

हम देखेंगे कि मॉनिटरिंग सिस्टम कहाँ रखना चाहिए, इसके लिए किस VPS की ज़रूरत है और Uptime Kuma 2 को कैसे स्थापित करें, HTTPS कैसे चालू करें, Telegram कैसे जोड़ें और स्टेटस पेज कैसे बनाएं।

Uptime Kuma सात चरणों में

  1. मॉनिटर किए जाने वाले प्रोजेक्ट से अलग एक छोटा VPS चुनें।
  2. उस पर एक सबडोमेन पॉइंट करें, जैसे monitor.example.com
  3. Docker स्थापित करें और Uptime Kuma 2 चलाएं।
  4. अंदरूनी पोर्ट 3001 बंद रखें और HTTPS चालू करें।
  5. HTTP-, DNS-, TCP- या push-मॉनिटर बनाएं।
  6. Telegram और आवश्यकता होने पर स्टेटस पेज सेट करें।
  7. अपडेट और डेटा डायरेक्टरी का बाहरी बैकअप कॉन्फ़िगर करें।

Uptime Kuma क्या है

Uptime Kuma स्वयं होस्ट किया जा सकने वाला मुफ़्त और ओपन-सोर्स टूल है। इसका पैनल और जाँचों का इतिहास आपके सर्वर पर रहता है।

यह HTTP(S), TCP पोर्ट, ping, DNS, WebSocket, उत्तरों में टेक्स्ट और JSON, push सिग्नल और Docker कंटेनर मॉनिटर कर सकता है। जाँच का न्यूनतम अंतराल 20 सेकंड है। इसके अलावा दर्जनों नोटिफ़िकेशन चैनल, टू-फ़ैक्टर ऑथेंटिकेशन, लेटेंसी ग्राफ़, TLS प्रमाणपत्र नियंत्रण और कई स्टेटस पेज उपलब्ध हैं।

200 OK के पीछे छिपी त्रुटि का पता कैसे लगाएं

सामान्य HTTP जाँच केवल रिस्पॉन्स कोड देखती है। लेकिन वेब सर्वर खाली पेज या एप्लिकेशन की त्रुटि वाली स्क्रीन दिखाकर भी सफल स्टेटस लौटा सकता है।

अधिक सटीक मॉनिटरिंग के लिए उपयोग करें:

  • Keyword — अपेक्षित वाक्यांश खोजता है, जैसे वेबसाइट का नाम या «अकाउंट पैनल» टेक्स्ट;
  • JSON Query — API उत्तर में किसी मान की जाँच करता है, जैसे status: healthy

इस तरह मॉनिटर केवल पोर्ट की उपलब्धता ही नहीं, बल्कि एप्लिकेशन के सही चलने के कम-से-कम एक अपेक्षित संकेत की मौजूदगी भी सुनिश्चित करता है।

बैकअप और cron टास्क के लिए Push मॉनिटर

Push मॉनिटर किसी सेवा को बार-बार पूछताछ नहीं करता। इसके बजाय वह स्वयं सेवा से आने वाले नियमित सिग्नल की प्रतीक्षा करता है। बैकअप स्क्रिप्ट या cron टास्क सफलतापूर्वक पूरा होने के बाद एक यूनिक URL कॉल करता है। समय पर सिग्नल न मिलने पर Uptime Kuma त्रुटि की सूचना देता है।

इससे «शांत» समस्या का पता चलता है: वेबसाइट चल रही है, लेकिन दैनिक बैकअप कई दिनों से बन ही नहीं रहा।

Uptime Kuma की जगह क्या नहीं लेता

Uptime Kuma मुख्य रूप से उपलब्धता और प्रतिक्रिया समय मॉनिटर करता है। CPU, RAM, डिस्क, लॉग और कंटेनर मेट्रिक्स के लिए इसे Prometheus, Netdata, Zabbix या किसी अन्य मॉनिटरिंग सिस्टम से पूरक करें: Kuma समस्या को बाहर से देखता है, जबकि मेट्रिक्स उसका कारण समझने में मदद करते हैं।

मॉनिटरिंग अलग VPS पर क्यों चलनी चाहिए

यदि Uptime Kuma को वेबसाइट के साथ ही स्थापित किया गया है, तो VPS, नेटवर्क या डेटा सेंटर की विफलता प्रोजेक्ट और मॉनिटरिंग सिस्टम दोनों को बंद कर देगी। नोटिफ़िकेशन भेजा भी नहीं जा सकेगा।

पैनल को अलग VPS पर रखें, और महत्वपूर्ण प्रोजेक्ट के लिए किसी दूसरी जगह या दूसरे प्रदाता का उपयोग करें। स्वयं Kuma को भी बाहरी सेवा से मॉनिटर करना उपयोगी है: किसी को मॉनिटरिंग सिस्टम की भी निगरानी करनी चाहिए।

Uptime Kuma के लिए सर्वर की आवश्यकताएं

प्रोजेक्ट CPU और RAM के लिए कोई सख्त आधिकारिक न्यूनतम तय नहीं करता। छोटी स्थापना के लिए व्यावहारिक शुरुआती कॉन्फ़िगरेशन:

  • 1 vCPU;
  • 1 GB RAM;
  • 10 GB SSD;
  • Ubuntu 24.04 LTS;
  • IPv4;
  • HTTPS के लिए डोमेन या सबडोमेन।

आमतौर पर यह कॉन्फ़िगरेशन कुछ दर्जन सरल जाँचों के लिए पर्याप्त है। सैकड़ों मॉनिटर, लंबे समय तक इतिहास रखने या ब्राउज़र के माध्यम से जाँच करने पर 2 GB RAM या अधिक चुनें।

VPS पर Uptime Kuma कैसे स्थापित करें

उदाहरण में Ubuntu 24.04 और सबडोमेन monitor.example.com का उपयोग किया गया है।

1. DNS और फ़ायरवॉल सेट करें

एक DNS A रिकॉर्ड बनाएं जो VPS के IPv4 पते पर संकेत करे। SSH से कनेक्ट करें और आवश्यक पोर्ट खोलें:

ssh root@SERVER_IP
apt update && apt upgrade -y

ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw --force enable

नया कनेक्शन जाँचने तक वर्तमान SSH सत्र बंद न करें।

2. Docker और Docker Compose स्थापित करें

apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin

docker compose version

3. Uptime Kuma 2 चलाएं

mkdir -p /opt/uptime-kuma
cd /opt/uptime-kuma

cat > compose.yaml <<'EOF'
services:
  uptime-kuma:
    image: louislam/uptime-kuma:2
    restart: unless-stopped
    ports:
      - "127.0.0.1:3001:3001"
    volumes:
      - ./data:/app/data
EOF

docker compose up -d
docker compose ps

टैग :2 का उपयोग करें: latest अभी भी पुरानी v1 शाखा पर जाता है। /app/data डायरेक्टरी स्थानीय डिस्क या सामान्य Docker volume पर रहनी चाहिए। गलत फ़ाइल लॉकिंग वाले NFS और स्टोरेज सिस्टम डेटाबेस को नुकसान पहुंचा सकते हैं।

पोर्ट 3001 केवल 127.0.0.1 पर उपलब्ध है। HTTPS वाला रिवर्स प्रॉक्सी पैनल को बाहर प्रकाशित करेगा।

4. Caddy के साथ HTTPS चालू करें

apt install -y caddy

cat > /etc/caddy/Caddyfile <<'EOF'
monitor.example.com {
    reverse_proxy 127.0.0.1:3001
}
EOF

caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy

यदि DNS VPS की ओर संकेत करता है, तो Caddy अपने-आप TLS प्रमाणपत्र मांगेगा और WebSocket कनेक्शन को प्रॉक्सी करेगा। पैनल को डोमेन या सबडोमेन के रूट पर रखें: example.com/kuma जैसा पता समर्थित नहीं है।

5. एडमिनिस्ट्रेटर खाता बनाएं

https://monitor.example.com खोलें, लंबे और यूनिक पासवर्ड वाला खाता बनाएं और टू-फ़ैक्टर ऑथेंटिकेशन चालू करें।

पहला मॉनिटर कैसे जोड़ें

Add New Monitor पर क्लिक करें और HTTP(s) चुनें:

  1. नाम और पूरा URL दर्ज करें।
  2. अंतराल तय करें, जैसे 60 सेकंड।
  3. नेटवर्क की थोड़ी देर की विफलता को ध्यान में रखने के लिए दो दोबारा प्रयास जोड़ें।
  4. नोटिफ़िकेशन चैनल चुनें।
  5. मॉनिटर सेव करें और सुनिश्चित करें कि सफल जाँचें दिखाई दे रही हैं।

मुख्य वेबसाइट के लिए HTTP और Keyword जाँच उपयोगी हैं। API के लिए health-endpoint और JSON Query इस्तेमाल करें। केवल मॉनिटरिंग के लिए डेटाबेस या एडमिनिस्ट्रेटिव पोर्ट इंटरनेट पर न खोलें; विश्वसनीय नेटवर्क या VPN का उपयोग करें।

बैकअप के लिए Push मॉनिटर का उदाहरण

Push मॉनिटर बनाने के बाद उसका यूनिक URL स्क्रिप्ट के अंत में जोड़ें:

backup-command && \
  curl -fsS "https://monitor.example.com/api/push/SECRET_TOKEN?status=up&msg=backup-ok"

अनुरोध केवल सफल बैकअप के बाद भेजा जाता है। Push टोकन को पासवर्ड मानें: URL जानने वाला कोई भी व्यक्ति झूठा सिग्नल भेज सकता है।

Telegram कैसे कनेक्ट करें

@BotFather के माध्यम से बॉट बनाएं, उसे एक संदेश भेजें और फिर Settings → Notifications → Telegram खोलें। Bot Token और Chat ID दर्ज करें, Test दबाएं और चैनल को अपने मॉनिटर से जोड़ें। महत्वपूर्ण सेवाओं के लिए दूसरा चैनल, जैसे ईमेल, भी जोड़ें।

स्टेटस पेज कैसे बनाएं

Status Pages सेक्शन में मॉनिटर को समूहित किया जा सकता है, वर्तमान स्थिति और उपलब्धता का इतिहास दिखाया जा सकता है, डोमेन तय किया जा सकता है और Maintenance के माध्यम से नियोजित कामों की सूचना दी जा सकती है। आंतरिक IP पते या तकनीकी URL प्रकाशित न करें: ग्राहकों को केवल «वेबसाइट», «API», «अकाउंट पैनल» और «भुगतान» जैसे घटक चाहिए।

Uptime Kuma का अपडेट और बैकअप

बड़े अपडेट से पहले कंटेनर रोकें और डेटा डायरेक्टरी सुरक्षित करें:

cd /opt/uptime-kuma
docker compose down

tar -czf /root/uptime-kuma-$(date +%F).tar.gz \
  data compose.yaml

docker compose up -d

आर्काइव को किसी दूसरे डिवाइस या बाहरी स्टोरेज पर ले जाएं। उसी VPS पर रखी कॉपी सर्वर हटने या डिस्क खराब होने से नहीं बचाएगी।

सामान्य अपडेट के लिए:

cd /opt/uptime-kuma
docker compose pull
docker compose up -d --force-recreate

शुरू होने के बाद docker compose ps जाँचें, पैनल खोलें और एक टेस्ट नोटिफ़िकेशन भेजें।

Uptime Kuma के लिए कौन सा VPS चुनें

छोटी स्थापना के लिए 1 vCPU और 1 GB RAM वाला Linux VPS पर्याप्त है। अधिकतम प्रदर्शन से अधिक स्वतंत्रता महत्वपूर्ण है: मुख्य प्रोजेक्ट उपलब्ध न होने पर भी मॉनिटर चलता रहना चाहिए।

यदि मॉनिटर की जाने वाली सेवाएं किसी दूसरे प्लेटफ़ॉर्म या स्वतंत्र नोड पर हैं, तो Uptime Kuma को tropic.host के VPS पर रखा जा सकता है। Ubuntu, Docker और स्थिर IP से पैनल जल्दी शुरू हो जाता है, और जाँचों की संख्या बढ़ने पर संसाधन बढ़ाए जा सकते हैं।

यदि production पहले से उसी इंफ़्रास्ट्रक्चर में चल रहा है, तो दूसरा नोड चुनें या बाहरी मॉनिटरिंग जोड़ें। विफलता के डोमेन अलग करना CPU में एक और कोर जोड़ने से अधिक उपयोगी है।

आम गलतियां

गलतीसमस्या क्यों हैबेहतर तरीका
मॉनिटरिंग प्रोजेक्ट के साथ चलती हैएक ही विफलता सेवा और नोटिफ़िकेशन दोनों बंद कर देगीअलग VPS या प्लेटफ़ॉर्म का उपयोग करें
पोर्ट 3001 इंटरनेट पर खुला हैपैनल रिवर्स प्रॉक्सी या HTTPS के बिना उपलब्ध हैपोर्ट को 127.0.0.1 से बांधें
केवल 200 स्टेटस कोड जाँचा जाता हैएप्लिकेशन की त्रुटि सफल उत्तर जैसी दिख सकती हैKeyword या JSON Query जोड़ें
latest टैग का उपयोग होता हैयह पुरानी v1 शाखा पर जाता हैlouislam/uptime-kuma:2 का उपयोग करें
बैकअप उसी VPS पर रखा जाता हैसर्वर के साथ वह भी गायब हो जाएगाdata डायरेक्टरी को दूसरी जगह कॉपी करें

निष्कर्ष

Uptime Kuma एक छोटे VPS को वेबसाइट, API, DNS, पोर्ट, प्रमाणपत्र और बैकग्राउंड टास्क के अपने मॉनिटरिंग केंद्र में बदल देता है। Keyword टूटा हुआ पेज खोजने में मदद करता है, JSON Query गलत API उत्तर का पता लगाता है और Push बंद हुए बैकअप या cron टास्क को दिखाता है।

विश्वसनीय कॉन्फ़िगरेशन के लिए मॉनिटरिंग सिस्टम को production से अलग रखें, पोर्ट 3001 बंद रखें, HTTPS और 2FA चालू करें और दो नोटिफ़िकेशन चैनल सेट करें। इसके बाद डेटा डायरेक्टरी का बाहरी बैकअप और स्वयं Uptime Kuma की स्वतंत्र जाँच व्यवस्थित करें।

FAQ

क्या Uptime Kuma मुफ़्त है?

हाँ। प्रोजेक्ट ओपन-सोर्स है और MIT लाइसेंस के तहत वितरित होता है। केवल इंफ़्रास्ट्रक्चर, डोमेन और बाहरी बैकअप के लिए भुगतान करना पड़ता है।

Uptime Kuma को कितनी RAM चाहिए?

छोटी स्थापना के लिए 1 GB RAM से शुरू करना उचित है। सैकड़ों जाँचों, लंबे इतिहास या Browser Engine के लिए 2 GB या अधिक दें।

क्या Uptime Kuma को Docker के बिना स्थापित किया जा सकता है?

हाँ, Node.js और PM2 की मदद से। हालांकि VPS पर Docker Compose को अपडेट करना, स्थानांतरित करना और पुनर्स्थापित करना आमतौर पर आसान है।

क्या Uptime Kuma को डोमेन के बिना इस्तेमाल कर सकते हैं?

तकनीकी रूप से हाँ — IP पते या SSH टनल के माध्यम से। इंटरनेट से स्थायी एक्सेस के लिए HTTPS वाला सबडोमेन अधिक सुरक्षित है।

क्या Uptime Kuma CPU, RAM और डिस्क का उपयोग दिखाता है?

पूर्ण सर्वर-मेट्रिक्स सिस्टम की तरह नहीं। सर्वर संसाधनों के लिए Uptime Kuma को Prometheus, Netdata, Zabbix या किसी अन्य विशेष टूल से पूरक करें।