기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
플릿의 다른 AWS 리소스와 통신
Amazon GameLift 플릿에 배포할 게임 서버 빌드를 생성할 때 게임 빌드의 애플리케이션이 소유한 다른 AWS 리소스와 직접 안전하게 통신하기를 원할 수 있습니다. Amazon은 게임 호스팅 플릿을 GameLift 관리하기 때문에 이러한 리소스 및 서비스에 대한 제한된 액세스 권한을 Amazon GameLift에 부여해야 합니다.
몇 가지 예제 시나리오는 다음과 같습니다.
-
Amazon CloudWatch 에이전트를 사용하여 관리형 EC2플릿 및 Anywhere 플릿 .
-
Amazon Logs로 인스턴스 CloudWatch 로그 데이터를 전송합니다.
-
Amazon Simple Storage Service(S3) 버킷에 저장된 게임 파일을 가져옵니다.
-
Amazon DynamoDB 데이터베이스 또는 다른 데이터 스토리지 서비스에 저장된 게임 데이터(예: 게임 모드 또는 인벤토리)를 읽고 씁니다.
-
Amazon Simple Queue Service(Amazon )를 사용하여 신호를 인스턴스로 직접 전송합니다SQS.
-
Amazon Elastic Compute Cloud(Amazon )에서 배포되고 실행되는 사용자 지정 리소스에 액세스합니다EC2.
Amazon은 액세스를 설정하기 위해 다음과 같은 방법을 GameLift 지원합니다.
IAM 역할을 사용하여 AWS 리소스에 액세스
IAM 역할을 사용하여 리소스에 액세스할 수 있는 사용자를 지정하고 해당 액세스에 대한 제한을 설정합니다. 신뢰할 수 있는 당사자는 역할을 “수임”하고 리소스와 상호 작용할 수 있는 권한을 부여하는 임시 보안 자격 증명을 받을 수 있습니다. 당사자가 리소스와 관련된 API 요청을 할 때는 자격 증명을 포함해야 합니다.
IAM 역할에서 제어하는 액세스를 설정하려면 다음 작업을 수행합니다.
IAM 역할 생성
이 단계에서는 AWS 리소스에 대한 액세스를 제어할 수 있는 권한 집합과 Amazon에 IAM 역할의 권한을 사용할 수 있는 GameLift 권한을 부여하는 신뢰 정책을 사용하여 역할을 생성합니다.
IAM 역할을 설정하는 방법에 대한 지침은 섹션을 참조하세요Amazon에 대한 IAM 서비스 역할 설정 GameLift. 권한 정책을 생성할 때 애플리케이션이 처리해야 하는 특정 서비스, 리소스 및 작업을 선택합니다. 권한 범위를 최대한 제한하는 것이 가장 좋습니다.
역할을 생성한 후 역할의 Amazon 리소스 이름()을 기록해 둡니다ARN. 플릿을 생성하는 ARN 동안 역할이 필요합니다.
애플리케이션을 수정하여 자격 증명 획득
이 단계에서는 IAM 역할에 대한 보안 자격 증명을 획득하고 AWS 리소스와 상호 작용할 때 사용하도록 애플리케이션을 구성합니다. 다음 표를 참조하여 (1) 애플리케이션 유형 및 (2) 게임에서 Amazon 와 통신하는 데 사용하는 서버 SDK 버전을 기반으로 애플리케이션을 수정하는 방법을 확인하세요 GameLift.
게임 서버 애플리케이션 | 기타 애플리케이션 | |
---|---|---|
서버 SDK 버전 5.x 사용 |
게임 서버 코드 |
코드를 애플리케이션에 추가하여 플릿 인스턴스의 공유 파일에서 자격 증명을 가져옵니다. |
서버 SDK 버전 4 이하 사용 |
역할 |
역할 |
서버 SDK 5.x와 통합된 게임의 경우 이 다이어그램은 배포된 게임 빌드의 애플리케이션이 IAM 역할에 대한 자격 증명을 획득할 수 있는 방법을 보여줍니다.
Amazon GameLift 서버 SDK 5.x와 이미 통합되어야 하는 게임 서버 코드에서 GetFleetRoleCredentials
(C++) (C#) (Unreal ) (Go )를 호출하여 임시 자격 증명 세트를 검색합니다. 자격 증명이 만료되면 GetFleetRoleCredentials
를 다시 호출하여 자격 증명을 새로 고칠 수 있습니다.
서버 SDK 5.x를 사용하여 게임 서버 빌드와 함께 배포되는 서버가 아닌 애플리케이션의 경우 공유 파일에 저장된 보안 인증을 가져오고 사용할 코드를 추가합니다. Amazon은 각 플릿 인스턴스에 대한 자격 증명 프로파일을 GameLift 생성합니다. 자격 증명은 인스턴스의 모든 애플리케이션에서 사용할 수 있습니다. Amazon GameLift은 임시 보안 인증 정보를 지속적으로 새로 고칩니다.
플릿 생성 시 공유 자격 증명 파일을 생성하도록 플릿을 구성해야 합니다.
공유 자격 증명 파일을 사용해야 하는 각 애플리케이션에서 다음과 같이 파일 위치와 프로필 이름을 지정합니다.
Windows:
[credentials] shared_credential_profile= "FleetRoleCredentials" shared_credential_file= "C:\\Credentials\\credentials"
Linux:
[credentials] shared_credential_profile= "FleetRoleCredentials" shared_credential_file= "/local/credentials/credentials"
예: Amazon GameLift 플릿 인스턴스에 대한 지표를 수집하도록 CloudWatch 에이전트 설정
Amazon CloudWatch 에이전트를 사용하여 Amazon GameLift 플릿에서 지표, 로그 및 추적을 수집하려면 이 방법을 사용하여 에이전트가 계정에 데이터를 내보낼 수 있도록 권한을 부여합니다. 이 시나리오에서는 다음 단계를 수행합니다.
-
CloudWatch 에이전트
config.json
파일을 검색하거나 씁니다. -
위에서 설명한 대로 에이전트가 자격 증명 파일 이름과 프로필 이름을 식별할 수 있도록
common-config.toml
파일을 업데이트합니다. -
게임 서버 빌드 설치 스크립트를 설정하여 CloudWatch 에이전트를 설치하고 시작합니다.
애플리케이션에 코드를 추가하여 IAM 역할을 수임하고 AWS 리소스와 상호 작용할 자격 증명을 가져옵니다. 서버가 SDK 4 이하인 Amazon GameLift 플릿 인스턴스에서 실행되는 모든 애플리케이션이 IAM 역할을 수임할 수 있습니다.
애플리케이션 코드에서 AWS 리소스에 액세스하기 전에 애플리케이션이 AWS Security Token Service (AWS STS) AssumeRole
API 작업을 호출하고 역할을 지정해야 합니다ARN. 이 작업은 애플리케이션이 AWS 리소스에 액세스할 수 있는 권한을 부여하는 임시 자격 증명 세트를 반환합니다. 자세한 내용은 IAM 사용 설명서의 AWS 리소스와 함께 임시 자격 증명 사용을 참조하세요.
플릿을 IAM 역할과 연결
IAM 역할을 생성하고 게임 서버 빌드의 애플리케이션을 업데이트하여 액세스 자격 증명을 가져오고 사용한 후 플릿을 배포할 수 있습니다. 새 플릿을 구성할 때 다음 파라미터를 설정합니다.
InstanceRoleArn – 이 파라미터를 IAM 역할ARN의 로 설정합니다.
InstanceRoleCredentialsProvider - Amazon GameLift 에 각 플릿 인스턴스에 대해 공유 보안 인증 파일을 생성하라는 메시지를 표시하려면 이 파라미터를 로 설정합니다
SHARED_CREDENTIAL_FILE
.
플릿을 생성할 때 이러한 값을 설정해야 합니다. 이는 나중에 업데이트할 수 없습니다.
VPC 피어링을 사용하여 AWS 리소스 액세스
Amazon Virtual Private Cloud(Amazon VPC) 피어링을 사용하여 Amazon GameLift 인스턴스에서 실행되는 애플리케이션과 다른 AWS 리소스 간에 통신할 수 있습니다. VPC 는 를 통해 관리되는 리소스 집합을 포함하는 사용자가 정의하는 가상 프라이빗 네트워크입니다 AWS 계정. 각 Amazon GameLift 플릿에는 자체 가 있습니다VPC. VPC 피어링을 사용하면 플릿과 다른 AWS 리소스에 VPC 대해 간에 직접 네트워크 연결을 설정할 수 있습니다.
Amazon은 게임 서버에 대한 VPC 피어링 연결을 설정하는 프로세스를 GameLift 간소화합니다. 피어링 요청을 처리하고, 라우팅 테이블을 업데이트하고, 필요에 따라 연결을 구성합니다. 게임 서버에 피VPC어링을 설정하는 방법에 대한 지침은 섹션을 참조하세요Amazon GameLift용 VPC 피어링.