개요

아이펀 엔진 을 사용하기 위해서는 라이선스 파일이 필요합니다.

이번 장에서는 라이선스를 발급받기 위해 회원가입을 진행하고 프로젝트를 등록하는 방법부터 시작해서 라이선스를 사용하는 전반적인 내용에 대해서 설명하겠습니다.

회원가입

가장 먼저, 아이펀 엔진의 프로젝트는 사용자 별로 관리되므로 반드시 회원가입을 하셔야 합니다.

회원가입 페이지의 안내에 따라서 회원가입을 진행해 주시기 바랍니다.

Warning

이메일 인증이 필요하기 때문에 반드시 메일을 수신할 수 있는 이메일을 사용해야 합니다.

이메일 인증이 성공하고 정상적으로 회원가입을 마치면 화면 오른쪽 상단의 My Page 메뉴에서 아래와 같은 화면을 볼수 있습니다.

_images/membership01.png

회원가입을 마쳤지만 아이펀 엔진을 사용하기 위해서는 스크린샷의 OTP 인증본인인증 을 진행해 주셔야 합니다.

이제 아이펀 엔진을 사용하기 위한 회원가입 절차가 마무리되었습니다.

프로젝트 생성

정상적으로 회원가입이 되었다면 본격적으로 프로젝트를 생성하고, 라이선스를 받는 과정에 대해서 알아보겠습니다.

먼저, 가입한 회원 아이디로 로그인 후, My Page > 사용 신청 > Game Server Engine 메뉴에서 신청하기 버튼을 누르고, 프로젝트 및 신청자 정보를 입력해 주시기 바랍니다.

정상적으로 사용 신청 이 완료되고 프로젝트가 생성되면 My Page > 사용 관리 > 프로젝트 현황 메뉴에서 생성된 프로젝트를 확인할 수 있습니다.

_images/membership02.png

프로젝트 정보의 다운로드 버튼을 누르면 아래와 같은 팝업창을 볼 수 있는데, 여기서 다운로드 버튼을 누르면 라이선스 파일을 받아서 저장할 수 있습니다.

_images/membership03.png

Note

라이선스 파일은 언제든지 다운 받을 수 있지만, 외부로 유출되지 않도록 주의해 주시기 바랍니다.

저장한 account.ilf 파일은 아이펀 엔진을 설치하고 사용할 호스트의 정해진 위치에 복사해서 사용하시면 됩니다.

라이선스 사용에 대한 자세한 내용은 라이선스 페이지에서 확인 할 수 있습니다.

라이선스

아이펀 엔진은 서버가 기동할 때 라이선스 파일의 유효성을 확인하고, 이후에 초기화를 진행하기 때문에 서버가 동작하기 위해서는 라이선스가 반드시 필요합니다.

아이펀 엔진을 설치하면 평가판 라이선스가 함께 설치됩니다. 이 라이선스는 1주동안 사용할 수 있으며 서버를 실행했을 때 연속해서 30분 이상 동작할 수 없습니다.

정식 라이선스란

서버가 정상적으로 동작하기 위해서는 정식 라이선스 가 필요하며, 아이펀 팩토리 홈페이지의 사용자 페이지에서 프로젝트를 등록하면 발급받을 수 있습니다.

아직 사용자 등록이나 프로젝트 등록을 하지 않았다면 개요 설명을 참고해 주시기 바랍니다.

라이선스 파일 적용

아이펀 팩토리 홈페이지에서 프로젝트 사용 신청을 마쳤다면 account.ilf 라는 이름의 라이선스 파일을 받을 수 있습니다.

이 라이선스 파일은 아이펀 엔진 서버를 실행할 호스트의 정해진 기본 경로에 있어야 합니다.

Note

이미 평가판 라이선스가 있는 경우에는 덮어써 주시면 됩니다.

Windows 호스트

Windows 호스트에서 아이펀 엔진 라이선스 파일의 기본 경로는 C:\ProgramData\iFunFactory\ 입니다. 디렉터리가 없다면 폴더를 생성한 다음 다운받은 라이선스 파일을 복사해 주시기 바랍니다.

Linux 서버

Linux 서버에서 라이선스 파일의 기본 경로는 /etc/ifunfactory/ 디렉터리입니다. 만약, 디렉터리가 없다면 생성한 다음 라이선스 파일을 복사하면 됩니다.

$ sudo mkdir -p /etc/ifunfactory
$ sudo cp /path/to/account.ilf /etc/ifunfactory/
$ sudo chmod a+rX /etc/ifunfactory /etc/ifunfactory/account.ilf

