관리형 클러스터

관리형 클러스터에 대해 알아보고 맞춤형 백엔드 솔루션을 빠르게 시작하세요.

✔️ 소개

관리형 클러스터는 자체 관리형 게임 서비스와 게임 백엔드를 간편하고 빠르게 호스팅할 수 있게 해줍니다. 서비스 이미지를 준비하면, 저희가 이를 실행할 고가용성의 복원력 있는 클라우드 환경을 제공합니다:

  • 플레이어 인증,

  • 데이터 저장 - 계정, 진행도, 인벤토리, 보상, ...

  • 소셜 서비스 - 채팅, 클랜, 리더보드, 토너먼트, ...

  • 맞춤 매치메이킹 - 사용 관리형 클러스터, 관리형 클러스터, ...

  • 서버리스 컴퓨트 - 관리형 함수형 서비스 (대안: 클라우드스크립트, 람다), ...

프라이빗 클러스터는 귀하의 서비스에 전용 컴퓨팅을 제공하여 24/7 플레이어를 지원합니다.

현재 저희는 3가지 사설 클러스터 등급을 모든 사람의 요구를 충족시키기 위해 제공하고 있습니다:

등급
스튜디오 티어
엔터프라이즈 티어
전체 한도

적합한 사례

열정 있는 사용자, 개인 개발자

상업적 출시

고트래픽 출시

리소스

1 vCPU + 2GB RAM

6 vCPU + 12GB RAM

18 vCPU + 48GB RAM

중복성

1x 가상 노드

3x 가상 노드

3x 가상 노드

요청 한도 (req/s)

200

750

2,000

가격(시간당)

$0.0312

$0.146

$0.548

가격(30일) (연속 사용)

$22.464

$105.12

$394.56

저희 클러스터 기계는 2.4 - 3.2 GHz 클록 속도의 AMD/Intel CPU를 사용합니다. 부하 테스트를 조율하고 서버에 충분한 리소스가 있는지 확인하려면 커뮤니티 디스코드 로 연락하세요.

🛠️ 개발자 도구

개선할 기회가 보이면 저희 커뮤니티 디스코드.

에 알려주세요. 원활한 경험을 제공하기를 바랍니다. 🚀

Docker

서버를 안정적으로 만들기 위해 저희는 Docker - 서버의 모든 코드 종속성을 운영체제 수준까지 항상 정확히 동일하게 보장하는 가상화 소프트웨어를 사용합니다. 서버가 어떻게 또는 어디에서 실행되든 동일하게 유지됩니다.

다음 시청을 권장합니다 "로컬에 절대 설치하지 마세요" (비디오). Docker와 함께 Dockerhub를 사용할 필요가 없습니다. Docker ≠ Dockerhub. Docker를 프로그래밍 엔진으로, Dockerhub를 앱 스토어로 생각하세요.

Kubernetes (K8s)

Kubernetes는 K8s라고도 불리며, 컨테이너화된 애플리케이션(Docker 이미지)의 배포, 스케일링 및 관리를 자동화하는 오픈 소스 시스템입니다. 애플리케이션을 구성하는 컨테이너를 논리적 단위로 그룹화하여 관리 및 탐색을 쉽게 합니다.

Edgegap 관리형 클러스터는 관리 목적의 Kubernetes API를 제공합니다.

K8s Lens

100만 명 이상의 사용자와 함께, K8s Lens 은 전 세계에서 가장 인기 있는 Kubernetes IDE입니다. 클러스터에 연결하고, 탐색하고, 인사이트를 얻고, 필요할 때 작업을 수행하세요. Lens는 워크로드와 리소스의 모든 정보를 실시간으로 적절한 맥락에서 제공합니다.

Edgegap 클러스터 Kubernetes API는 Lens 또는 다른 Kubernetes IDE를 통해 사용할 수 있습니다.

Helm 패키지 관리자

