게임 서버 관리

참고: 이 페이지는 Clanforge에 관한 콘텐츠를 다루고 있습니다. Multiplay Hosting을 사용 중인 경우 Multiplay Hosting 기술 자료를 참고하십시오.

매치메이커가 할당을 요청할 때, Clanforge는 클라이언트가 연결할 수 있도록 할당된 서버가 실행 중인지 확인해야 합니다. 또한 서버를 확장하거나 축소할 때 Clanforge가 서버를 시작하고 중지할 수 있어야 합니다.

Clanforge가 게임 서버를 모니터링하고 관리하여 서버가 정상적으로 작동 중인지 확인하고 고객에게 상태를 리포트합니다.

게임 서버 상태

게임 서버 상태는 게임 서버가 존재할 수 있는 구성 상태입니다. 각 게임 서버는 다음 상태로 존재할 수 있습니다.

  • 할당
  • 사용 가능
  • 중지
  • 삭제
  • 잠김

할당

게임 서버가 활성 할당 UUID를 보유하고 게임 세션을 호스팅하고 있다면 서버가 할당 상태입니다. 할당된 게임 서버에는 서버가 호스팅하고 있는 게임 세션에 연결된 활성 플레이어가 있을 수도 있고 없을 수도 있습니다.

사용 가능

게임 서버가 온라인 상태이며 활성화된 할당이 없다면 서버가 사용 가능 상태입니다. 사용 가능한 게임 서버는 사용 가능한 게임 서버 풀에 포함되어 매치메이커가 할당하는 데 사용할 수 있습니다.

중지

게임 서버는 중지 커맨드를 수신한 후 중지되며, 일반적으로 자동 프로세스가 중지 커맨드를 보냅니다. 다음 시나리오에서 자동 프로세스가 게임 서버 인스턴스를 중지합니다.

  • 영역을 축소하기 위해 머신을 종료하기 전에 Clanforge가 머신의 모든 게임 서버를 중지합니다.
  • Clanforge가 응답하지 않는 게임 서버를 중지한 후 재시작합니다.
  • Clanforge가 게임 서버가 예기치 않게 중지되는 것을 감지하면 프로세스를 재시작합니다.
  • Clanforge가 크래시가 발생한 게임 서버를 중지한 후 재시작합니다.
  • Clanforge가 머신의 유지보수를 수행합니다.

참고: Clanforge가 할당된 서버를 자동으로 중지하지 않습니다.

삭제

다음 시나리오에서 Clanforge가 게임 서버를 삭제합니다.

  • 게임 서버를 호스팅하는 머신이 취소될 예정입니다(베어메탈(bare metal)만 해당).
  • 플릿 영역이 축소되고 있어 게임 서버를 호스팅하는 클라우드 머신이 더 이상 필요하지 않습니다.

참고: Clanforge가 할당된 게임 서버를 자동으로 삭제하지 않습니다. 게임 서버를 삭제하려면 먼저 서버를 중지해야 합니다.

잠김

Clanforge는 중요한 작업이 진행 중일 때 서버 시작, 중지, 재시작 등의 서버 관리 작업이 수행되지 않도록 게임 서버를 일시적으로 잠급니다. 잠김 상태는 할당, 사용 가능, 중지, 삭제, 온라인, 오프라인 상태와 상호 배타적이지 않습니다. 다음 시나리오를 비롯한 작업을 진행할 때 Clanforge가 게임 서버를 잠글 수 있습니다.

  • 이미지 설치
  • 유지 보수 작업

이미지 설치

머신에 게임 이미지를 설치할 때 Clanforge는 설치가 완료되기 전에 게임 서버가 시작되지 않도록 영향을 받는 모든 게임 서버를 잠급니다. 영향을 받는 게임 서버는 머신에 설치되거나 업데이트되는 게임 이미지를 사용하도록 구성된 게임 서버를 말합니다.

유지 보수 작업

Clanforge는 시스템 업데이트와 같은 유지 보수 작업을 수행하기 전에 머신의 게임 서버를 잠급니다.

게임 서버 작업

