Minecraft və oyun serveri üçün VPS: resurs hesabı və qurulum

Minecraft və oyun serveri üçün VPS: resurs hesabı və qurulum

Dostlarınız və ya icmanız üçün öz Minecraft serverinizi qurmaq istəyirsiniz, amma nə qədər RAM lazım olduğunu, hansı proqramı seçməyi və serveri necə daimi işlətməyi bilmirsiniz. Qısa cavab: kiçik qrup üçün 4 GB RAM olan VPS, Java 21 və Paper server kifayətdir, oyunçular Azərbaycandadırsa, server də Bakıda olmalıdır. Aşağıda resurs hesabından ehtiyat nüsxəyə qədər bütün addımlar var.

Resurs hesabı: nə qədər RAM və CPU

Minecraft serverinin yükü oyunçu sayından, plaginlərdən, görüntü məsafəsindən (view-distance) və dünyanın ölçüsündən asılıdır. Aşağıdakı cədvəl dəqiq qanun deyil, praktik başlanğıc nöqtəsidir:

SsenariRAMUyğun Bakı VPS
2-5 oyunçu, plaginsiz2 GB (sıx)Starter: 1 vCPU, 2 GB
5-10 oyunçu, bir neçə plagin4 GBEconomy: 2 vCPU, 4 GB
10-30 oyunçu, çox plagin8 GBStandart: 4 vCPU, 8 GB
Böyük icma və ya modpack12 GB və daha çoxBusiness: 6 vCPU, 12 GB

Vacib nüans: Minecraft serverinin əsas oyun dövrü bir nüvədə işləyir. Ona görə çox sayda zəif nüvədən çox, sürətli nüvə və NVMe disk daha vacibdir. Java-ya bütün RAM-ı verməyin: 4 GB-lıq serverdə -Xmx3G, 8 GB-lıqda -Xmx6G məqbul seçimdir, qalanı əməliyyat sisteminə lazımdır.

Lokasiya: gecikmə oyunda hiss olunur

Oyunda hər hərəkət serverə gedib qayıdır. Azərbaycan daxilində Bakıdakı serverə gecikmə 5 ms-dən azdır, Bakı ilə Almaniya arasında isə təxminən 60-80 ms. Oyunçuların əksəriyyəti Azərbaycandadırsa, Bakı VPS-i aydın üstünlük verir. Oyunçular Avropaya yayılıbsa, Almaniyadakı server daha balanslı ola bilər.

Serverin quraşdırılması

1. Java 21 və hazırlıq

Minecraft-ın 1.21 versiyaları və Paper Java 21 tələb edir. Ubuntu 24.04-də:

sudo apt update
sudo apt install -y openjdk-21-jre-headless screen
java -version
sudo useradd --system --create-home --home-dir /opt/minecraft --shell /bin/bash minecraft

Server ayrıca istifadəçi ilə işləyir, root ilə yox. Plaginlərin birində boşluq olsa belə, bütün sistem təhlükəyə düşməyəcək.

2. Paper serverini yükləyin

Paper vanil serverin optimallaşdırılmış versiyasıdır, plaginləri dəstəkləyir və eyni resursda daha çox oyunçu saxlayır. papermc.io saytının yükləmə bölməsindən lazım olan versiyanın yükləmə linkini kopyalayın:

sudo -iu minecraft
wget -O paper.jar "PAPER_YUKLEME_LINKI"
java -Xms2G -Xmx2G -jar paper.jar --nogui

İlk işə salmada server eula.txt faylı yaradıb dayanacaq. Minecraft EULA şərtlərini qəbul etdiyinizi təsdiqləyin:

sed -i 's/eula=false/eula=true/' eula.txt
exit

3. Əsas ayarlar: server.properties

  • max-players=20: maksimum oyunçu sayı.
  • view-distance=8 və simulation-distance=6: azaltdıqca yük xeyli düşür.
  • online-mode=true: yalnız lisenziyalı hesablar qoşulur, saxta adla girişin qarşısını alır.
  • white-list=true: yalnız siyahıdakı oyunçular. Oyunçunu konsolda whitelist add OyuncuAdi ilə əlavə edin.

Daimi işləmə: screen və ya systemd

Sadə yol: screen

sudo -iu minecraft
screen -S mc
java -Xms3G -Xmx3G -jar paper.jar --nogui

Konsoldan ayrılmaq üçün Ctrl+A, sonra D basın. Yenidən qayıtmaq üçün: screen -r mc. Bu üsul rahatdır, amma server yenidən başlayanda Minecraft özü qalxmır.

