Развертывание сервера Minecraft в Yandex Cloud
С помощью руководства вы развернете сервер Minecraft
Чтобы развернуть сервер Minecraft актуальной версии в Yandex Cloud:
- Подготовьте облако к работе.
- Создайте группу безопасности.
- Создайте ВМ для сервера Minecraft.
- Установите необходимые утилиты.
- Скачайте и запустите сервер Minecraft.
- Протестируйте работоспособность решения.
Если созданные ресурсы вам больше не нужны, удалите их.
Подготовьте облако к работе
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость поддержки инфраструктуры входит:
- плата за постоянно работающие ВМ (см. тарифы Yandex Compute Cloud);
- плата за использование публичных IP-адресов и исходящий трафик (см. тарифы Yandex Virtual Private Cloud).
Создайте группу безопасности
Создайте группу безопасности, с правилом, разрешающим трафик к порту 25565
. Этот порт задан по умолчанию в файле конфигурации сервера.
-
В консоли управления
выберите ваш каталог. -
В списке сервисов выберите Virtual Private Cloud.
-
На панели слева выберите
Группы безопасности. -
Нажмите кнопку Создать группу безопасности.
-
В поле Имя укажите имя
minecraft-sg
. -
В поле Сеть выберите сеть
default
. -
В блоке Правила создайте следующие правила для управления трафиком:
Направление
трафикаОписание Диапазон портов Протокол Источник /
НазначениеCIDR блоки Входящий any
25565
Любой
CIDR
0.0.0.0/0
Входящий any
22
Любой
CIDR
0.0.0.0/0
Исходящий any
25565
Любой
CIDR
0.0.0.0/0
-
Нажмите кнопку Сохранить.
Создайте ВМ для сервера Minecraft
-
Создайте пару ключей SSH:
ssh-keygen -t ed25519
Рекомендуем оставить имя файла ключа без изменения.
-
Создайте ВМ с публичным IP-адресом:
Консоль управления-
В консоли управления
выберите каталог, в котором будет создана ВМ. -
В списке сервисов выберите Compute Cloud.
-
На панели слева выберите
Виртуальные машины. -
Нажмите кнопку Создать виртуальную машину.
-
В блоке Образ загрузочного диска выберите образ Ubuntu 22.04 LTS.
-
В блоке Расположение выберите зону доступности, в которой будет находиться ВМ.
-
В блоке Диски и файловые хранилища настройте загрузочный диск:
- Тип —
HDD
. - Размер —
18 ГБ
.
- Тип —
-
В блоке Вычислительные ресурсы перейдите на вкладку Своя конфигурация и укажите рекомендуемые параметры для сервера Minecraft:
- Платформа —
Intel Ice Lake
. - vCPU —
2
. - Гарантированная доля vCPU —
100%
. - RAM —
2 ГБ
.
- Платформа —
-
В блоке Сетевые настройки:
-
В поле Подсеть укажите идентификатор подсети в зоне доступности создаваемой ВМ или выберите облачную сеть из списка.
-
У каждой сети должна быть как минимум одна подсеть. Если подсети нет, создайте ее, выбрав Создать подсеть.
-
Если сети нет, нажмите Создать сеть и создайте ее:
- В открывшемся окне укажите имя сети и выберите каталог, в котором она будет создана.
- (Опционально) Выберите опцию Создать подсети, чтобы автоматически создать подсети во всех зонах доступности.
- Нажмите Создать сеть.
-
-
В поле Публичный адрес выберите
Автоматически
, чтобы назначить виртуальной машине случайный внешний IP-адрес из пула Yandex Cloud, или выберите статический адрес из списка, если вы зарезервировали его заранее. -
В поле Группы безопасности выберите созданную ранее группу безопасности
minecraft-sg
.
-
-
В блоке Доступ выберите SSH-ключ и укажите данные для доступа к ВМ:
-
В поле Логин введите имя пользователя, который будет создан на виртуальной машине, например
ubuntu
.Внимание
Не используйте логин
root
или другие имена, зарезервированные операционной системой. Для выполнения операций, требующих прав суперпользователя, используйте командуsudo
. -
В поле SSH-ключ выберите SSH-ключ, сохраненный в вашем профиле пользователя организации.
Если в вашем профиле нет сохраненных SSH-ключей или вы хотите добавить новый ключ:
- Нажмите кнопку Добавить ключ.
- Задайте имя SSH-ключа.
- Загрузите или вставьте содержимое открытого SSH-ключа. Пару SSH-ключей для подключения к ВМ по SSH необходимо создать самостоятельно.
- Нажмите кнопку Добавить.
SSH-ключ будет добавлен в ваш профиль пользователя организации.
Если в организации отключена возможность добавления пользователями SSH-ключей в свои профили, добавленный открытый SSH-ключ будет сохранен только в профиле пользователя создаваемой виртуальной машины.
-
-
В блоке Общая информация задайте имя ВМ:
minecraft-server
. -
Нажмите Создать ВМ.
Рекомендуемая конфигурация виртуальной машины:
Конфигурация Количество игроков vCPU RAM Объем диска Минимальная 1-4 2 1GB минимум 150MB HDD Рекомендуемая 5-10 2 2GB минимум 200MB HDD Лучшая 10+ 4 4GB минимум 200MB SSD Важно
Обратите внимание, что эта таблица с конфигурацией отражает настройки по умолчанию, определяемые в
server.properties
. Чем больше становится мир, тем выше требования – особенно к оперативной памяти. Чем больше будут области прорисовки игрового мира, деревень и других динамических объектов, тем выше будут требования к виртуальному серверу. -
Установите необходимые утилиты
-
Подключитесь по протоколу SSH к созданной ВМ.
-
Установите необходимые пакеты Java из репозитория и утилиту
screen
для запуска терминальной сессии в фоновом режиме:sudo add-apt-repository -y ppa:openjdk-r/ppa && sudo apt update -y && sudo apt install -y openjdk-17-jre-headless screen
Скачайте и запустите сервер Minecraft
-
Создайте отдельную директорию и перейдите в нее:
mkdir minecraft-server && cd minecraft-server
-
Перейдите по ссылке
и скопируйте URL для скачивания дистрибутива актуальной версии сервера. -
Скачайте дистрибутив в текущую директорию с помощью
wget
:wget -O minecraft_server_1.20.4.jar https://piston-data.mojang.com/v1/objects/8dd1a28015f51b1803213892b50b7b4fc76e594d/server.jar
-
Создайте файл
eula.txt
для автоматического согласия с условиями лицензионного соглашения EULA :cat << EOF > eula.txt eula=true EOF
-
Запустите фоновую сессию
screen
:screen
-
В фоновой сессии запустите сервер:
java -Xms1024M -Xmx1024M -jar minecraft_server_1.20.4.jar nogui
Дождитесь успешного завершения создания игрового мира.
[09:18:58] [Worker-Main-2/INFO]: Preparing spawn area: 81% [09:18:59] [Worker-Main-2/INFO]: Preparing spawn area: 82% [09:19:00] [Worker-Main-2/INFO]: Preparing spawn area: 83% ... [09:19:08] [Worker-Main-2/INFO]: Preparing spawn area: 97% [09:19:09] [Server thread/INFO]: Time elapsed: 75917 ms [09:19:09] [Server thread/INFO]: Done (92.666s)! For help, type "help"
-
(Опционально) Можно оставить сессию
screen
работать в фоне, используя горячие клавишиcontrol + a + d
и вернуться в основной терминал виртуальной машины.Чтобы вернуться к фоновой сессии с запущенным сервером, если такая фоновая сессия только одна, выполните команду:
screen -r
Если фоновых сессий несколько, получите их список, выполнив команду:
screen -list
Результат выполнения:
There is a screen on: 24257.pts-0.mcft-test (02/28/2024 09:17:15 AM) (Detached) 1 Socket in /run/screen/S-username.
Затем перейдите в сессию по нужному номеру ID из списка:
screen -r 24257
-
После запуска сервера в директории будут созданы новые директории и необходимые файлы для работы и конфигурации сервера, в том числе логи:
4096 Mar 16 09:50 . 4096 Mar 16 09:52 .. 2 Mar 16 09:16 banned-ips.json 2 Mar 16 09:16 banned-players.json 10 Mar 16 09:48 eula.txt 4096 Mar 16 09:50 libraries 4096 Mar 16 09:16 logs 49150256 Dec 7 09:04 minecraft_server_1.20.4.jar 2 Mar 16 09:16 ops.json 1303 Mar 16 09:16 server.properties 2 Mar 16 09:16 usercache.json 4096 Mar 16 09:50 versions 2 Mar 16 09:50 whitelist.json 4096 Mar 16 09:13 world
Протестируйте работоспособность решения
-
Добавьте сервер в список серверов в клиенте Minecraft. Название сервера задайте произвольно, а в поле Адрес сервера укажите назначенный публичный IP-адрес для нашей виртуальной машины при ее создании.
-
В списке серверов выберите добавленный сервер и нажмите кнопку
Подключиться
.
Как удалить созданные ресурсы
Чтобы перестать платить за созданные ресурсы: