Language: el
Uptime Kuma: ρυθμίστε τη δική σας παρακολούθηση ιστοτόπου σε VPS
Ένας ιστότοπος μπορεί να σταματήσει να λειτουργεί ενώ εξακολουθεί να επιστρέφει 200 OK. Μια εργασία αντιγράφων ασφαλείας μπορεί να πάψει να εκτελείται χωρίς εμφανές σφάλμα. Το Uptime Kuma εντοπίζει και τα δύο προβλήματα: ελέγχει ιστοτόπους, API, θύρες και εργασίες παρασκηνίου και στέλνει ειδοποίηση όταν κάτι πάει στραβά.
Σε αυτόν τον οδηγό θα δούμε πού να φιλοξενήσετε το σύστημα παρακολούθησης, τι VPS χρειάζεται και πώς να εγκαταστήσετε το Uptime Kuma 2, να ενεργοποιήσετε HTTPS, να συνδέσετε το Telegram και να δημιουργήσετε σελίδα κατάστασης.
Το Uptime Kuma σε επτά βήματα
- Ρυθμίστε ένα μικρό VPS ξεχωριστά από τα έργα που θέλετε να παρακολουθείτε.
- Δείξτε ένα subdomain, όπως
monitor.example.com, προς αυτό. - Εγκαταστήστε Docker και εκτελέστε το Uptime Kuma 2.
- Κλείστε την εσωτερική θύρα
3001και ενεργοποιήστε HTTPS. - Δημιουργήστε HTTP, DNS, TCP ή push monitors.
- Ρυθμίστε το Telegram και, αν χρειάζεται, μια σελίδα κατάστασης.
- Ρυθμίστε ενημερώσεις και εξωτερικό αντίγραφο ασφαλείας του καταλόγου δεδομένων.
Τι είναι το Uptime Kuma;
Το Uptime Kuma είναι ένα δωρεάν εργαλείο παρακολούθησης ανοιχτού κώδικα, για φιλοξενία στον δικό σας διακομιστή. Ο πίνακας ελέγχου και το ιστορικό ελέγχων αποθηκεύονται στον δικό σας server.
Μπορεί να παρακολουθεί HTTP(S), θύρες TCP, ping, DNS, WebSocket, κείμενο και JSON σε απαντήσεις, push σήματα και Docker containers. Το ελάχιστο διάστημα ελέγχου είναι 20 δευτερόλεπτα. Διατίθενται επίσης δεκάδες κανάλια ειδοποιήσεων, έλεγχος ταυτότητας δύο παραγόντων, γραφήματα καθυστέρησης, έλεγχοι πιστοποιητικών TLS και πολλές σελίδες κατάστασης.
Πώς να εντοπίσετε σφάλμα που κρύβεται πίσω από 200 OK
Ένας απλός έλεγχος HTTP βλέπει μόνο τον κωδικό απάντησης. Ωστόσο, ένας web server μπορεί να εμφανίζει κενή σελίδα ή οθόνη σφάλματος της εφαρμογής και ταυτόχρονα να επιστρέφει επιτυχή κατάσταση.
Για ακριβέστερη παρακολούθηση, χρησιμοποιήστε:
- Keyword — αναζητά μια αναμενόμενη φράση, όπως το όνομα του ιστοτόπου ή το κείμενο «Πίνακας λογαριασμού»·
- JSON Query — ελέγχει μια τιμή στην απάντηση ενός API, όπως
status: healthy.
Έτσι το monitor επιβεβαιώνει όχι μόνο ότι η θύρα είναι προσβάσιμη, αλλά και ότι η εφαρμογή περιέχει τουλάχιστον ένα αναμενόμενο σημάδι σωστής λειτουργίας.
Push monitor για αντίγραφα ασφαλείας και cron εργασίες
Ένα push monitor δεν κάνει polling σε μια υπηρεσία. Αντίθετα, περιμένει τακτικό σήμα από την ίδια την υπηρεσία. Ένα script αντιγράφων ασφαλείας ή μια cron εργασία καλεί ένα μοναδικό URL μετά την επιτυχή ολοκλήρωση. Αν το σήμα δεν φτάσει εγκαίρως, το Uptime Kuma αναφέρει σφάλμα.
Αυτό βοηθά στον εντοπισμό ενός «σιωπηλού» προβλήματος: ο ιστότοπος εξακολουθεί να λειτουργεί, αλλά το ημερήσιο αντίγραφο ασφαλείας δεν έχει δημιουργηθεί εδώ και ημέρες.
Τι δεν αντικαθιστά το Uptime Kuma
Το Uptime Kuma παρακολουθεί κυρίως τη διαθεσιμότητα και τον χρόνο απόκρισης. Για την παρακολούθηση CPU, RAM, δίσκου, logs και μετρικών containers, συμπληρώστε το με Prometheus, Netdata, Zabbix ή άλλο σύστημα παρακολούθησης: το Kuma βλέπει το πρόβλημα απ’ έξω, ενώ οι μετρικές βοηθούν να εντοπίσετε την αιτία.
Γιατί η παρακολούθηση πρέπει να εκτελείται σε ξεχωριστό VPS
Αν εγκαταστήσετε το Uptime Kuma δίπλα σε έναν ιστότοπο, μια βλάβη του VPS, του δικτύου ή του data center θα απενεργοποιήσει τόσο το έργο όσο και το σύστημα παρακολούθησης. Η ειδοποίηση μπορεί να μην σταλεί ποτέ.
Τοποθετήστε τον πίνακα ελέγχου σε ξεχωριστό VPS και, για σημαντικά έργα, χρησιμοποιήστε άλλη τοποθεσία ή πάροχο. Είναι επίσης χρήσιμο να παρακολουθείτε το ίδιο το Kuma με εξωτερική υπηρεσία: κάποιος πρέπει να επιτηρεί και το σύστημα παρακολούθησης.
Απαιτήσεις διακομιστή για το Uptime Kuma
Το έργο δεν ορίζει αυστηρό επίσημο ελάχιστο για CPU και RAM. Μια πρακτική αρχική διαμόρφωση για μικρή εγκατάσταση είναι:
- 1 vCPU·
- 1 GB RAM·
- SSD 10 GB·
- Ubuntu 24.04 LTS·
- IPv4·
- domain ή subdomain για HTTPS.
Αυτή η διαμόρφωση συνήθως αρκεί για μερικές δεκάδες απλούς ελέγχους. Για εκατοντάδες monitors, μακροχρόνια διατήρηση ιστορικού ή ελέγχους μέσω browser, επιλέξτε 2 GB RAM ή περισσότερο.
Πώς να εγκαταστήσετε το Uptime Kuma σε VPS
Το παράδειγμα χρησιμοποιεί Ubuntu 24.04 και το subdomain monitor.example.com.
1. Ρυθμίστε DNS και firewall
Δημιουργήστε εγγραφή DNS A που δείχνει στη διεύθυνση IPv4 του VPS. Συνδεθείτε μέσω 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Χρησιμοποιήστε το tag :2: το latest εξακολουθεί να δείχνει στον παρωχημένο κλάδο v1. Ο κατάλογος /app/data πρέπει να αποθηκεύεται σε τοπικό δίσκο ή σε κανονικό Docker volume. Το NFS και συστήματα αποθήκευσης χωρίς σωστό locking αρχείων μπορούν να καταστρέψουν τη βάση δεδομένων.
Η θύρα 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 και θα κάνει proxy τις συνδέσεις WebSocket. Τοποθετήστε τον πίνακα στη ρίζα του domain ή του subdomain: μια διεύθυνση όπως example.com/kuma δεν υποστηρίζεται.
5. Δημιουργήστε λογαριασμό διαχειριστή
Ανοίξτε το https://monitor.example.com, δημιουργήστε λογαριασμό με μακρύ, μοναδικό κωδικό πρόσβασης και ενεργοποιήστε τον έλεγχο ταυτότητας δύο παραγόντων.
Πώς να προσθέσετε το πρώτο monitor
Κάντε κλικ στο Add New Monitor και επιλέξτε HTTP(s):
- Εισαγάγετε όνομα και πλήρες URL.
- Ορίστε το διάστημα, για παράδειγμα 60 δευτερόλεπτα.
- Προσθέστε δύο επαναλήψεις για σύντομες αστοχίες δικτύου.
- Επιλέξτε κανάλι ειδοποιήσεων.
- Αποθηκεύστε το monitor και βεβαιωθείτε ότι εμφανίζονται επιτυχείς έλεγχοι.
Για τον κύριο ιστότοπο είναι χρήσιμοι οι έλεγχοι HTTP και Keyword. Για API χρησιμοποιήστε health endpoint και JSON Query. Μην εκθέτετε βάσεις δεδομένων ή διαχειριστικές θύρες στο διαδίκτυο μόνο για παρακολούθηση· χρησιμοποιήστε αξιόπιστο δίκτυο ή VPN.
Παράδειγμα Push monitor για αντίγραφο ασφαλείας
Αφού δημιουργήσετε monitor Push, προσθέστε το μοναδικό URL του στο τέλος του script:
backup-command && \
curl -fsS "https://monitor.example.com/api/push/SECRET_TOKEN?status=up&msg=backup-ok"Το αίτημα εκτελείται μόνο μετά την επιτυχή ολοκλήρωση του backup. Αντιμετωπίστε το push token σαν κωδικό πρόσβασης: όποιος γνωρίζει το URL μπορεί να στείλει πλαστό σήμα.
Πώς να συνδέσετε το Telegram
Δημιουργήστε bot μέσω του @BotFather, στείλτε του ένα μήνυμα και ανοίξτε Settings → Notifications → Telegram. Εισαγάγετε Bot Token και Chat ID, πατήστε Test και αναθέστε το κανάλι στα monitors. Για κρίσιμες υπηρεσίες προσθέστε δεύτερο κανάλι, όπως email.
Πώς να δημιουργήσετε σελίδα κατάστασης
Στις Status Pages μπορείτε να ομαδοποιήσετε monitors, να εμφανίσετε την τρέχουσα κατάσταση και το ιστορικό διαθεσιμότητας, να αντιστοιχίσετε domain και να ανακοινώσετε προγραμματισμένες εργασίες μέσω Maintenance. Μην δημοσιεύετε εσωτερικές διευθύνσεις IP ή τεχνικά URL: οι πελάτες χρειάζονται μόνο στοιχεία όπως «Ιστότοπος», «API», «Πίνακας λογαριασμού» και «Πληρωμές».
Ενημέρωση και δημιουργία αντιγράφων ασφαλείας του Uptime Kuma
Πριν από μεγάλη ενημέρωση, σταματήστε το container και αποθηκεύστε τον κατάλογο δεδομένων:
cd /opt/uptime-kuma
docker compose down
tar -czf /root/uptime-kuma-$(date +%F).tar.gz \
data compose.yaml
docker compose up -dΜεταφέρετε το αρχείο σε άλλη συσκευή ή εξωτερικό αποθηκευτικό χώρο. Ένα αντίγραφο στο ίδιο VPS δεν σας προστατεύει από διαγραφή του server ή αστοχία του δίσκου.
Για κανονική ενημέρωση:
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. Η ανεξαρτησία είναι σημαντικότερη από τη μέγιστη απόδοση: το monitor πρέπει να συνεχίζει να λειτουργεί όταν το κύριο έργο δεν είναι διαθέσιμο.
Μπορείτε να φιλοξενήσετε το Uptime Kuma σε VPS από το tropic.host αν οι υπηρεσίες που παρακολουθείτε βρίσκονται σε άλλη πλατφόρμα ή ανεξάρτητο κόμβο. Ubuntu, Docker και στατική IP επιτρέπουν γρήγορη εκκίνηση του πίνακα, ενώ οι πόροι μπορούν να αυξηθούν καθώς μεγαλώνει ο αριθμός των ελέγχων.
Αν το production εκτελείται ήδη στην ίδια υποδομή, επιλέξτε άλλον κόμβο ή προσθέστε εξωτερική παρακολούθηση. Ο διαχωρισμός των domains αστοχίας είναι χρησιμότερος από την προσθήκη ενός ακόμη πυρήνα CPU.
Συνηθισμένα λάθη
| Λάθος | Γιατί είναι πρόβλημα | Καλύτερη προσέγγιση |
|---|---|---|
| Η παρακολούθηση εκτελείται δίπλα στο έργο | Μια κοινή αστοχία απενεργοποιεί την υπηρεσία και τις ειδοποιήσεις | Χρησιμοποιήστε ξεχωριστό VPS ή πλατφόρμα |
Η θύρα 3001 είναι ανοιχτή στο διαδίκτυο | Ο πίνακας είναι προσβάσιμος χωρίς reverse proxy ή HTTPS | Συνδέστε τη θύρα στο 127.0.0.1 |
Ελέγχεται μόνο ο κωδικός κατάστασης 200 | Ένα σφάλμα εφαρμογής μπορεί να φαίνεται ως επιτυχής απάντηση | Προσθέστε Keyword ή JSON Query |
Χρησιμοποιείται το tag latest | Δείχνει στον παρωχημένο κλάδο v1 | Χρησιμοποιήστε louislam/uptime-kuma:2 |
| Το backup αποθηκεύεται στο ίδιο VPS | Θα χαθεί μαζί με τον server | Αντιγράψτε τον κατάλογο data αλλού |
Συμπέρασμα
Το Uptime Kuma μετατρέπει ένα μικρό VPS σε δικό σας κέντρο παρακολούθησης για ιστοτόπους, API, DNS, θύρες, πιστοποιητικά και εργασίες παρασκηνίου. Το Keyword εντοπίζει μια κατεστραμμένη σελίδα, το JSON Query μια λανθασμένη απάντηση API και το Push ένα backup ή cron job που σταμάτησε.
Για αξιόπιστη διαμόρφωση, φιλοξενήστε την παρακολούθηση ξεχωριστά από το production, κλείστε τη θύρα 3001, ενεργοποιήστε HTTPS και 2FA και ρυθμίστε δύο κανάλια ειδοποιήσεων. Στη συνέχεια οργανώστε εξωτερικό αντίγραφο ασφαλείας του καταλόγου δεδομένων και ανεξάρτητο έλεγχο του ίδιου του Uptime Kuma.
FAQ
Είναι δωρεάν το Uptime Kuma;
Ναι. Το έργο είναι ανοιχτού κώδικα και διανέμεται με άδεια MIT. Πληρώνετε μόνο για υποδομή, domain και εξωτερικά αντίγραφα ασφαλείας.
Πόση RAM χρειάζεται το Uptime Kuma;
Για μικρή εγκατάσταση, 1 GB RAM είναι λογικό σημείο εκκίνησης. Για εκατοντάδες ελέγχους, μακροχρόνια διατήρηση ιστορικού ή Browser Engine, διαθέστε 2 GB ή περισσότερο.
Μπορώ να εγκαταστήσω το Uptime Kuma χωρίς Docker;
Ναι, με Node.js και PM2. Ωστόσο, το Docker Compose είναι συνήθως ευκολότερο στην ενημέρωση, τη μεταφορά και την επαναφορά σε VPS.
Μπορώ να χρησιμοποιήσω το Uptime Kuma χωρίς domain;
Τεχνικά ναι, μέσω διεύθυνσης IP ή SSH tunnel. Για μόνιμη πρόσβαση από το διαδίκτυο, ασφαλέστερο είναι ένα subdomain με HTTPS.
Εμφανίζει το Uptime Kuma τη χρήση CPU, RAM και δίσκου;
Όχι ως πλήρες σύστημα μετρικών διακομιστή. Για παρακολούθηση πόρων, συμπληρώστε το Uptime Kuma με Prometheus, Netdata, Zabbix ή άλλο εξειδικευμένο εργαλείο.
