Language: ka
Uptime Kuma: საკუთარი ვებსაიტის მონიტორინგის მოწყობა VPS-ზე
ვებსაიტი შეიძლება გაფუჭდეს და ამავდროულად 200 OK დააბრუნოს. სარეზერვო დავალებამ შეიძლება მუშაობა შესამჩნევი შეცდომის გარეშე შეწყვიტოს. Uptime Kuma ორივე პრობლემას აღმოაჩენს: ამოწმებს ვებსაიტებს, API-ებს, პორტებსა და ფონურ დავალებებს, შემდეგ კი შეცდომის შემთხვევაში შეტყობინებას აგზავნის.
ეს სახელმძღვანელო ხსნის, სად უმჯობესია მონიტორინგის სისტემის განთავსება, როგორი VPS არის საჭირო და როგორ დააყენოთ Uptime Kuma 2, ჩართოთ HTTPS, დააკავშიროთ Telegram და შექმნათ სტატუსის გვერდი.
Uptime Kuma შვიდ ნაბიჯად
- მონიტორინგისთვის განკუთვნილი პროექტებისგან ცალკე მოამზადეთ პატარა Linux VPS.
- მასზე მიუთითეთ ისეთი subdomain, როგორიცაა
monitor.example.com. - დააყენეთ Docker და გაუშვით Uptime Kuma 2.
- დახურეთ შიდა პორტი
3001და ჩართეთ HTTPS. - შექმენით HTTP, DNS, TCP ან push მონიტორები.
- დააკონფიგურირეთ Telegram და, საჭიროების შემთხვევაში, სტატუსის გვერდი.
- მოაწყვეთ განახლებები და data დირექტორიის გარე სარეზერვო ასლი.
სერვისის დასაწყებად AI-ის გასაღები საჭირო არ არის. მის გარეშე გვერდების შენახვა, სიები, შენიშვნები, OCR და სრულტექსტიანი ძიება მუშაობას გააგრძელებს. ავტომატური ტეგები და შეჯამებები არ შეიქმნება.
რა არის Uptime Kuma?
Uptime Kuma არის უფასო, open-source და self-hosted მონიტორინგის ინსტრუმენტი. მისი პანელი და შემოწმებების ისტორია თქვენს საკუთარ სერვერზე ინახება.
მას შეუძლია HTTP(S)-ის, TCP პორტების, ping-ის, DNS-ის, WebSocket-ის, პასუხებში ტექსტისა და JSON-ის, push სიგნალებისა და Docker კონტეინების მონიტორინგი. შემოწმების მინიმალური ინტერვალი 20 წამია. ხელმისაწვდომია შეტყობინების ათობით არხი, ორფაქტორიანი ავთენტიფიკაცია, დაყოვნების გრაფიკები, TLS სერტიფიკატების შემოწმება და რამდენიმე სტატუსის გვერდი.
როგორ აღმოვაჩინოთ 200 OK-ის მიღმა დამალული შეცდომა
ჩვეულებრივი HTTP შემოწმება მხოლოდ პასუხის კოდს ხედავს. თუმცა ვებ-სერვერმა შეიძლება ცარიელი გვერდი ან აპლიკაციის შეცდომის ეკრანი აჩვენოს და მაინც წარმატების სტატუსი დააბრუნოს.
უფრო ზუსტი მონიტორინგისთვის გამოიყენეთ:
- Keyword — ეძებს მოსალოდნელ ფრაზას, მაგალითად საიტის სახელს ან ტექსტს “Account dashboard”;
- JSON Query — ამოწმებს მნიშვნელობას API-ის პასუხში, მაგალითად
status: healthy.
ასე მონიტორი მხოლოდ პორტის ხელმისაწვდომობას კი არ ამოწმებს, არამედ იმასაც, რომ აპლიკაციაში სწორი მუშაობის სულ მცირე ერთი მოსალოდნელი ნიშანი არსებობს.
Push მონიტორი სარეზერვო ასლებისა და cron დავალებებისთვის
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;
- დომენი ან subdomain HTTPS-ისთვის.
ეს კონფიგურაცია ჩვეულებრივ რამდენიმე ათეული მარტივი შემოწმებისთვის საკმარისია. ასობით მონიტორის, ხანგრძლივი ისტორიის ან ბრაუზერზე დაფუძნებული შემოწმებისთვის აირჩიეთ 2 GB RAM ან მეტი.
როგორ დავაყენოთ Uptime Kuma VPS-ზე
მაგალითში გამოყენებულია Ubuntu 24.04 და subdomain monitor.example.com.
1. DNS-ისა და firewall-ის კონფიგურაცია
შექმენით A DNS ჩანაწერი, რომელიც 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 version3. 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-ის მოძველებულ branch-ზე მიუთითებს. /app/data დირექტორია ადგილობრივ დისკზე ან Docker-ის ჩვეულებრივ volume-ში უნდა ინახებოდეს. NFS-მა და ფაილების სწორად ჩაკეტვის გარეშე შენახვის სისტემებმა შეიძლება მონაცემთა ბაზა დააზიანოს.
პორტი 3001 მხოლოდ 127.0.0.1-ზეა ხელმისაწვდომი. HTTPS reverse proxy პანელს გარე წვდომისთვის გამოაქვეყნებს.
4. HTTPS-ის ჩართვა Caddy-ით
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 კავშირებს proxy-ით გაატარებს. პანელი დომენის ან subdomain-ის root-ზე განათავსეთ: ისეთი მისამართი, როგორიცაა example.com/kuma, მხარდაჭერილი არ არის.
5. ადმინისტრატორის ანგარიშის შექმნა
გახსენით https://monitor.example.com, შექმენით გრძელი და უნიკალური პაროლის მქონე ანგარიში და ჩართეთ ორფაქტორიანი ავთენტიფიკაცია.
როგორ დავამატოთ პირველი მონიტორი
დააჭირეთ Add New Monitor-ს და აირჩიეთ HTTP(s):
- შეიყვანეთ სახელი და სრული URL.
- მიუთითეთ ინტერვალი, მაგალითად 60 წამი.
- მოკლე ქსელური შეფერხებების გასათვალისწინებლად დაამატეთ ორი განმეორებითი მცდელობა.
- აირჩიეთ შეტყობინების არხი.
- შეინახეთ მონიტორი და დარწმუნდით, რომ წარმატებული შემოწმებები ჩანს.
მთავარი ვებსაიტისთვის 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
შექმენით bot @BotFather-ის საშუალებით, გაუგზავნეთ მას შეტყობინება და გახსენით Settings → Notifications → Telegram. შეიყვანეთ Bot Token და Chat ID, დააჭირეთ Test-ს და არხი თქვენს მონიტორებს მიაბით. კრიტიკული სერვისებისთვის დაამატეთ მეორე არხი, მაგალითად ელფოსტა.
როგორ შევქმნათ სტატუსის გვერდი
Status Pages განყოფილებაში შეგიძლიათ მონიტორების დაჯგუფება, მიმდინარე სტატუსისა და ხელმისაწვდომობის ისტორიის ჩვენება, დომენის მიბმა და დაგეგმილი სამუშაოების Maintenance-ის საშუალებით გამოცხადება. არ გამოაქვეყნოთ შიდა IP მისამართები ან ტექნიკური URL-ები: მომხმარებლებს მხოლოდ ისეთი კომპონენტები სჭირდებათ, როგორიცაა “Website”, “API”, “Account dashboard” და “Payments”.
Uptime Kuma-ს განახლება და სარეზერვო კოპირება
დიდ განახლებამდე გააჩერეთ კონტეინერი და შეინახეთ data დირექტორია:
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, გახსენით პანელი და გაგზავნეთ სატესტო შეტყობინება.
რომელი VPS ავირჩიოთ Uptime Kuma-სთვის?
მცირე ინსტალაციას სჭირდება Linux VPS 1 vCPU-ითა და 1 GB RAM-ით. დამოუკიდებლობა მაქსიმალურ წარმადობაზე მნიშვნელოვანია: მონიტორმა მუშაობა უნდა გააგრძელოს მაშინაც, როცა მთავარი პროექტი მიუწვდომელია.
Uptime Kuma შეგიძლიათ განათავსოთ tropic.host-ის VPS-ზე, თუ მონიტორინგის სერვისები სხვა პლატფორმაზე ან დამოუკიდებელ კვანძზეა. Ubuntu, Docker და სტატიკური IP პანელის სწრაფად გაშვებას ამარტივებს, ხოლო რესურსების გაზრდა შემოწმებების რაოდენობის ზრდასთან ერთადაა შესაძლებელი.
თუ production უკვე იმავე ინფრასტრუქტურაში მუშაობს, აირჩიეთ სხვა კვანძი ან დაამატეთ გარე მონიტორინგი. failure domain-ების განცალკევება დამატებით CPU ბირთვზე სასარგებლოა.
გავრცელებული შეცდომები
| შეცდომა | რატომ არის პრობლემა | უკეთესი მიდგომა |
|---|---|---|
| მონიტორინგი პროექტთან ახლოს მუშაობს | საერთო ავარია სერვისსა და შეტყობინებებსაც გათიშავს | გამოიყენეთ ცალკე VPS ან პლატფორმა |
პორტი 3001 ინტერნეტისთვის ღიაა | პანელი reverse proxy-ის ან HTTPS-ის გარეშეა ხელმისაწვდომი | პორტი მიაბით 127.0.0.1-ს |
მხოლოდ 200 სტატუსის კოდი მოწმდება | აპლიკაციის შეცდომა წარმატებულ პასუხს შეიძლება ჰგავდეს | დაამატეთ Keyword ან JSON Query |
გამოიყენება latest ტეგი | ის მოძველებულ v1 branch-ზე მიუთითებს | გამოიყენეთ louislam/uptime-kuma:2 |
| სარეზერვო ასლი იმავე VPS-ზე ინახება | ის სერვერთან ერთად გაქრება | data დირექტორია სხვაგან გადაიტანეთ |
შეჯამება
Uptime Kuma პატარა VPS-ს ვებსაიტების, API-ების, DNS-ის, პორტების, სერტიფიკატებისა და ფონური დავალებების მონიტორინგის საკუთარ ცენტრად აქცევს. Keyword გაფუჭებულ გვერდს ამოიცნობს, JSON Query — არასწორ API პასუხს, ხოლო Push — გაჩერებულ სარეზერვო ასლს ან cron დავალებას.
სანდო კონფიგურაციისთვის მონიტორინგი production-ისგან განცალკევებით გაუშვით, დახურეთ პორტი 3001, ჩართეთ HTTPS და 2FA და ორი შეტყობინების არხი დააკონფიგურირეთ. შემდეგ data დირექტორიის გარე სარეზერვო ასლი და თავად Uptime Kuma-ს დამოუკიდებელი შემოწმება მოაწყვეთ.
FAQ
Uptime Kuma უფასოა?
დიახ. პროექტი open source-ია და MIT ლიცენზიით ვრცელდება. თქვენ მხოლოდ ინფრასტრუქტურის, დომენისა და გარე სარეზერვო ასლების საფასურს იხდით.
რამდენი RAM სჭირდება Uptime Kuma-ს?
მცირე ინსტალაციისთვის 1 GB RAM კარგი საწყისი წერტილია. ასობით შემოწმების, ხანგრძლივი ისტორიის ან Browser Engine-ის შემთხვევაში გამოყავით 2 GB ან მეტი.
შეიძლება Uptime Kuma Docker-ის გარეშე დავაყენოთ?
დიახ, Node.js-ითა და PM2-ით. თუმცა VPS-ზე განახლება, გადატანა და აღდგენა Docker Compose-ით ჩვეულებრივ უფრო მარტივია.
შეიძლება Uptime Kuma დომენის გარეშე გამოვიყენოთ?
ტექნიკურად კი — IP მისამართის ან SSH tunnel-ის საშუალებით. ინტერნეტში მუდმივი წვდომისთვის HTTPS-იანი subdomain უფრო უსაფრთხოა.
აჩვენებს Uptime Kuma CPU-ს, RAM-ისა და დისკის გამოყენებას?
არა, არა როგორც სერვერის მეტრიკების სრულფასოვანი სისტემა. რესურსების მონიტორინგისთვის Uptime Kuma შეავსეთ Prometheus-ით, Netdata-თი, Zabbix-ით ან სხვა სპეციალიზებული ხელსაწყოთი.
