Навіщо і як запустити загальнодоступний 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 &
Звісно можна не паритися і просто ранити вручну, але це вже як забажаєте.
Ось так не просто, не легко ми підняли свій персональний сервер.
32 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарівНикогда не играл в майнкрафт, но месяц назад сын попросил свой сервер, что бы играть с друзьями.
Я поднял сервер на Digital Ocean, купил красивую карту с пиратским островом, добавил две мини-игры, под них еще 2 сервера запустил, купил еще две карты... и теперь не могу остановиться :)
На данный момент запущено 6 серверов, дискорд канал с майнкрафт-ботом, настраиваю донат плагин (платить за хостинг все таки чем-то нужно), ставлю еще мини-игры. В планах начать на нем зарабатывать. Вот так вот поднял ребенку сервер.
на правах рекламы можно и прорекламировать
207.154.237.229:25565
в жизни видел 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Ска если древняя, она не масштабируемая, и на облачную инфраструктуру не ложится почти никак.
В последних версиях вроде как были продвижения, на постргии может работать... Но я не очень в теме.
Вопрос в чём. Что будет делать компания когда этот сервер сгорит/утонет/будет украден ворами/ментами?
Если у компании есть бекапы это хорошо.
Если его смогут восстановить за день, это хорошо.
Если это время простоя устраивает компанию, значит они правильно подошли к выбору решения и всё у них будет хорошо.
Но, как показала атака вируса пети пару лет назад, в среднем по стране у нас всё очень плохо.
У всяких относительно мелких хостеров можно в2-3 раза дешевле взять. За поребриком 11$ = 2×2.2 ГГц/4 Гб RAM/40 Гб SSD/1 IP :) Для всякой фигни более чем.
P.S. ruvds.com/cheap_vps вообще жесть ))
Ну при такой цене в принципе не большая проблема. Можно взять по жирнее вариант с запасом, все таки цена в 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 місяців