언리얼 엔진 - 게임 프로젝트/AWS GameLift를 활용한 데디케이트 FPS 프로젝트

AWS Lambda - 4) ListFleets 명령어

monstro 2026. 5. 7. 17:11
728x90
반응형

- 개요

ListFleetsCommand는 AWS GameLift에서 제공하는 API로서, 

현재 사용자의 특정 리전에 생성된 모든 게임 서버 플릿 FleetID 목록을 가져오는 명령이다

AWS에서 함수(Lambda)와 같은 리소스리전에 종속되므로 해당 명령어를 사용하면 쉽게 종속된 함수를 탐색할 수 있다

해당 명령어를 사용하는 방법을 알아본다

 

- 절차

1) 새로운 AWS Lambda의 생성

 

기존에 생성한 테스트용 Lambda를 제거하고 List Fleets 명령어를 실행할 새로운 Lambda를 생성한다

 

import { GameLiftClient, ListFleetsCommand } from "@aws-sdk/client-gamelift";

export const handler = async (event) => {

  // GameLift에 명령어를 전송할 GameLiftClient 객체 생성
  const client = new GameLiftClient({ region: "ap-northeast-2" });

  // 명령을 내릴 때 필요한 옵션을 정의
  const input = {};

  // 필요한 옵션을 바탕으로 ListFleetsCommand 명령어 패키지를 생성
  const command = new ListFleetsCommand(input);

  // 통신 결과를 response 변수에 저장
  const response = await client.send(command);

  return response;
};

 

생성한 Lambda의 코드를 위와 같이 구성한다

  • import 예약어를 사용하여 AWS GameLift 모듈을 불러옴
  • 리전을 설정하여 GameLift에 명령어를 전송할 클라이언트를 생성
  • 명령에 필요한 옵션에 빈 옵션을 주어 기본값을 사용 + ListFleetsCommand에서는 모든 플릿 ID를 반환
  • await 예약어를 사용하여 네트워크 통신 결과를 반환받을 때까지 대기하였다 결과를 저장

 

2) 인라인 정책 - 생성한 함수에 권한 정책 부여

 

생성한 함수에 대해서 사용자를 증명하기 위한 신분증이 필요한데, 권한을 부여함으로써 해결할 수 있다

생성한 Lambda의 구성 - 권한으로 이동한다

 

 

실행 역할 - 역할 이름 탭을 클릭한다

 

 

권한 추가 - 인라인 정책 생성을 선택하여 해당 Lambda에 대한 특수한 권한 정책을 생성한다

 

 

정책을 생성하는 방법은 총 2가지로 시각적인 방법JSON 형식을 이용하는 방법이 존재한다

프로젝트에서는 시각적 방법을 선택하였고

AWS GameLift Servers에 대해 ListFleets 명령어를 사용할 수 있도록 허용하였다

 

 

위와 같이 정책의 이름을 설정하고 정책 생성을 눌러 정책을 생성한다

 

 

정책이 생성된 후에 권한 정책 탭을 확인해보면 생성한 Lambda에 대한 권한 정책이 추가된 것을 확인할 수 있다

 

 

실행 결과를 확인해보면 ListFleets 명령어가 포함된 함수가 문제없이 실행되었고

해당 리전의 모든 플릿의 ID가 잘 반환된 것을 확인할 수 있다

728x90
반응형