Helm 은 Kubernetes용으로 만들어진 소프트웨어를 찾고, 공유하고, 사용하는 가장 좋은 방법입니다. Helm은 Kubernetes 애플리케이션 관리를 도와주며, Helm 차트는 가장 복잡한 Kubernetes 애플리케이션도 정의, 설치 및 업그레이드할 수 있게 합니다. 차트는 생성, 버전 관리, 공유 및 게시가 쉬우므로 Helm을 사용하여 복사-붙여넣기를 멈추세요.

Helm CLI 설치 는 개발자가 클러스터 패키지를 관리할 수 있는 간단한 인터페이스를 제공합니다.

🚀 시작하기

☑️ 무료 Edgegap 계정에 등록 하고 클러스터를 잠금 해제하려면 종량제 요금제로 업그레이드하세요.

☑️ 이동: 관리형 클러스터 페이지로.

☑️ 클릭: 클러스터 생성 먼저 클릭한 뒤 다음을 입력하세요:

  • 라벨 나중에 클러스터를 쉽게 찾을 수 있도록,

  • 클러스터 크기 - 참조 관리형 클러스터.

☑️ 예상 비용을 검토하고 클러스터 생성 를 클릭하여 새 클러스터를 시작하세요.

☑️ 클러스터가 준비되면, Kubeconfig를 클릭하여 새 클러스터에 연결하고 관리하기 위한 구성 및 자격증명을 다운로드하세요 새 클러스터에 연결하고 관리하기 위해.

☑️ kubeconfig 파일을 이동하세요 위치로 kubectl 이 찾을 수 있게.

☑️ Lens 사용자: kubeconfig 파일을 가져오세요.

☑️ 다음 명령으로 클러스터 연결을 테스트하세요: kubectl get nodes :

🙌 축하합니다! 관리형 클러스터 설정을 완료했습니다. 이제 서비스를 설치할 수 있습니다.

📦 Heroic Labs의 Nakama

자체 Nakama 게임 백엔드 를 관리형 클러스터에서 호스팅하려면 다음 단계를 따르세요:

☑️ 설치 인증서 관리자 게임 클라이언트에서 HTTPS 요청 사용을 지원하려면:

☑️ Lens: Services / Network 섹션에서 설치를 확인하십시오, cert-manager 가 실행 중이어야 합니다.

☑️ 작성 클러스터 발급자(Cluster Issuer) 파일, 아래의 <YOUR_EMAIL> 을(를) 교체하는 것을 잊지 마세요:

☑️ 다음을 생성하세요 클러스터 발급자(Cluster Issuer) 명령줄에서:

☑️ Lens: Custom Resources 섹션에서 설치 확인 / cert-manager.io - 클러스터 발급자 생성됨.

☑️ 설치하기 nginx Ingress 클라이언트 요청을 수신하여 클러스터 내 서비스로 전달하기 위해:

helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm upgrade --install ingress-nginx ingress-nginx/ingress-nginx \
  --namespace ingress-nginx --create-namespace

☑️ Lens: Services / Network 섹션에서 설치를 확인하십시오, nginx 가 실행 중이어야 합니다.

☑️ 생성: DNS 레코드 유형 A 를 DNS 공급자에 생성하세요 (예: Cloudflare), 나중을 위해 URL을 메모하세요. 귀하의 DNS 레코드용 외부 IP 는 Lens의 Services / ingress-nginx-controller .

에서 찾을 수 있습니다. ☑️ DNS가 올바르게 설정되었는지 확인하려면 조회를 수행하세요.

DNSchecker 사용 ☑️ 다음 이름의 파일을 생성하세요: values.yaml

위 파일 내에서.

--version 1.0.0 <RELEASE_NAME> oci://registry-1.docker.io/edgegap/heroiclabs-nakama ☑️ Lens: Workloads / Deployments 섹션에서 설치를 확인하세요, nakama

가 실행 중이어야 합니다. Nakama 콘솔에 연결하세요 ☑️ 다음 이름의 파일을 생성하세요: 파일의 URL 및 자격증명으로.

🙌 축하합니다! 자체 호스팅 Nakama 게임 백엔드 설정을 완료했습니다!

서비스 업데이트

관리형 클러스터에 호스팅된 서비스를 업데이트하려면 다음 단계를 따르세요:

