Google Cloud Platform - Настройка игрового сервера
В этой статье мы настроим сервер в общедоступном облаке для обслуживания игрового приложения с использованием инфраструктуры как услуги (IaaS), предоставляемой облачной платформой Google. Однако процесс будет почти таким же для любых других общедоступных облачных платформ.
Обзор шагов:
- Настройте учетную запись и создайте проект в любом публичном облаке (например, облачной платформе Google)
- Создайте виртуальную машину необходимой конфигурации и загрузочного образа диска в предпочтительном регионе и зоне (например, машину Debian GNU / Linux 9 (stretch) с размером диска не менее 50 ГБ)
- Установите все требования и зависимости времени выполнения на виртуальной машине (например, JRE для Java-приложения)
- Настройте правила брандмауэра для виртуального экземпляра, чтобы разрешить клиентский трафик.
- Убедитесь, что сервер работает все время.
Используемые инструменты:
В этой статье мы рассмотрим следующие инструменты и технологии:
- Облачная платформа Google
- Игра - Майнкрафт (JAR-файл сервера)
- Приложение экрана в Linux
Теперь выполните следующие шаги, чтобы настроить сервер.
ШАГ 1:
- Зайдите в консоль Googlecloud
- Зарегистрируйтесь с помощью учетной записи Google, затем создайте проект, щелкнув раскрывающийся список выбора проекта на верхней панели, а затем щелкнув новый проект.
Примечание. Если у вас не активирована бесплатная пробная учетная запись, вам будет выставлен счет за подготовку и использование любых ресурсов в облаке Google.
После завершения первоначальной настройки вы должны увидеть аналогичный интерфейс:
Примечание. Здесь мы используем учебную учетную запись Qwiklabs.
ШАГ 2:
На этом этапе мы должны создать экземпляр виртуальной машины с требуемой конфигурацией, а также добавим дополнительный постоянный диск SSD объемом 50 ГБ. Откройте облачную оболочку Google, нажав кнопку, показанную ниже:
- Нажмите "Продолжить" или "Авторизуйтесь", если будет предложено.
- Введите следующую команду, чтобы создать экземпляр
$ gcloud beta compute --project = qwiklabs-gcp-04-f7bbc9a0604c экземпляры создают mc-server --zone = us-central1-a --machine-type = e2-medium --subnet = default --address = 35.232.183.36 --network-tier = PREMIUM --main Maintenance-policy = MIGRATE --service-account=875541841397-compute@developer.gserviceaccount.com --scopes = https: //www.googleapis.com/auth/servicecontrol,https: //www.googleapis.com/auth/service.management.readonly, https://www.googleapis.com/auth/logging. напишите, https: //www.googleapis.com/auth/monitoring.write,https: //www.googleapis.com/auth/trace.append, https: //www.googleapis.com/auth/devstorage.read_write - -tags = minecraft-server --image = debian-9-stretch-v20201216 --image-project = debian-cloud --boot-disk-size = 10GB --boot-disk-type = pd-standard --boot- disk-device-name = mc-server --create-disk = mode = rw, size = 50, type = projects / qwiklabs-gcp-04-f7bbc9a0604c / zone / us-central1-a / diskTypes / pd-ssd, name = minecraft-disk, device-name = minecraft-disk --reservation-affinity = любой
Это может занять около минуты. Результат должен выглядеть так:
- После выполнения команды на панели навигации перейдите в Compute Engine> Экземпляры виртуальных машин.
Примечание . «Внешние IP-адреса» виртуальной машины будут использоваться для проверки работы сервера.
- Щелкните SSH, чтобы открыть терминал и подключиться. (откроется новое окно)
Поскольку мы добавили диск, мы должны смонтировать его, используя следующие команды в экземпляре Linux.
- Чтобы создать каталог, который служит точкой монтирования для диска с данными, выполните следующую команду:
$ sudo mkdir -p / главная / майнкрафт
- Чтобы отформатировать диск, выполните следующую команду:
$ sudo mkfs.ext4 -F -E lazy_itable_init = 0, lazy_journal_init = 0, сбросить / dev / disk / по-идентификатору / google-minecraft-disk
- Чтобы смонтировать диск, выполните следующую команду:
$ sudo mount -o discard, по умолчанию / dev / disk / by-id / google-minecraft-disk / home / minecraft
ШАГ 3:
- Чтобы обновить репозитории Debian на виртуальной машине, выполните следующую команду:
$ sudo apt-get update
- После обновления репозиториев, чтобы установить автономную JRE, выполните следующую команду:
$ sudo apt-get install -y по умолчанию-jre-headless
- Чтобы перейти в каталог, в котором смонтирован постоянный диск, выполните следующую команду:
$ cd / главная / майнкрафт
Wget используется для загрузки файла JAR.
- Чтобы установить wget , выполните следующую команду:
sudo apt-get install wget
- Если будет предложено продолжить, введите Y
- Чтобы загрузить текущий файл JAR сервера Minecraft (1.11.2 JAR), выполните следующую команду:
$ sudo wget https://launcher.mojang.com/v1/objects/d0d0fe2b1dc6ab4c65554cb
- Чтобы инициализировать сервер Minecraft, выполните следующую команду:
$ sudo java -Xmx1024M -Xms1024M -jar server.jar nogui
Мы должны принять Лицензионное соглашение с конечным пользователем (EULA), чтобы запустить сервер.
- Чтобы изменить лицензионное соглашение, выполните следующую команду:
$ sudo nano eula.txt # Измените последнюю строку файла с eula = false на eula = true
После редактирования eula.txt он должен выглядеть так:
- Чтобы сохранить и выйти из текстового редактора Nano, нажмите CTRL + o, Enter, CTRL + x.
.ШАГ 4:
- Перейдите в облачный терминал Google в консоли и введите следующую команду, чтобы создать правило брандмауэра,
$ gcloud compute --project = qwiklabs-gcp-04-f7bbc9a0604c правила брандмауэра создают правило майнкрафта --direction = INGRESS --priority = 1000 --network = default --action = ALLOW --rules = tcp: 25565 --source-range = 0.0.0.0 / 0 --target-tags = minecraft-server
Результат должен выглядеть так:
ШАГ 5:
Чтобы убедиться, что сервер работает все время, мы можем использовать приложение «screen».
- Теперь снова перейдите к сеансу SSH виртуальной машины и установите приложение «Экран», используя следующую команду:
$ sudo apt-get install -y экран
- Чтобы запустить сервер Minecraft в экранном виртуальном терминале, выполните следующую команду: (Используйте флаг -S, чтобы назвать свой терминал mcs)
$ sudo screen -S mcs java -Xmx1024M -Xms1024M -jar server.jar nogui
Для запуска сервера потребуется некоторое время. Результат должен выглядеть так:
Теперь сервер продолжит работать в фоновом режиме,
- Используйте этот веб-сайт, чтобы проверить, работает ли сервер Minecraft или нет.
Рабочий статус сервера должен быть похож на изображение, показанное ниже:
Примечание. Вы должны использовать внешний IP-адрес вашей виртуальной машины (перейдите в меню навигации> Compute Engine> виртуальные экземпляры, чтобы получить внешний IP-адрес вашей виртуальной машины).