Kilka serwerów Minecraft na jednym serwerze VPS

michociaak | 2021-05-12 14:43:37 UTC | #1

1. Wprowadzenie

Witaj! W tym poradniku przedstawię jak stworzyć kilka serwerów Minecraft na jednym serwerze VPS! Na początku - co to serwer VPS? Prywatny serwer wirtualny to odizolowane środowisko utworzone na fizycznym serwerze z wykorzystaniem technologii wirtualizacji. VPS to rozwiązanie pośrednie między hostingiem a serwerem fizycznym.

2. Wymagania

Aby stworzyć kilka serwerów, twój serwer VPS musi spełniać następujące wymagania: - zainstalowana java, - 6gb pamięci ram - 2 wątki CPU Oczywiście im więcej pamięci ram, oraz wątków CPU będziesz posiadać tym lepiej. Wszystko zależy od ilości serwerów jaką chcesz posiadać. Na zasobach jakie podałem wyżej postawisz 3 serwery.

3. Instalacja

Na początku logujemy się do konsoli "Putty". Po zalogowaniu się wpisujemy komendę
sudo apt install screen
Jeżeli instalacją rozpoczęła się poprawnie powinniśmy zobaczyć taki komunikat: ![image|347x21](uploads/default/original/files/6mvNYQq81P7khSV5dXQANN76YMI.png) Teraz potwierdzamy instalację wpisując "Y". Wszystko zainstalowało się poprawnie! Teraz musimy zainstalować jave. Osobiście zalecam wersje 11, ale jeśli używasz starszy wersji Minecrafta [np 1.8] może ona nie działać [w tym przypadku zamień w poniższej komendzie "11" na "8"].
sudo apt install openjdk-11-jdk
![image|412x25](uploads/default/original/files/26z6TnWXnkELsqb8TP0yXwZGLj2.png) Ponownie potwierdzamy instalację wpisując "Y". Czekamy chwile, aż java zainstaluje się poprawnie. Teraz tworzymy pliki dla naszych serwerów Minecraft. Będą znajdować się w katalogu `/home`
mkdir /home/bungeecord
Teraz musimy pobrać silnik serwera proxy. Będzie to [FlameCord](https://www.mc-market.org/resources/13492/?__cf_chl_jschl_tk__=c18ff170e7b1077ca07c6bb7d75c44aee7d0fc7b-1618241639-0-AT6N_Oq0mPcvdXr-2sFfsiz4IhR9DdgoP1YlH_rO2zlQtM_6Z2yEANs3vT7rkhY12oDjV0D_N2HaIU-bkyQ4Gaf_3G2KUrdZ0-_hr2cTEByPw4-gyZd8lT4Wu0ysaeyEtnxLgGeiZ-60eM-6a2188hWbyV1TWTTG5VqDuTKM8WyXENcOB4jiIQKb9Ro3gEj2CnAawJZkqjJ78PTM5rh95blFcw8ShUrCw1aKSRbTlO0gD82IJrub0SC8qQUzySkcFYE3Hh-XkpVSfM4uQ6cEe7KRMIt47brGcI5MDPMqMLLCxfdPjy50-5wfUl2PTCZUmu7OmcfpIyhC2F74Vx7br_StQuGBObLSB9rXuTRaqKJfhz645PP_246A0tdp0SiVJV9KOG8NdruLF50z-alqy9WNuoO1dyADttzkrEdiIijgtkA3hBwe4h1m0d8rCY5XX-LrS8QMXESYVu7NfsBliz0) działa on tak jak BungeeCord, ale ma naprawione błędy oraz exploity. Pobieramy silnik z tego [linku](https://www.mc-market.org/resources/13492/?__cf_chl_jschl_tk__=c18ff170e7b1077ca07c6bb7d75c44aee7d0fc7b-1618241639-0-AT6N_Oq0mPcvdXr-2sFfsiz4IhR9DdgoP1YlH_rO2zlQtM_6Z2yEANs3vT7rkhY12oDjV0D_N2HaIU-bkyQ4Gaf_3G2KUrdZ0-_hr2cTEByPw4-gyZd8lT4Wu0ysaeyEtnxLgGeiZ-60eM-6a2188hWbyV1TWTTG5VqDuTKM8WyXENcOB4jiIQKb9Ro3gEj2CnAawJZkqjJ78PTM5rh95blFcw8ShUrCw1aKSRbTlO0gD82IJrub0SC8qQUzySkcFYE3Hh-XkpVSfM4uQ6cEe7KRMIt47brGcI5MDPMqMLLCxfdPjy50-5wfUl2PTCZUmu7OmcfpIyhC2F74Vx7br_StQuGBObLSB9rXuTRaqKJfhz645PP_246A0tdp0SiVJV9KOG8NdruLF50z-alqy9WNuoO1dyADttzkrEdiIijgtkA3hBwe4h1m0d8rCY5XX-LrS8QMXESYVu7NfsBliz0), a następnie łączymy się do FTP serwera. Przenosimy nasz silnik na pulpit. ![image|248x164](uploads/default/original/files/hVyFHzxPhNAXZuSdFa2qtYY2prf.png) Wchodzimy teraz do folderu `home` poprzez nasze FTP, a następnie przechodzimy do katalogu `bungeecord`. Przenosimy tam teraz plik silnika "`FlameCord.jar`" i czekamy aż się prześle. ![image|690x388](uploads/default/original/files/bTQFVsWlCYbScEs0DBkVBpGzIEx.jpeg) Całość po prawidłowym przesłaniu powinna wyglądać w ten sposób. Teraz musimy stworzyć plik `start.sh`. Musisz wkleić do niego poniższy tekst:
screen -dmS bungeecord java -Xms512M -Xmx512M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar FlameCord.jar nogui
Gratulację! Teraz możesz już uruchomić swój serwer Minecraft!
Uwaga! Jeśli chcesz zmienić pamięć używaną przez serwer proxy [obecnie 512mb] zedytuj poniższe linie i ustaw w nich oczekiwane wartości
-Xms512M -Xmx512M
Teraz musisz wrócić do Putty i wpisać komendy:
cd /home/bungeecord
bash start.sh
Serwer powinien się już uruchamiać. Aby wejść do konsoli serwera musisz użyć komendy
screen -r 
Naszym oczom powinien ukazać się taki widok: ![image|690x245](uploads/default/original/files/k37UbTw8OQ0ZeSzLGzEWSsEPZmp.png) Zatrzymujemy serwer komendą `end`, konsola powinna się zamknąć. Teraz instalujemy silnik serwera Minecraft - trybu. W moim przypadku zainstaluję purpura, lecz ty możesz użyć innego. Link do silnika, który ja pobrałem: [Klik](https://purpur.pl3x.net/downloads/)! Po pobraniu silnika zmień jego nazwę na `purpur` Następnie w programie Putty wpisujemy komendę `mkdir /home/lobby` oraz `mkdir /home/survival`. Do obu folderów wrzucamy nasz silnik [przy pomocy FTP, dokładnie tak jak zrobiłeś to poprzednio.] Nadszedł moment, w którym musisz stworzyć 2 nowe pliki start.sh. Pierwszy powstanie w folderze `/home/lobby`. Musisz wkleić do niego poniższy kod:
screen -dmS lobby java -Xms1024M -Xmx1024M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar purpur.jar nogui
Natomiast drugi w folderze `/home/survival`. Ponownie musisz wkleić do niego poniższy kod:
screen -dmS survival java -Xms3072M -Xmx3072M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar purpur.jar nogui
Czas na wygenerowanie plików obu serwerów. Wpisujemy komendy:
cd /home/lobby
bash start.sh
cd /home/survival
bash start.sh
Wszystkie pliki powinny się wygenerować. Akceptujemy EULE, a następnie przechodzimy do pliku `server.propeties`. Edytujemy linię `server-port=25565`. Port `25565` musimy zmienić na inny, aby wszystkie serwery działały poprawnie. Przykładowe porty: `11111`, `11112`, `11113`, `11114`

4. Zarządzenie stanem serwerów

Do zarządzania stanem serwerów przydadzą nam się te komendy:
cd /home/<nazwa serwera>
bash start.sh
//Te 2 komendy uruchomią twój serwer.

screen -r
//Tą komendą sprawdzisz konsole swoich serwerów. Po jej wpisaniu powinien Ci się pojawić taki komunikat:
![image|582x65](uploads/default/original/files/39YHuaxSYZ8kisULewv32uj20RC.png)
//Czyli w moim wypadku aby przejść do konsoli muszę wpisać:
screen -r 12583.pts-1.
//W twoim mogą być inne liczby i zawartość występująca po nich.
### Aby opuścić obecną konsole musisz użyć skrótu klawiszowego "CTRL + A + D". ### ![|84x126](https://forum.lvlup.pro/uploads/default/original/2X/3/32004f0b843b7291a10e5db8b74b5332c3a0a5b2.png)Poradnik miesiąca: kwiecień 2021 -------------------------