☑️ 귀하의 value.yaml 파일을 새 파일로 업데이트하세요.

☑️ 다음 명령으로 helm 차트를 업데이트하세요:

☑️ 업데이트된 파드를 종료하여 변경사항을 다시 로드하세요. 그러면 자동으로 파드를 재시작한 후 새 helm 차트가 사용됩니다.

🙌 축하합니다! Nakama 클러스터 업데이트를 완료했습니다!

👷 고급 매치메이커

다음 단계를 따라 OpenMatch 을 관리형 클러스터에 호스팅하세요.

☑️ 설치 인증서 관리자 게임 클라이언트에서 HTTPS 요청 사용을 지원하려면:

☑️ Lens: Services / Network 섹션에서 설치를 확인하십시오, cert-manager 가 실행 중이어야 합니다.

☑️ 작성 클러스터 발급자(Cluster Issuer) 파일, 아래의 <YOUR_EMAIL> 을(를) 교체하는 것을 잊지 마세요:

☑️ 다음을 생성하세요 클러스터 발급자(Cluster Issuer) 명령줄에서:

☑️ Lens: Custom Resources 섹션에서 설치 확인 / cert-manager.io - 클러스터 발급자 생성됨.

☑️ 설치하기 nginx Ingress 클라이언트 요청을 수신하여 클러스터 내 서비스로 전달하기 위해:

helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm upgrade --install ingress-nginx ingress-nginx/ingress-nginx \
  --namespace ingress-nginx --create-namespace

☑️ Lens: Services / Network 섹션에서 설치를 확인하십시오, nginx 가 실행 중이어야 합니다.

☑️ DNS 공급자에 DNS 레코드 유형 A를 생성하세요 (예: Cloudflare), 나중을 위해 URL을 메모하세요. 귀하의 DNS 레코드용 외부 IP 는 Lens의 Services / ingress-nginx-controller .

에서 찾을 수 있습니다. ☑️ DNS가 올바르게 설정되었는지 확인하려면 조회를 수행하세요.

DNSchecker 사용 ☑️ 다음 이름의 파일을 생성하세요: values.yaml

☑️ 다음을 추가하세요: Edgegap 리포지토리 를 리포지토리 목록에:

☑️ 고급 매치메이커 helm 차트 배포:

🙌 축하합니다! 고급 매치메이커 설정을 완료했습니다!

서비스 업데이트

관리형 클러스터에 호스팅된 서비스를 업데이트하려면 다음 단계를 따르세요:

☑️ 귀하의 value.yaml 파일을 새 파일로 업데이트하세요.

☑️ 다음 명령으로 helm 차트를 업데이트하세요:

☑️ 업데이트된 파드(director, mmf, frontend)를 종료하여 변경사항을 다시 로드하세요. 그러면 자동으로 파드를 재시작한 후 새 helm 차트가 사용됩니다.

🙌 축하합니다! 고급 매치메이커 업데이트를 완료했습니다!

지속적 배포

다음 셸 스크립트를 배포 파이프라인에 추가하여 서비스 업데이트를 자동화하세요:

Letsencrypt 인증서 검증 (C#)

일부 클라이언트에서는 권장되는 Letsencrypt 인증서 검증이 다음 오류와 함께 실패할 수 있습니다:

최후의 수단으로 게임 클라이언트는 사용자 정의 인증서 핸들러 함수를 구현할 수 있습니다:

사용법:

저장소에 EXPECTED_CERT 값을 보관하고 런타임에 가져오도록 권장합니다. 이렇게 하면 게임 클라이언트를 재배포하지 않고도 업데이트할 수 있습니다.

🟢 운영 및 관측

클러스터 등급 변경

성공을 위해 미리 준비하고 출시 후 최적화하여 출시일에 플레이어가 차단되지 않도록 하세요.

지원 및 향후 업데이트

귀하의 성공이 저희의 최우선입니다. 맞춤 요청을 보내거나, 누락된 주요 기능을 요청하거나, 의견을 남기고 싶다면, 커뮤니티 디스코드에 문의하세요.

Last updated

Was this helpful?