게임 서버 작업은 게임 서버 인스턴스에 수행할 수 있는 작업입니다. 수행할 수 있는 게임 서버 작업은 다음과 같습니다.

  • 시작: 게임 서버 시작 작업은 게임 서버에 시작 커맨드를 전달합니다. 시작 커맨드는 중지된 게임 서버를 사용 가능 상태로 되돌립니다.
  • 중지: 게임 서버 중지 작업은 게임 서버에 중지 커맨드를 전달합니다. 중지 커맨드는 게임 서버를 비활성 상태로 전환합니다.
  • 재시작: 게임 서버 재시작 작업은 게임 서버에 재시작 커맨드를 전달합니다. 재시작 커맨드는 중지 커맨드를 전달한 다음 시작 커맨드를 전달합니다.

게임 서버 작업 로그

각 게임 서버에는 서버 ID와 연관된 기본 로그를 나열하는 작업 로그가 있습니다. 작업 로그에는 Clanforge 시스템의 로그만 기록되며 게임 서버 바이너리의 로그는 기록되지 않습니다. 작업 로그에는 다음과 같은 로그가 포함됩니다.

  • 프로필 변경 사항
  • 수동 게임 서버 작업
  • 자동 게임 서버 작업
  • 게임 서버 문제
  • 구성 문제

게임 서버 바이너리가 파일에 로그를 저장하면 Clanforge를 통해 로그 파일을 공개할 수 있습니다. 로그 파일을 공개하면 팀에서 Clanforge 파일을 통해 각 게임 서버의 파일에 액세스할 수 있습니다.

서버 통계

게임 서버 바이너리를 쿼리할 때, Clanforge는 각 개별 게임 서버의 통계를 수집합니다. 통계에는 메모리 사용량과 플레이어 수가 포함됩니다.

  • 최소 메모리 사용량
  • 최대 메모리 사용량
  • 평균 메모리 사용량
  • 현재 메모리 사용량
  • 최소 플레이어 수
  • 최대 플레이어 수
  • 평균 플레이어 수
  • 현재 플레이어 수

통계 그래프는 게임 서버 인스턴스가 연결된 플레이어당 리소스를 어떻게 관리하고 있는지에 대한 정보를 제공합니다. Clanforge의 게임 서버 통계 페이지를 방문하여 게임 서버에 관한 그래프에 액세스할 수 있습니다. 각 게임 서버 통계 페이지에는 다음 그래프가 있습니다.

  • 시간당 서버 사용량
  • 일일 서버 사용량
  • 주간 서버 사용량
  • 월간 서버 사용량
  • 연간 서버 사용량

게임 서버 크래시

Clanforge는 모든 게임 서버 인스턴스에서 크래시의 증거를 모니터링합니다. 그러나 게임 서버 바이너리가 게임 서버 쿼리 프로토콜을 지원한다면 더 정교하게 모니터링할 수 있습니다. 게임 서버 바이너리가 게임 서버 쿼리 프로토콜을 지원하면 Clanforge가 게임 서버 인스턴스에서 다음 항목을 모니터링합니다.

  • 비활성 기간
  • 쿼리 응답 실패
  • 리소스 사용량
  • 종료 코드

게임 서버 바이너리가 게임 서버 쿼리 프로토콜을 지원하지 않으면 Clanforge가 게임 서버 인스턴스에서 종료 코드만 모니터링합니다. Clanforge가 크래시의 증거(예: 종료 코드, 쿼리 응답 실패)를 감지하면 게임 서버 인스턴스를 재시작합니다.

할당 사전 복구 프로세스

게임 서버가 문제를 리포트할 때 Clanforge의 관리형 인프라는 게임 서버 인스턴스를 활성 상태로 유지하려고 시도합니다. 게임 서버 인스턴스에 크래시가 발생하면 Clanforge는 인스턴스에 할당된 플레이어가 있었는지 확인합니다. 게임 서버에 할당된 플레이어가 있었다면 Clanforge가 할당 사전 복구를 시도합니다. 할당 사전 복구는 동일한 할당 UUID로 게임 서버 프로세스를 다시 시작합니다. Clanforge가 오류 없이 성공적으로 프로세스를 재시작하면 게임 서버 인스턴스가 계속 정상 상태로 구동됩니다. 그러나 Clanforge가 프로세스를 재시작하는 데 실패하면 Clanforge가 매치메이킹 오류를 방지하기 위해 할당 UUID를 지운 다음 서버를 다시 사용 가능 상태로 지정합니다.