cloudУправляемые кластеры

Узнайте о управляемых кластерах и быстро начните работу с настраиваемыми бэкенд-решениями.

✔️ Введение

Управляемые кластеры упрощают и ускоряют размещение самостоятельно управляемых игровых сервисов и бэкенда. Вы готовите образ сервиса, а мы предоставляем высокодоступную, отказоустойчивую облачную среду для их запуска:

Приватные кластеры гарантируют, что вашим сервисам обеспечен выделённый вычислительный ресурс для обслуживания игроков 24/7.

circle-info

Наши кластерные машины используют процессоры AMD/Intel с тактовой частотой 2.4 - 3.2 ГГц. Свяжитесь в сообществе Discordarrow-up-right чтобы согласовать нагрузочные тесты и убедиться, что вашему серверу доступно достаточное количество ресурсов.

🛠️ Инструменты разработчика

Если вы видите возможность улучшения, пожалуйста, сообщите нам в нашем сообществе Discordarrow-up-right.

Мы надеемся, что вы получите плавный опыт. 🚀

Docker

Чтобы сделать ваш сервер надёжным, мы используем Dockerarrow-up-right - программное обеспечение виртуализации, чтобы гарантировать, что все зависимости вашего серверного кода вплоть до уровня операционной системы всегда будут точно одинаковыми, вне зависимости от того, как и где запускается сервер.

Kubernetes (K8s)

Kubernetesarrow-up-right, также известный как K8s, — это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнеризированными приложениями (Docker Images). Она группирует контейнеры, составляющие приложение, в логические единицы для лёгкого управления и обнаружения.

Управляемые кластеры Edgegap предоставляют Kubernetes API для административных задач.

K8s Lens

С более чем 1 миллионом пользователей, K8s Lensarrow-up-right является самым популярным IDE для Kubernetes в мире. Подключайтесь к кластерам, исследуйте, получайте инсайты, изучайте и при необходимости предпринимаете действия. Lens предоставляет всю информацию о ваших нагрузках и ресурсах в реальном времени, всегда в нужном контексте.

Kubernetes API кластера Edgegap можно использовать через Lens или другие IDE для Kubernetes.

Пакетный менеджер Helm

Helmarrow-up-right — лучший способ находить, делиться и использовать ПО, созданное для Kubernetes. Helm помогает управлять Kubernetes-приложениями — Helm Charts помогают определять, устанавливать и обновлять даже самые сложные Kubernetes-приложения. Charts легко создавать, версионировать, делиться и публиковать — так что начните использовать Helm и прекратите копировать и вставлять.

Установка Helm CLIarrow-up-right обеспечивает разработчикам простой интерфейс для управления пакетами кластера.

🚀 Начало работы

☑️ Зарегистрировались для вашего бесплатного аккаунта Edgegaparrow-up-right и обновитесь до тарифа «плати по мере использования», чтобы разблокировать Кластеры.

☑️ Перейдите в Управляемые кластерыarrow-up-right страницу.

☑️ Нажмите на Создать кластер сначала, затем введите:

triangle-exclamation

☑️ Просмотрите оценочную стоимость и нажмите Создать кластер чтобы запустить ваш новый кластер.

☑️ Как только кластер будет готов, нажмите Kubeconfig, чтобы скачать вашу конфигурацию и учетные данные для подключения и администрирования вашего нового кластера.

☑️ Переместите файл kubeconfigarrow-up-right в kubectl чтобы он мог его найти.

☑️ Пользователи Lens: импортируйте ваш файл kubeconfigarrow-up-right.

☑️ Проверьте подключение к кластеру командой kubectl get nodes :

🙌 Поздравляем, вы завершили настройку управляемого кластера! Теперь вы можете устанавливать ваши сервисы.

📦 Nakama от Heroic Labs

Выполните следующие шаги, чтобы разместить свой собственный Игровой бэкенд Nakamaarrow-up-right в управляемых кластерах:

☑️ Создайте DNS-запись типа A у вашего провайдера DNS (например, Cloudflarearrow-up-right), запомните URL для дальнейшего использования. Ваш внешний IP для DNS-записи можно найти в Lens в разделе Services / ingress-nginx-controller .

☑️ Проверьте корректность настройки DNS, выполнив запрос с помощью DNScheckerarrow-up-right.

☑️ Создайте файл с именем values.yaml со следующим содержимым (используйте свои значения):

triangle-exclamation

☑️ Разверните helm chart Nakama:

☑️ Lens: проверьте установку в разделе Workloads / Deployments, nakama должен работать.

Подключитесь к вашей консоли Nakama используя URL и учётные данные из values.yaml файла.

🙌 Поздравляем, вы завершили настройку самоуправляемого игрового бэкенда Nakama!

Обновления сервиса

Выполните следующие шаги для обновления сервиса, размещённого в управляемом кластере:

☑️ Обновите ваш файл value.yaml с новыми данными.

☑️ Обновите ваш helm chart, используя эту команду:

☑️ Перезагрузите изменения, завершив обновлённые поды — после этого будет использован новый helm chart, когда мы автоматически перезапустим поды.

🙌 Поздравляем, вы завершили обновление кластера Nakama!

👷 Продвинутый матчмейкер

Выполните следующие шаги, чтобы разместить ваш OpenMatcharrow-up-right в управляемом кластере.

☑️ Создайте DNS-запись типа A у вашего провайдера DNS (например, Cloudflarearrow-up-right), запомните URL для дальнейшего использования. Ваш внешний IP для DNS-записи можно найти в Lens в разделе Services / ingress-nginx-controller .

☑️ Проверьте корректность настройки DNS, выполнив запрос с помощью DNScheckerarrow-up-right.

☑️ Создайте файл с именем values.yaml со следующим содержимым (используйте свои значения):

triangle-exclamation

☑️ Добавьте репозиторий Edgegap в список ваших репозиториев:

☑️ Разверните helm chart продвинутого матчмейкера:

🙌 Поздравляем, вы завершили настройку продвинутого матчмейкера!

Обновления сервиса

Выполните следующие шаги для обновления сервиса, размещённого в управляемом кластере:

☑️ Обновите ваш файл value.yaml с новыми данными.

☑️ Обновите ваш helm chart, используя эту команду:

☑️ Перезагрузите изменения, завершив обновлённые поды (director, mmf, frontend), после чего будет использован новый helm chart, когда мы автоматически перезапустим поды.

🙌 Поздравляем, вы завершили обновление продвинутого матчмейкера!

Непрерывное развертывание

Автоматизируйте обновление ваших сервисов, добавив этот shell-скрипт в ваш пайплайн развертывания:

Проверка сертификата Letsencrypt (C#)

Для некоторых клиентов рекомендованная проверка сертификата Letsencrypt может завершаться с ошибкой:

circle-check

В крайнем случае игровые клиенты могут реализовать пользовательскую функцию обработки сертификата:

Использование:

Мы рекомендуем хранить значение EXPECTED_CERT в вашем собственном хранилище файлов и получать его во время выполнения, чтобы вы могли обновлять его без выпуска обновления игрового клиента.

🟢 Операции и наблюдаемость

Изменения уровня кластера

Подготовьтесь к успеху и оптимизируйте после запуска, чтобы не блокировать игроков в день релиза.

circle-exclamation

Поддержка и будущие обновления

Ваш успех — наш приоритет. Если вы хотите отправить пользовательские запросы, попросить отсутствующие критические функции или поделиться любыми мыслями, пожалуйста, свяжитесь с нами в нашем сообществе Discordarrow-up-right.

Последнее обновление

Это было полезно?