Навіщо і як запустити загальнодоступний Minecraft сервер на Google Cloud

Навіщо

Ну бо можу. А ще під час карантину башка їде і захотілося нам з друзями в minecraft пограти.

Як

Ось тут уже починаються веселощі. Google Cloud це не машина, на якій можна запустити сервер. Тому перше ми стикаємося із hardware проблемою. Що ж для початку організовуємо проект для сервера.

Вибираємо собі хорошу назву і створюємо.

Наступне нам потрібна машина на якій буде запускатися сервер. Це не проблема лізем в менею API і шукаємо Compute Engine API і підключаємо.

Чекаємо сто років поки запуститься API. І створюємо собі віртуальну машину.

Називаємо її вибираємо параметри та на основі якої оперційки буде наша машина, можна вибрати практично будь-яку, але ми програміти і ми обираємо Ubuntu. (Так так можна і інший дистрибутив і хоч голий Debian).

Далі нам необхідно статичну ip адресу. Для цього заходимо в мережу VPC і резервуємо ip адресу, якщо її не зарарезерувало під час створення машини.

Тепер слід погратися із доступом до нашого сереверу і відкрити порти в брандмауері. Пропоную не церемонитися і відкрити усі порти ібо при спробак відкрити конктрний порт доступу до сервера все ще не було. Для цього створюємо правила для вхідного і вихідного трафіку.

По ідеї краще обмежити доступ до портів щоб погані хакери не поламали ваш сервер, але як голосить одна велика мудрість:

Назву вибираємо довільну вона нічого не вирішує і майже не рухається, трафік — вхідний, дія — дозволити. Для того щоб всі могли підключитися до нашого серверу діапазон адрес встановлюємо як 0.0.0.0/0. Ну і вибираємо які порти відкрити. Для нашого сервера це udp-порт але всі спроби його відкрити не давали результати, тому і дідько з ним відкриємо усі.

В подальшому слід аналогічну річ провернути вже на машині. Для цього

sudo iptables -A INPUT -p udp --dport 25565 -j ACCEPT

Далі нам треба вирішити проблему програмного забезпечення, для цього існує Minecraft Server. Детальніше можна ознайомитися і скачати тут.

Спочатку на нашій машині потрібно встановити java, тому підключаються через ssh. Якщо виникають проблеми із підключенням варто спробувати підключитися через cloud shell.

Робимо стандартні

sudo apt-get update
sudo apt-get upgrade

Встановлювати ми будемо Java від Oracle, оскільки з openjdk і default виникали проблеми.

Додаємо репозиторій

sudo apt install software-properties-common
sudo add-apt-repository ppa:webupd8team/java

І встановлюємо найновішу версію (можна, по ідеї, і старішу, але раніше 8 не рекомендую).

sudo apt update
sudo apt install oracle-java13-installer

Після пари підтверджень java в нас в кишені. Тепер свановимо сам сервер.
Копіюємо лінку із вище вкзаного сайту і скачуємо файл через wget.

І нарешті запускаємо сервер

java -jar <file name>.jar

В перший раз сервер скаже, що щось не так і попросить замінити в у файлі eula.txt

eula=false на eula=true

Через nano або ж vim робимо це. Особиста рекомендація через nano, бо з vim складно вийти.

І запускаємо ще раз сервер наконфігуриться вперше, згенерує і підгрузить карту, після чого можна його стопнути і наконфігурити під себе через файл server.properties. Усі конфіги можна глянути тут.

А для нас найосновніші це:

gamemode=survival

режим гри, вибираємо під себе

survival (0)

creative (1)

adventure (2)

spectator (3)

max-players=20Максимальна кількість гравців, теж під себе
enable-query=falseДозволяє який протокол, тому ставимо true, інакше не вийде підключитися
online-mode=trueПеревірка акаунтів, ставимо false, якщо маємо піратських друзів

Усе, залишилась вишенька на торті — це додати service для автоматичної роботи сервера.

Створюємо bash скрипт nano minecraft-server

і заповнюємо якось так

#!/bin/sh
sudo /usr/bin/java -jar <file path>

І додаємо права для виконання sudo chmod u+x minecraft-server

І запускаємо сервіс nohup minecraft-server &

Звісно можна не паритися і просто ранити вручну, але це вже як забажаєте.

Ось так не просто, не легко ми підняли свій персональний сервер.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Никогда не играл в майнкрафт, но месяц назад сын попросил свой сервер, что бы играть с друзьями.
Я поднял сервер на Digital Ocean, купил красивую карту с пиратским островом, добавил две мини-игры, под них еще 2 сервера запустил, купил еще две карты... и теперь не могу остановиться :)
На данный момент запущено 6 серверов, дискорд канал с майнкрафт-ботом, настраиваю донат плагин (платить за хостинг все таки чем-то нужно), ставлю еще мини-игры. В планах начать на нем зарабатывать. Вот так вот поднял ребенку сервер.

на правах рекламы можно и прорекламировать

в жизни видел 2 игрушки которе так и не понял
майнкрафт 2-я
первая что-то там в линуксе в текстовом режиме

моя дочь в свои 5 прекрасно играет
думается что это не вина майнкрафта