Etibarlı yol: systemd

sudo nano /etc/systemd/system/minecraft.service:

[Unit]
Description=Minecraft Paper server
After=network-online.target
Wants=network-online.target

[Service]
User=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms3G -Xmx3G -jar paper.jar --nogui
Restart=on-failure
RestartSec=10
SuccessExitStatus=143
TimeoutStopSec=90

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
journalctl -u minecraft -f

systemd dayandıranda serverə SIGTERM göndərir, Paper dünyanı yadda saxlayıb çıxır. SuccessExitStatus=143 bu normal çıxışın xəta sayılmamasını, TimeoutStopSec isə yadda saxlamaya kifayət qədər vaxt verilməsini təmin edir. Eyni üsulla Telegram botunu 7/24 işlətmək də mümkündür, məsələn, serverin vəziyyətini qrupa yazan bot.

Port və ehtiyat nüsxə

Port və təhlükəsizlik divarı

sudo ufw allow OpenSSH
sudo ufw allow 25565/tcp
sudo ufw enable

Oyunçular SERVER_IP:25565 ünvanı ilə qoşulur (standart portda sadəcə IP də kifayətdir). Domeniniz varsa, A yazısı ilə mc.sizindomen.az kimi rahat ünvan verə bilərsiniz.

Ehtiyat nüsxə

Dünya illərlə qurulur, bir disk xətası və ya pis plagin onu silə bilər. Skript faylını sudo -u minecraft nano /opt/minecraft/backup.sh ilə yaradın:

#!/bin/bash
mkdir -p /opt/minecraft/backups
tar -czf /opt/minecraft/backups/world-$(date +%F).tar.gz -C /opt/minecraft world world_nether world_the_end
find /opt/minecraft/backups -name "world-*.tar.gz" -mtime +7 -delete
sudo chmod +x /opt/minecraft/backup.sh
sudo crontab -u minecraft -e

Açılan faylın sonuna 0 5 * * * /opt/minecraft/backup.sh sətrini əlavə edin: hər gün saat 05:00-da arxiv yaranacaq, 7 gündən köhnələri silinəcək. Nüsxələrin bir hissəsini müntəzəm olaraq başqa yerə (kompüterinizə və ya başqa serverə) də köçürün.

Monitorinq və performans

Serverin CPU və RAM istifadəsini htop ilə izləyin. Yük daim yüksəkdirsə, əvvəlcə view-distance-i azaldın, sonra plaginləri yoxlayın. Bu alətlərdən istifadəni Linux-da top və htop ilə proses monitorinqi yazısında izah etmişik. Serverin çökdüyünü oyunçulardan əvvəl bilmək üçün Uptime Kuma ilə monitorinq qurub 25565 portuna TCP yoxlaması əlavə edin.

Plaginləri yalnız etibarlı mənbələrdən (Hangar, Modrinth, SpigotMC) yükləyin, naməlum saytlardan götürülmüş fayllar serverə zərərli kod gətirə bilər. Paper-i yeniləyəndə isə əvvəlcə ehtiyat nüsxə alın, köhnə paper.jar-ı saxlayın və yeni versiyanın plaginlərinizlə uyğun olduğunu yoxlayın.

Tez-tez verilən suallar

Bedrock (telefon) oyunçuları qoşula bilərmi?

Java serverə birbaşa yox. Geyser plagini ilə Bedrock oyunçularını da qəbul etmək olar, bu halda əlavə olaraq 19132/udp portunu açmaq lazımdır.

Server tez-tez "lag" verir, RAM artırmaq kömək edəcək?

Həmişə yox. Çox vaxt səbəb CPU yükü, böyük view-distance və ya ağır plagindir. Əvvəlcə spark kimi profil aləti ilə hansı plaginin və ya dünyanın hansı hissəsinin yük yaratdığını tapın.

Server nə qədər stabil olacaq?

Proqram tərəfi sizin ayarlarınızdan, aparat tərəfi isə provayderdən asılıdır. Provayder zəmanətlərinin real mənasını 99.9% uptime nə deməkdir yazısında hesablamışıq.

Bakıdakı oyunçular üçün ən aşağı ping yerli serverdədir: Bakı VPS paketlərindən oyunçu sayınıza uyğun olanı seçin, kiçik qrup üçün isə VPS Starter ilə başlaya bilərsiniz. Hostinq.az-ın Bakı VPS-lərində NVMe disk və limitsiz trafik var, illik ödənişdə isə 2 ay pulsuz olur.

Paylaş: