SSD Nodes Learn Hosting plans →
Przewodniki Matt ConnorAutor: Matt Connor

Czy na VPS można grać w gry? Wyjaśnienie techniczne

Standardowy VPS nie posiada akceleracji GPU, co uniemożliwia uruchamianie gier z grafiką 3D. Dowiedz się, dlaczego VPS nadaje się wyłącznie do hostowania serwerów gier.

Czy na VPS można grać? Krótka odpowiedź

Czy na VPS można grać? To pytanie zadają dwie grupy osób, które potrzebują odmiennych odpowiedzi. Jeśli użytkownik chce uruchomić grę na wynajętym serwerze i obserwować obraz na własnym ekranie, standardowy VPS (virtual private server) na to nie pozwoli i żadna zmiana konfiguracji tego nie naprawi. Jeśli natomiast celem jest hostowanie serwera gry, do którego łączą się inni gracze, VPS jest jednym z najlepszych rozwiązań w stosunku do ceny, a często wystarcza nawet najtańszy plan.

Osoby zainteresowane hostowaniem powinny przejść bezpośrednio do wyboru VPS pod serwer gry lub uruchamiania serwera Minecraft na VPS. Poniższe sekcje wyjaśniają, dlaczego granie na VPS nie jest możliwe, ponieważ jest to odpowiedź, którą rzadko otrzymuje się wprost.

Dlaczego standardowy VPS nie posiada GPU

Standardowy VPS to wydzielona część współdzielonego serwera: wirtualne rdzenie CPU, pamięć RAM, dysk oraz port sieciowy. Hostem jest serwer typu rack, który nie posiada konsumenckich kart graficznych, ponieważ GPU (graphics processing unit) klasy gamingowej jest zaprojektowane do obudowy typu desktop, z własnym chłodzeniem i dużym zapotrzebowaniem na energię. Maszyna wirtualna otrzymuje wirtualny adapter graficzny, aby konsola startowa miała gdzie wyświetlać obraz. To wyczerpuje temat obsługi grafiki.

lspci | grep -i -E 'vga|3d|display'
ls -l /dev/dri

Pierwsze polecenie wyświetla jedną linię, zazwyczaj coś w rodzaju Cirrus Logic GD 5446 lub Red Hat, Inc. Virtio 1.0 GPU. W standardowym planie oba działają wyłącznie w trybie 2D. Adapter Cirrus nie posiada silnika 3D, a virtio GPU może przyspieszać grafikę 3D tylko poprzez przekazanie obliczeń do GPU w hoście, czego host bez karty graficznej nie może wykonać. Drugie polecenie często zwraca ls: cannot access '/dev/dri': No such file or directory. Jeśli wyświetla card0 lub renderD128 z poziomu sterownika virtio, węzeł ten należy do wirtualnego adaptera i nie posiada zaplecza w postaci sprzętu 3D. W przypadku instancji z fizycznym GPU to samo polecenie wyświetla card0 oraz renderD128, obsługiwane przez rzeczywistą kartę.

Biblioteka Mesa nadal zapewni obsługę OpenGL poprzez llvmpipe, czyli programowy renderer, który rysuje każdy trójkąt przy użyciu CPU. Jest to wystarczające dla środowiska graficznego lub starszej gry 2D. Nowoczesny tytuł 3D będzie działał z prędkością kilku klatek na sekundę, a procesor zostanie w pełni obciążony zadaniem, do którego jest najmniej przystosowany, co spowoduje również spowolnienie logiki gry.

Dlaczego opóźnienie wejściowe jest kluczowym czynnikiem ograniczającym zdalną rozgrywkę

Zdalna rozgrywka to pętla. Naciśnięcie klawisza przesyłane jest do serwera, serwer renderuje klatkę, koduje ją jako wideo i odsyła, a klient dekoduje obraz i wyświetla go na ekranie. Każdy etap zajmuje milisekundy, które sumują się w całość.

WykresTypical published latency for a hardware-encoded game stream, same region
Dane, na których opiera się ten wykres
[
  {
    "label": "Input capture and send",
    "typical_ms": 5
  },
  {
    "label": "Network round trip",
    "typical_ms": 15
  },
  {
    "label": "Frame render on the server",
    "typical_ms": 12
  },
  {
    "label": "Hardware video encode",
    "typical_ms": 8
  },
  {
    "label": "Decode and display on the client",
    "typical_ms": 15
  },
  {
    "label": "Sum of the stages above",
    "typical_ms": 55
  }
]

Tylko 15 ms z tego czasu przypada na czas obiegu sieciowego (RTT) i jest to jedyny element, który można poprawić, wybierając serwer położony bliżej. Reszta to sama potokowość przetwarzania, na którą lokalizacja serwera nie ma wpływu. Etapy te dodają 55 ms opóźnienia, zanim gra w ogóle rozpocznie własne przetwarzanie. Są to typowe, publikowane wartości dla sprzętowego kodera strumieniującego do klienta w tym samym regionie, a nie pomiary z jednej maszyny, więc należy je traktować jako obraz skali problemu.

Opóźnienie to trafia do pętli sprzężenia zwrotnego. Użytkownik porusza myszą, widzi wynik i koryguje ruch. Dodatkowe opóźnienie sprawia, że każda korekta dociera z opóźnieniem, co powoduje przestrzeliwanie celu i konieczność kolejnej korekty. Gry turowe, strategie, symulatory zarządzania i gry karciane znoszą to bez problemu. Strzelanki, bijatyki, gry rytmiczne i wyścigi – nie.

Jitter oraz utrata pakietów szkodzą w inny sposób. Strumień wideo nie może czekać na retransmisję, ponieważ klatka, do której należy pakiet, jest już spóźniona. Utrata objawia się więc artefaktami blokowymi lub zamrożeniem obrazu, a nie pauzą. Dlatego zdalny pulpit jest niewłaściwym narzędziem. VNC (virtual network computing) wysyła zmienione prostokąty przez TCP, co zapewnia dostarczenie wszystkiego w kolejności, więc jeden utracony pakiet wstrzymuje resztę strumienia do czasu jego ponownego przesłania. Ekran zmieniający się całkowicie 60 razy na sekundę oznacza wiele zmienionych prostokątów i wiele takich przestojów. RDP (remote desktop protocol) może przesyłać ruch zarówno przez UDP, jak i TCP, co pozwala uniknąć tego konkretnego przestoju, ale nie rozwiązuje problemu opóźnienia wejściowego opisanego powyżej.

Czego wymagałaby prawdziwa jednostka do grania w chmurze

Poprawne zbudowanie takiego rozwiązania jest możliwe. Wymaga ono jednoczesnego spełnienia czterech warunków.

  • Instancja GPU z kartą klasy datacenter, ponieważ jest to jedyny typ sprzętu, który dostawca posiada licencję na wynajem.
  • Sprzętowy koder wideo, taki jak NVENC (wbudowany koder NVIDIA), ponieważ kodowanie programowe obciąża CPU i zwiększa opóźnienia.
  • Para do streamingu zaprojektowana z myślą o grach, a nie o pracy na pulpicie. Popularnym wyborem open source jest Sunshine na serwerze oraz Moonlight na kliencie.
  • Serwer w tym samym regionie metropolitalnym, ponieważ czas odpowiedzi (round trip) zależy od odległości, a odległość jest ograniczona prędkością światła w światłowodzie.

Następnie należy dokonać wyceny. Instancje GPU są zazwyczaj rozliczane godzinowo, więc należy pomnożyć stawkę godzinową przez 730, aby uzyskać koszt miesiąca ciągłej pracy. Niektórzy dostawcy oferują również niższą stawkę miesięczną dla kwalifikujących się instancji, dlatego warto sprawdzić ofertę swojego dostawcy. Według stanu na sierpień 2026 roku jest to trzycyfrowy miesięczny rachunek w dolarach amerykańskich, co w ciągu roku pozwala na zakup konsoli, a dodatkowo należy jeszcze opłacić licencje na gry. Co faktycznie oferuje VPS z GPU oraz matematyka opłacalności wynajmu godzin GPU szczegółowo analizują te liczby.

Jeśli celem jest wyłącznie granie, komercyjne usługi cloud gamingowe już teraz korzystają z dokładnie tego samego stosu technologicznego w centrach danych w pobliżu użytkownika, z uregulowanymi kwestiami licencyjnymi. Jeden VPS w jednym mieście nie jest w stanie dorównać sieci zbudowanej specjalnie do tego celu.

Blokady anti-cheat i licencjonowanie

Nawet idealnie skonfigurowana jednostka GPU napotyka ograniczenia regulaminowe. System Vanguard firmy Riot wymaga TPM 2.0 (Trusted Platform Module) oraz Secure Boot w systemie Windows 11 i odmawia działania wewnątrz maszyny wirtualnej, co uniemożliwia uruchomienie gry Valorant na wynajętym sprzęcie w chmurze. Systemy Easy Anti-Cheat oraz BattlEye również potrafią wykryć hypervisor, a wiele tytułów korzystających z tych rozwiązań blokuje maszyny wirtualne lub nakłada za nie bany. Jest to działanie celowe: twórcy oprogramowania do oszukiwania wykorzystują maszyny wirtualne do ukrywania swoich narzędzi, więc odmowa uruchomienia w takim środowisku stanowi tanią formę ochrony gry.

Na to nakłada się kwestia licencjonowania. Licencja NVIDIA na sterowniki GeForce ogranicza ich użycie w centrach danych, dlatego dostawcy wynajmują karty klasy datacenter, a nie desktopowe. System Windows wymaga licencji zezwalającej na uruchomienie na sprzęcie, którego użytkownik nie jest właścicielem. Regulaminy sklepów określają, gdzie dana kopia oprogramowania może być uruchamiana. Każde z tych ograniczeń z osobna jest możliwe do obejścia. Łącznie sprawiają one, że samodzielnie zbudowana platforma do grania w chmurze nie obsłuży większości gier rywalizacyjnych, dla których jest budowana.

Co dobrze działa na VPS bez GPU

Inny przypadek to serwer dedykowany do gier, który nie generuje obrazu. Symuluje on świat, przetwarza dane wejściowe od graczy i przesyła aktualizacje stanu przez sieć. Rendering odbywa się na komputerach graczy. Brak konieczności renderowania oznacza, że GPU nie jest potrzebne, więc maszyna bezużyteczna do grania jest odpowiednia do hostingu.

  • Serwery dedykowane dla Minecraft, Valheim, Terraria, Factorio, Rust, Project Zomboid oraz większości innych tytułów, które oferują wersję headless.
  • Czat głosowy. Serwer Mumble jest na tyle lekki, że może działać obok serwera gry w ramach tego samego małego planu.
  • Pobieranie modów i map przez zwykły HTTP oraz panel webowy, w którym gracze sprawdzają listę osób online.
  • Matchmaking, statystyki, tabele wyników, boty Discord oraz obsługująca je baza danych.
  • Harmonogram kopii zapasowych świata przesyłanych poza serwer, dzięki czemu uszkodzenie zapisu oznacza stratę godziny pracy, a nie całej mapy.

Pamięć RAM jest zazwyczaj głównym ograniczeniem, a w przypadku wielu gier wydajność pojedynczego rdzenia jest ważniejsza niż ich liczba, ponieważ główny cykl symulacji serwera Minecraft lub Factorio działa na jednym wątku. Plan z ośmioma wolnymi rdzeniami przegrywa z planem z czterema szybkimi. Zużycie pasma rośnie wraz z liczbą graczy, bardziej niż obciążenie CPU. Wielu dostawców limituje transfer, a plany sprzedawane jako nielimitowane mogą w niektórych regionach ograniczać prędkość portu lub nakładać kwoty, dlatego przed wyborem planu należy sprawdzić warunki.

Otwórz odpowiednie porty i pamiętaj, że większość ruchu w grach to UDP (user datagram protocol), a nie TCP.

sudo ufw allow 25565/tcp
sudo ufw allow 27015/udp
sudo ufw status

ufw status powinno wyświetlić każdą regułę wraz z ALLOW obok niej. Jeśli port jest otwarty, a serwer nadal pozostaje niedostępny, sprawdź panel sterowania dostawcy pod kątem zewnętrznego firewalla sieciowego, ponieważ reguła wewnątrz maszyny nie wpływa na filtr działający przed nią.

Zapewnij ciągłość działania bez nadzoru. Jednostka systemd lub polityka restartu Docker przywracają serwer po restarcie systemu, a stos compose uruchamiający się automatycznie przy starcie jest standardowym rozwiązaniem. Połącz to z zaplanowanymi kopiami zapasowymi poza serwerem, aby plik świata przetrwał awarię dysku.

Jak sprawdzić VPS przed uruchomieniem na nim hostingu

Opóźnienie (latency) względem graczy decyduje o komforcie korzystania z serwera i jest mierzalne. Należy poprosić dostawcę o adres testowy w wybranym regionie, a następnie wykonać poniższe polecenia z sieci gracza, a nie z poziomu serwera.

ping -c 20 203.0.113.10
mtr -r -c 100 203.0.113.10

ping kończy się linią podsumowania, taką jak rtt min/avg/max/mdev = 18.4/19.1/24.6/1.2 ms. Ostatnia liczba to jitter. Stabilna średnia z niskim jitterem jest w grze odczuwalna lepiej niż niższa średnia, która wykazuje duże wahania. mtr wyświetla utratę pakietów na poszczególnych przeskokach (hop). Należy brać pod uwagę wyłącznie utratę w ostatniej linii, ponieważ routery pośrednie nadają odpowiedziom ICMP (internet control message protocol) najniższy priorytet i często raportują utratę, której rzeczywisty ruch nie doświadcza.

Następnie należy sprawdzić, czy host nie jest przesycony (oversubscribed).

vmstat 1 5

Kolumna st to steal time: udział czasu, w którym wirtualny procesor był gotowy do pracy, podczas gdy fizyczny host przydzielił te cykle innej maszynie wirtualnej. Stała wartość różna od zera oznacza, że tick rate będzie niestabilny pod obciążeniem, niezależnie od zapewnień w ofercie. Steal time i problem sąsiadów opisuje sposób interpretacji tego parametru, a samodzielny benchmarking VPS omawia pozostałe dane, które warto zebrać przed wykupieniem rocznej subskrypcji.

Bezpośrednia odpowiedź na oba pytania

Jeśli chcesz grać, uruchamiaj gry na sprzęcie, do którego masz fizyczny dostęp, lub korzystaj z usług przeznaczonych do streamingu gier. Uniwersalny VPS nie posiada możliwości renderowania, a instancja z GPU kosztuje więcej niż sprzęt, jednocześnie przegrywając z systemami anti-cheat. Jeśli chcesz hostować serwer, wynajmij VPS. Jest to rozwiązanie dobrze dopasowane do potrzeb przy niskiej cenie, a ta sama maszyna obsłuży inne usługi pomiędzy sesjami gier.

FAQ

Czy mogę zainstalować Steam na serwerze VPS i grać w swoje gry?

Można zainstalować klienta Steam na serwerze Linux VPS, który pobierze gry. Problemem jest ich uruchomienie. Standardowy plan nie posiada GPU, więc tytuły 3D korzystają z renderowania programowego przez CPU, co skutkuje kilkoma klatkami na sekundę, a wiele nowoczesnych gier odmawia uruchomienia bez wspieranego renderera. Przesyłanie strumieniowe tego, co uda się wyrenderować, dodaje dodatkowe opóźnienia kodowania i sieci. Funkcja Steam Remote Play została zaprojektowana do strumieniowania z własnej maszyny do gier, która musi posiadać kartę graficzną.

Czy serwer VPS z GPU pozwoli mi zagrać w każdą posiadaną grę?

Rozwiązuje to problem renderowania, ale nie pozostałe kwestie. Nadal wymagany jest sprzętowy enkoder, klient o niskim opóźnieniu, taki jak Moonlight, oraz serwer znajdujący się na tyle blisko, aby czas odpowiedzi sieci był minimalny. Główną przeszkodą jest system anti-cheat: Riot Vanguard odmawia działania w maszynie wirtualnej, a Easy Anti-Cheat oraz BattlEye potrafią wykryć hypervisor, co wyklucza gry typu competitive shooter. Gry dla jednego gracza i tytuły o wolniejszym tempie są realistycznym zastosowaniem, przy miesięcznym koszcie przewyższającym cenę lokalnego sprzętu.

Jakiego rozmiaru VPS potrzebuję na serwer Minecraft dla dziesięciu znajomych?

Standardowy serwer Java dla dziesięciu graczy działa płynnie na 2 vCPU i 4 GB RAM. Należy przydzielić JVM (Java virtual machine) około 3 GB za pomocą -Xmx3G, pozostawiając resztę pamięci systemowi operacyjnemu. -Xmx stanowi górny limit, a nie sztywną alokację, jednak garbage collector może zwiększyć stertę do tej wartości pod obciążeniem, a jądro systemu nadal potrzebuje pamięci na page cache. Duże modpacki zmieniają wymagania: należy zaplanować od 6 GB do 8 GB samej sterty i wybrać plan z szybszym pojedynczym rdzeniem, ponieważ główny wątek świata (world tick) działa na jednym wątku.

Dlaczego pulpit zdalny działa płynnie, a gra nie?

Pulpit zmienia tylko niewielką część ekranu w danym momencie i nikt nie zauważa, jeśli odświeżenie okna spóźni się o 100 ms. Gra zmienia każdy piksel dziesiątki razy na sekundę i zamyka pętlę sprzężenia zwrotnego poprzez ruchy użytkownika. VNC wysyła zmienione prostokąty przez TCP, więc ciągły ruch na ekranie oznacza potok aktualizacji, a każdy utracony pakiet wstrzymuje resztę do czasu jego ponownego przesłania. RDP może działać również przez UDP, co pozwala uniknąć tego przestoju. Nawet właściwy strumień wideo nie eliminuje opóźnienia wejścia, a to właśnie to opóźnienie jest odczuwalne podczas celowania.

#gaming#vps#gpu#game-servers#cloud-gaming