В копилку не понятных игр store.steampowered.com/app/382310/Eco его называют майнкрафтом для взрозлых. Там как в жизни, хочешь личного прогресса — надо пахать (в данном случае — копать).

сколько потрачено денег на сервер?
часов?
Была недавно идея сделать один специальный сервер со своими особеностями, но времени не хватало + не было приличных гайдов

Там на скриншотах видно, ожидаемая стоимость 34 долл/мес ($0,047 в час). Точно так же можно сделать на Amazon EC2 с почти такой же ценой, и на Azure но лень идти смотреть цену.

Ну там не меньше 60 надо ждать, при том что сам все настроил :/

t3.medium с 4 гигами по 0,0456 USD за час. А есть еще спотовые, там цена за тот же t3.medium вообще $0.0137 за час, но там типа «рынок». Надо ставить граничную цену до которой готов платить, только цена вырастет выше граничной, сервер завершится.

На курсере в подготовке к GCP Architect было такое)
34 бакса это овер дохрена, при чем за один vCPU.
В долгосрочной перспективе выгоднее дома железку держать, при чем с нормальными характеристиками).
Даже если держать железку не дома а в колокейшине это все равно дешевле).
Что доказывает в очередной раз что клауды для мажоров.

Хреновый из Вас шерлок=)
i.piccy.info/...​6195/1370816/IMG_0709.jpg
Не обязательно ставить дома блейд/rack)
Проблемы с электричеством фиксятся ибп.
Интернет у меня падал не чаще чем Azure в этом году)
Я думаю для сервера майнкрафта этого достаточно.

для одиночного сервера на майнкрафт + забыть о расширяемости = сойдет

ИБП конечно хорошо, но если провайдеровское оборудование в доме тоже отключилось — то толку от того ИБП.

У провайдеров тоже иногда ибпшки стоят) А если там PON сети так вообще пофиг на то эл-во)

Если это сервер для ребёнка, то да, дешевле дома держать.
Клауды это для бизнеса, где сервер не просто гудит, а приносит деньги.

Кроме того что это «бизнес» есть еще куча критереев чтобы звезды сошлись и они предпочли клауд вместо on premises.

Ну, С моей девопсовской точки зрения очень много бизнеса переходит с on premises на клауд.
Причины разные. При правильном использовании можно сэкономить. При неправильном использовании можно просрать кучу денег.

Вот есть у меня знакомый, есть у них 1c на серваке 15-ти летней давности цена которому как на 2 дня самый дешевый инстанс вмки купить, как им поможет сэкономить облако?) Я о том что клауд заходит не всегда и не всем.

Я и не говорю что всем. 1с-ка это тот еще специфический зверь. Если покупать на всё лицензии, а это винда сервер, + mssql сервер... Плюс на 4 гигах винда не взлетит если терминал...
ТО окажется что этот бизнес приносит меньше денег чем будут стоить лицензии на весь необходимый софт.
1Ска если древняя, она не масштабируемая, и на облачную инфраструктуру не ложится почти никак.
В последних версиях вроде как были продвижения, на постргии может работать... Но я не очень в теме.

Вопрос в чём. Что будет делать компания когда этот сервер сгорит/утонет/будет украден ворами/ментами?
Если у компании есть бекапы это хорошо.
Если его смогут восстановить за день, это хорошо.
Если это время простоя устраивает компанию, значит они правильно подошли к выбору решения и всё у них будет хорошо.

Но, как показала атака вируса пети пару лет назад, в среднем по стране у нас всё очень плохо.

ожидаемая стоимость 34 долл/мес

У всяких относительно мелких хостеров можно в 2-3 раза дешевле взять. За поребриком 11$ = 2×2.2 ГГц/4 Гб RAM/40 Гб SSD/1 IP :) Для всякой фигни более чем.
P.S. ruvds.com/cheap_vps вообще жесть ))

на 80-90%

Ну при такой цене в принципе не большая проблема. Можно взять по жирнее вариант с запасом, все таки цена в 3 раза отличается. Большинство приложений 24/7 проц на > 80% не грузит.

ну можно 3$ доплатить, тогда 2 ядра Xeon 3,4 не самый убогий проц, а стоит чепуху по их калькулятору ruvds.com/ru-rub#order

И сколько триал стоит в демодолларах на эквивалентное железо? Полагаю речь о гугл клауде, потому как в амазона триал на инстанс калькулятора с 1гб.
Шара же не вечно будет, но в принципе да, если можно там бесконечно триалы получать на перерегистрациях, и не лень каждые пару месяцев переносить данные, то можно, а так думаю те баксы за 4-5 месяца кончатся на нормальном инстансе.

дык, кажется, там всего одно ядро + раз зашел разговор о слабых ядрах, надо бы знать что там за ядро. Понятно можно запустить инстанс калькулятора и растянуть эти 300$ :) Но и понятно «бесплатно» тут бьет любую цену, пока оно бесплатно и пока юзается для всякой фигни.

Часу пішло 2 вечори ну десь годин 6 від сили. А грошей 0. Google cloud, думаю як і інші аналогічні сервіси, надають пробний період. У випадку Google Cloud 300$ яких має стати десь на десь 9 місяців

Підписатись на коментарі