WinSCP 를 이용해서 원격 Linux 서버에 라이선스 파일 복사하기

만약, Windows PC 를 사용 중이고 아이펀 엔진을 원격에 있는 Linux 서버에서 실행한다면 파일 전송 프로그램을 사용해서 라이선스 파일을 Linux 서버의 /etc/ifunfactory/ 로 복사하는 방법에 대해서 설명하겠습니다.

Note

파일 전송 프로그램은 SCP 또는 SFTP 프로토콜을 지원하는 프로그램은 자유롭게 사용할 수 있습니다.

<예시> * WinSCP * FileZilla * PSCP/PSFTP

  1. WinSCP 를 다운로드하고 설치합니다.

  2. WinSCP로 linux 서버에 연결합니다.

File Protocol은 SCP 혹은 SFTP를 선택해 주시고, Host Name, User name 을 지정하고 Login 을 누르면 서버에 연결이 됩니다.

_images/winscp1.png
  1. WinSCP 의 오른쪽 패널은 서버측 디렉토리를 표시하는데, 여기서 홈 디렉터리를 선택합니다. (계정명이 ubuntu 라면 기본값은 /home/ubuntu 입니다.

그리고, WinSCP의 왼쪽 패널은 지금 사용하고 있는 Windows PC 의 디렉토리를 표시하는데, account.ilf 를 찾아서 선택하고 Upload 버튼을 누릅니다.

_images/winscp2.png
  1. Putty 를 다운로드 받아 실행합니다. 위에서 사용한 Host Name 을 그대로 입력하고 엔터를 누릅니다.

_images/putty.png
  1. 서버에 접속되면 아이디와 패스워드를 물어보게 되는데 위에서 사용한 아이디와 패스워드를 입력해서 로그인합니다. 그 뒤에 다음 명령을 수행합니다. ($ 는 shell prompt 를 의미하고 타이핑하지 않습니다.)

$ sudo mkdir -p /etc/ifunfactory
$ sudo cp account.ilf /etc/ifunfactory/
$ sudo chmod a+rX /etc/ifunfactory /etc/ifunfactory/account.ilf

라이선스 관련 문제 해결

아이펀 엔진 서버가 동작하는 중에 라이선스와 관련한 문제가 발생했을 때, 조치하는 방법에 대해서 설명합니다.

서버가 일정 시간 후 자동 종료할 때

서버를 운영하는 중에 아래와 같은 로그 내용과 함께 서버가 30분마다 종료된다면 평가판 라이선스를 사용하는 것은 아닌지 확인해야 합니다.

...
E0202 00:08:49.916679  5918 main.cc:97] You are using non-production license.
iFun Engine stops after running for 30 minutes.
To run fully functional iFun Engine, contact sales@ifunfactory.com

평가판 라이선스는 다음과 같은 파일 내용으로 확인 할 수 있습니다.

  # This is an evaluation license file for iFun Engine.
  #
  # If you have a contract with iFunFactory Inc., please use your copy of
  # account.ilf instead of this.
  #
  # This license expires by Wed Feb 11 13:43:59 KST 2015.

  1cc6917c261580cafc91267875b0fec62e8a5d0954d5b12dc7c9372378 ...

조치 방법

평가판 라이선스를 사용하는 서버는 기동 후 30분이 지나면 자동으로 종료합니다. 개요라이선스 파일 적용 매뉴얼을 참고하셔서 정식 라이선스를 사용하면 문제를 해결할 수 있습니다.

“Failed to find a valid account.ilf” 라는 메시지를 출력하면서 죽을 때

다음과 같은 로그와 함께 서버가 실행되지 않는다면 /etc/ifunfactory/ 디렉토리 안의 account.ilf 파일을 읽을 수 없는 경우입니다.

  • 파일이 존재하지 않는 경우

  • 아이펀 엔진을 실행한 사용자가 해당 파일에 대해서 읽기 권한이 없는 경우

Note

Windows 환경에서는 C:\ProgramData\ifunfactory 에 라이선스 파일이 있습니다.

 $ ./proj_name-local
 I0204 13:21:42.998123  5741 main.cc:143] Crashreporter initialized; .dmp will be written to /home/ubuntu/work/proj_name/build/logs/../dumps
 E0204 13:21:43.182199  5741 capability.cc:433] Error response; ec=0; status=400
 E0204 13:21:43.182586  5741 capability.cc:438] Error: Incomplete request
 E0204 13:21:43.182627  5741 capability.cc:69] Failed to find valid account.ilf, which usually resides on /etc/ifunfactory/account.ilf.
 ./proj_name-local: line 51:  5741 Killed    $FUNAPI_BIN_DIR/funapi_runner ...

조치 방법

이 경우에는 account.ilf 파일이 제 위치에 있는지 다시 한번 확인 해 주시고, 파일이 있다면 서버를 실행했던 리눅스 사용자에 대해서 읽기 권한이 설정돼 있는지 확인해 주시기 바랍니다.

“account.ilf: not in valid datetime-range” 라는 메시지를 내면서 죽을 때

다음과 같은 로그와 함께 서버가 실행되지 않는다면 account.ilf 파일의 유효 기간이 지났을 경우입니다.

평가판 라이선스는 1주동안만 유효하기 때문에 기간이 지났다면 정식 라이선스로 변경해 주시기 바랍니다.

 ubuntu@vm:~/example-build/debug $ ./example-local
 I0218 23:06:12.701092 22481 main.cc:145] Crashreporter initialized; .dmp will be written to /home/ubuntu/example-build/debug/logs/../dumps
 E0218 23:06:13.480649 22481 capability.cc:258] account.ilf: not in valid datetime-range
 E0218 23:06:13.481799 22481 capability.cc:70] Failed to acquire license
 ./example-local: line 51: 22481 Killed                  $FUNAPI_BIN_DIR/funapi_runner --main_program_name=$component_name --framework_manifest_path="$manifests" --main_enabled_components=$ComponentName --resource_root="/home/ubuntu/example-build/debug/resources" --max_log_size=10 --stop_logging_if_full_disk --log_root_dir="$FUNAPI_LOG_ROOT_DIR" --crashdump_root_dir="$FUNAPI_DUMP_ROOT_DIR" --alsologtostderr "$@"

“Error: Your system time is not correct” 라는 메시지를 내면서 죽을 때

서버를 실행하는 호스트의 시간 설정이 정확하지 않은 경우, 아래와 같은 로그를 출력합니다.

 ubuntu@vm:~/example-build/debug $ ./example-local
 I0218 23:07:23.996897 22494 main.cc:145] Crashreporter initialized; .dmp will be written to /home/ubuntu/example-build/debug/logs/../dumps
 E0218 23:07:25.630452 22494 capability.cc:434] Error response; ec=0; status=400
 E0218 23:07:25.631985 22494 capability.cc:439] Error: Your system time is not correct
 E0218 23:07:25.632563 22494 capability.cc:70] Failed to get response from license server
 ./example-local: line 51: 22494 Killed                  $FUNAPI_BIN_DIR/funapi_runner --main_program_name=$component_name --framework_manifest_path="$manifests" --main_enabled_components=$ComponentName --resource_root="/home/ubuntu/example-build/debug/resources" --max_log_size=10 --stop_logging_if_full_disk --log_root_dir="$FUNAPI_LOG_ROOT_DIR" --crashdump_root_dir="$FUNAPI_DUMP_ROOT_DIR" --alsologtostderr "$@"

조치 방법

다음 명령으로 서버 시간을 조정해 주시기 바랍니다.

$ sudo ntpdate -u ntp.ubuntu.com

크레딧 구매

아이펀 엔진 정식 라이선스를 사용하기 위해서는 크레딧이 필요하며 서버 머신당 사용 시간에 따라 10분마다 보유 크레딧이 차감됩니다.

사용 시간 집계는 머신을 기준으로 이루어지며 하나의 머신에 아이펀 엔진 프로세스를 여러개 실행하더라도 동일하게 적용됩니다.

보유 크레딧한 크레딧이 부족하면 서버는 더이상 동작하지 않기 때문에 서비스 중인 프로젝트는 보유 크레딧을 주가적으로 충전해 주시기 바랍니다.

크레딧은 My Page 상단 > 보유 크레딧 > 구매하기 메뉴에서 구매할 수 있습니다.

Note

크레딧 구매 전에 결제관리 메뉴에서 결제 카드를 등록하셔야 크레딧을 구매할 수 있습니다.

아이펀 엔진은 최초 회원가입후 일정 시간동안 엔진을 사용해 볼 수 있도록 무료 크레딧을 지급해 드리고 있습니다.

Note

1C(크레딧)은 1KRW 에 해당하며, 서버 머신 하나의 분당 사용 금액은 20C 입니다. 400000C 는 서버 한대를 20000분(약333시간) 실행할 수 있는 금액입니다.