기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon GameLift Servers로 프로덕션 환경에서 게임 호스팅 관리
Amazon GameLift Servers로 게임을 시작한 후에는 최적의 성능, 안정성, 플레이어 경험을 보장하기 위해 게임 호스팅 인프라를 관리해야 합니다. 이 주제에서는 프로덕션 중에 게임 호스팅 수명 주기를 관리하기 위한 주요 기능과 도구를 다룹니다.
호스팅 상태 및 성능 모니터링
Amazon GameLift Servers는 게임 호스팅 인프라의 상태와 성능을 추적하는 데 도움이 되는 포괄적인 모니터링 도구를 제공합니다.
-
성능 지표 - 인스턴스 사용률, 플레이어 세션, 게임 세션 배치와 같은 관리형 플릿의 주요 성능 지표를 모니터링합니다. Amazon GameLift Servers 또는 Amazon CloudWatch에서 이러한 지표를 추적하면 지표가 임계값을 초과할 때 알림을 받도록 경보를 설정할 수도 있습니다.
-
플릿 지표 및 이벤트 - 활성 서버 프로세스, 사용 가능한 게임 세션, 활성 플레이어 세션을 포함한 플릿별 지표를 추적하여 최적의 용량을 보장합니다.
-
게임 세션 배치 지표 및 이벤트 - 지표 및 이벤트를 추적하여 게임 세션 배치 시스템의 상태와 성능을 모니터링합니다.
-
게임 세션 로그 - 게임 세션 로그에 액세스하고 분석하여 문제를 식별하고 플레이어 동작 패턴을 이해합니다.
-
Realtime 스크립트 로그 - 실시간 서버를 사용하는 게임의 경우 세부 로그를 통해 스크립트 실행 및 성능을 모니터링합니다.
-
AWS 상태 대시보드 - Amazon GameLift Servers 배포에 영향을 미칠 수 있는 AWS 서비스 상태에 대한 최신 정보를 제공합니다.
Amazon GameLift Servers 콘솔, AWS CLI를 통해 이러한 모니터링 도구Amazon GameLift Servers에 액세스하거나 용 AWS SDK를 사용하여 사용자 지정 대시보드 및 모니터링 솔루션을 생성할 수 있습니다.
게임 서버 업데이트 및 패치 관리
게임 서버를 최신 상태로 유지하는 것은 보안, 성능, 새 기능 추가에 매우 중요합니다. Amazon GameLift Servers는 업데이트를 관리하기 위한 몇 가지 접근 방식을 제공합니다.
-
빌드 관리 - 게임 서버 빌드의 여러 버전을 업로드하고 관리합니다. 각 빌드는 버전이 지정되며 서로 다른 플릿에 배포할 수 있습니다.
-
플릿 교체 - AMI 버전 및 게임 서버 빌드 업데이트를 사용하여 새 플릿을 생성하고 게임 세션 배치 대기열 및 별칭을 사용하여 이전 플릿에서 새 플릿으로 트래픽을 점진적으로 이동합니다.
-
스크립트 업데이트 - 실시간 서버의 경우 새 스크립트 버전을 업로드하여 전체 플릿을 교체하지 않고 서버 스크립트를 업데이트합니다.
-
컨테이너 업데이트 - 컨테이너 기반 배포의 경우 컨테이너 이미지 및 정의를 업데이트합니다. 게임 서버의 새 버전을 기존 플릿에 배포합니다. 플릿을 교체하여 AMI 버전을 업데이트합니다.
-
자동 배포 - AWS CodePipeline 및 AWS CodeDeploy 를 사용하여 자동 게임 서버 업데이트를 위한 CI/CD 파이프라인을 생성합니다.
업데이트를 계획할 때는 블루/그린 배포 전략을 사용하여 활성 플레이어의 중단을 최소화하고 문제가 감지되면 빠른 롤백을 허용하는 것이 좋습니다.
성능 최적화 및 크기 조정
플레이어 기반이 발전함에 따라 최적의 성능과 비용 효율성을 유지하려면 호스팅 구성을 조정해야 합니다.
-
Auto Scaling - 플레이어 수 또는 게임 세션 사용률과 같은 지표를 기반으로 플릿 조정 정책을 구성하여 용량을 자동으로 조정합니다.
-
리전별 배포 조정 - 플레이어 인구 통계 및 지연 시간 요구 사항에 따라 다중 리전 배포에서 리전을 추가하거나 제거합니다.
-
대기열 관리 - 게임 세션 배치 대기열 구성을 최적화하여 플레이어 경험과 호스팅 비용의 균형을 맞춥니다.
-
인스턴스 유형 선택 - 성능 지표를 분석하여 게임 서버 요구 사항에 가장 비용 효율적인 인스턴스 유형을 결정합니다.
-
스팟 인스턴스 사용 - 온디맨드 인스턴스에 대한 적절한 대체 전략을 사용하여 중요하지 않은 워크로드에 스팟 인스턴스를 활용하여 비용을 절감합니다.
-
FlexMatch 튜닝 - 실제 플레이어 데이터 및 피드백을 기반으로 매치메이킹 규칙 및 알고리즘을 세부 조정합니다.
CloudWatch 지표 및 비용 보고서를 정기적으로 검토하여 최적화 기회를 식별하고 Amazon GameLift Servers 콘솔 또는 API를 통해 변경 사항을 구현합니다.
문제 해결 및 실시간 운영
긍정적인 플레이어 경험을 유지하려면 효과적인 문제 해결 및 실시간 운영 관리가 필수입니다.
-
플릿 이벤트 알림 - 조정 활동, 인스턴스 종료 또는 게임 세션 배치 실패와 같은 플릿 이벤트에 대한 Amazon Simple Notification Service 알림을 설정합니다.
-
게임 세션 배치 디버깅 - 자세한 배치 로그를 사용하여 게임 세션 배치 문제를 식별하고 해결합니다.
-
서버 프로세스 상태 확인 - 서버 프로세스 상태를 모니터링하고 상태 확인에 실패한 프로세스를 자동으로 교체합니다.
-
원격 액세스 - AWS Systems Manager Session Manager를 사용하여 직접 문제 해결을 위해 플릿 인스턴스에 연결합니다.
-
별칭 관리 - 별칭을 사용하여 클라이언트 구성을 변경하지 않고 문제가 있는 플릿에서 플레이어 트래픽을 빠르게 리디렉션합니다.
-
백업 및 복구 - 중요한 게임 데이터 및 구성의 정기적인 백업을 구현하여 장애로부터 신속하게 복구할 수 있습니다.
일반적인 문제에 대한 명확한 인시던트 대응 절차와 런북을 설정하여 가동 중지 시간과 플레이어에 미치는 영향을 최소화합니다.
도구 및 통합
Amazon GameLift Servers는 다양한 AWS 서비스 및 타사 도구와 통합되어 프로덕션 관리 기능을 개선합니다.
-
AWS CloudFormation - GameLift 리소스를 일관된 배포를 위한 코드형 인프라로 정의하고 관리합니다.
-
AWS Lambda - 서버리스 함수를 생성하여 일상적인 관리 작업을 자동화하고 이벤트에 응답합니다.
-
Amazon EventBridge - Amazon GameLift Servers 환경의 변경 사항에 자동으로 응답하는 이벤트 기반 아키텍처를 구축합니다.
-
AWS SDK 통합 - AWS SDKs 사용하여 특정 요구 사항에 맞는 사용자 지정 관리 도구 및 대시보드를 구축합니다.
-
타사의 모니터링 - CloudWatch 지표 내보내기를 사용하여 타사 모니터링 및 분석 플랫폼과 통합합니다.
이러한 통합을 활용하여 팀의 워크플로 및 요구 사항에 맞는 포괄적인 관리 솔루션을 생성합니다.