Управляемые кластеры
Узнайте о управляемых кластерах и быстро начните работу с настраиваемыми бэкенд-решениями.
✔️ Введение
Управляемые кластеры упрощают и ускоряют размещение самостоятельно управляемых игровых сервисов и бэкенда. Вы готовите образ сервиса, а мы предоставляем высокодоступную, отказоустойчивую облачную среду для их запуска:
аутентификация игроков,
хранение данных - аккаунты, прогресс, инвентарь, награды, ...
социальные сервисы - чат, кланы, таблицы лидеров, турниры, ...
настраиваемый матчмейкинг - с использованием Управляемые кластеры, Управляемые кластеры, ...
безсерверные вычисления - управляемые функции как сервис (альт. cloudscript, lambda), ...
Приватные кластеры гарантируют, что вашим сервисам обеспечен выделённый вычислительный ресурс для обслуживания игроков 24/7.
Наши кластерные машины используют процессоры AMD/Intel с тактовой частотой 2.4 - 3.2 ГГц. Свяжитесь в сообществе Discord чтобы согласовать нагрузочные тесты и убедиться, что вашему серверу доступно достаточное количество ресурсов.
🛠️ Инструменты разработчика
Если вы видите возможность улучшения, пожалуйста, сообщите нам в нашем сообществе Discord.
Мы надеемся, что вы получите плавный опыт. 🚀
Docker
Чтобы сделать ваш сервер надёжным, мы используем Docker - программное обеспечение виртуализации, чтобы гарантировать, что все зависимости вашего серверного кода вплоть до уровня операционной системы всегда будут точно одинаковыми, вне зависимости от того, как и где запускается сервер.
Kubernetes (K8s)
Kubernetes, также известный как K8s, — это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнеризированными приложениями (Docker Images). Она группирует контейнеры, составляющие приложение, в логические единицы для лёгкого управления и обнаружения.
Управляемые кластеры Edgegap предоставляют Kubernetes API для административных задач.
K8s Lens
С более чем 1 миллионом пользователей, K8s Lens является самым популярным IDE для Kubernetes в мире. Подключайтесь к кластерам, исследуйте, получайте инсайты, изучайте и при необходимости предпринимаете действия. Lens предоставляет всю информацию о ваших нагрузках и ресурсах в реальном времени, всегда в нужном контексте.
Kubernetes API кластера Edgegap можно использовать через Lens или другие IDE для Kubernetes.
Пакетный менеджер Helm
Helm — лучший способ находить, делиться и использовать ПО, созданное для Kubernetes. Helm помогает управлять Kubernetes-приложениями — Helm Charts помогают определять, устанавливать и обновлять даже самые сложные Kubernetes-приложения. Charts легко создавать, версионировать, делиться и публиковать — так что начните использовать Helm и прекратите копировать и вставлять.
Установка Helm CLI обеспечивает разработчикам простой интерфейс для управления пакетами кластера.
🚀 Начало работы
☑️ Зарегистрировались для вашего бесплатного аккаунта Edgegap и обновитесь до тарифа «плати по мере использования», чтобы разблокировать Кластеры.
☑️ Перейдите в Управляемые кластеры страницу.
☑️ Нажмите на Создать кластер сначала, затем введите:
Метка для вашего кластера, чтобы позже легко его найти,
Размер кластера - см. Управляемые кластеры.
Мы настоятельно рекомендуем создавать отдельные кластеры для сред разработки и продакшна.
☑️ Просмотрите оценочную стоимость и нажмите Создать кластер чтобы запустить ваш новый кластер.
☑️ Как только кластер будет готов, нажмите Kubeconfig, чтобы скачать вашу конфигурацию и учетные данные для подключения и администрирования вашего нового кластера.
☑️ Переместите файл kubeconfig в kubectl чтобы он мог его найти.
☑️ Пользователи Lens: импортируйте ваш файл kubeconfig.
☑️ Проверьте подключение к кластеру командой kubectl get nodes :
🙌 Поздравляем, вы завершили настройку управляемого кластера! Теперь вы можете устанавливать ваши сервисы.
📦 Nakama от Heroic Labs
Интегрируйте Edgegap с плагином Nakama + плагином Unity! Свяжитесь с нами по другим платформам/функциям.
Выполните следующие шаги, чтобы разместить свой собственный Игровой бэкенд Nakama в управляемых кластерах:
☑️ Создайте DNS-запись типа A у вашего провайдера DNS (например, Cloudflare), запомните URL для дальнейшего использования. Ваш внешний IP для DNS-записи можно найти в Lens в разделе Services / ingress-nginx-controller .
☑️ Проверьте корректность настройки DNS, выполнив запрос с помощью DNSchecker.
☑️ Создайте файл с именем values.yaml со следующим содержимым (используйте свои значения):
Замените <VALUES> выше на ваши собственные значения в файле выше.
☑️ Разверните helm chart Nakama:
☑️ Lens: проверьте установку в разделе Workloads / Deployments, nakama должен работать.
✅ Подключитесь к вашей консоли Nakama используя URL и учётные данные из values.yaml файла.
🙌 Поздравляем, вы завершили настройку самоуправляемого игрового бэкенда Nakama!
Обновления сервиса
Выполните следующие шаги для обновления сервиса, размещённого в управляемом кластере:
☑️ Обновите ваш файл value.yaml с новыми данными.
☑️ Обновите ваш helm chart, используя эту команду:
☑️ Перезагрузите изменения, завершив обновлённые поды — после этого будет использован новый helm chart, когда мы автоматически перезапустим поды.
🙌 Поздравляем, вы завершили обновление кластера Nakama!
👷 Продвинутый матчмейкер
Выполните следующие шаги, чтобы разместить ваш OpenMatch в управляемом кластере.
☑️ Создайте DNS-запись типа A у вашего провайдера DNS (например, Cloudflare), запомните URL для дальнейшего использования. Ваш внешний IP для DNS-записи можно найти в Lens в разделе Services / ingress-nginx-controller .
☑️ Проверьте корректность настройки DNS, выполнив запрос с помощью DNSchecker.
☑️ Создайте файл с именем values.yaml со следующим содержимым (используйте свои значения):
Замените <VALUES> выше на ваши собственные значения в файле выше.
☑️ Добавьте репозиторий Edgegap в список ваших репозиториев:
☑️ Разверните helm chart продвинутого матчмейкера:
🙌 Поздравляем, вы завершили настройку продвинутого матчмейкера!
Обновления сервиса
Выполните следующие шаги для обновления сервиса, размещённого в управляемом кластере:
☑️ Обновите ваш файл value.yaml с новыми данными.
☑️ Обновите ваш helm chart, используя эту команду:
☑️ Перезагрузите изменения, завершив обновлённые поды (director, mmf, frontend), после чего будет использован новый helm chart, когда мы автоматически перезапустим поды.
🙌 Поздравляем, вы завершили обновление продвинутого матчмейкера!
Непрерывное развертывание
Автоматизируйте обновление ваших сервисов, добавив этот shell-скрипт в ваш пайплайн развертывания:
Проверка сертификата Letsencrypt (C#)
Для некоторых клиентов рекомендованная проверка сертификата Letsencrypt может завершаться с ошибкой:
Обновление операционной системы может решить проблемы с устаревшим корневым центром сертификации.
В крайнем случае игровые клиенты могут реализовать пользовательскую функцию обработки сертификата:
Использование:
Мы рекомендуем хранить значение EXPECTED_CERT в вашем собственном хранилище файлов и получать его во время выполнения, чтобы вы могли обновлять его без выпуска обновления игрового клиента.
🟢 Операции и наблюдаемость
Изменения уровня кластера
Подготовьтесь к успеху и оптимизируйте после запуска, чтобы не блокировать игроков в день релиза.
Изменение размера кластера требует остановки кластера. Смотрите развёртывание blue/green для обновлений без простоя.
Поддержка и будущие обновления
Ваш успех — наш приоритет. Если вы хотите отправить пользовательские запросы, попросить отсутствующие критические функции или поделиться любыми мыслями, пожалуйста, свяжитесь с нами в нашем сообществе Discord.
Последнее обновление
Это было полезно?

