에셋 서버 준비하기

서버 측 설치사항

에셋서버는 서버에서 단순히 한번의 설치로 끝날 수 있게 설계되었습니다. 에셋서버와의 상호작용은 유니티를 통하여 이루어집니다. 서버 기기에 유니티를 설치 할 수 있으나 꼭 필요한 것은 아닙니다. 설치는 프로젝트와 사용자를 추가 할 수 있는 클라이언트 기기에서 이루어져야 합니다. 추가되는 클라이언트도 프로젝트와의 동기화를 위하여 특정 사용자 자격을 통하여 구성되어야 합니다.

Mac OS X 10.4 혹은 이후 버전, Windows XP, Windows Vista와 CentOS, Ubuntu 그리고Suse 리눅스 등 각종 리눅스 배포판에 Download Unity Asset Server를 설치할 수 있습니다.

인스톨러는 모든 필요한 파일을 설치하고 데이터 베이스를 구축한 후 에셋서버를 구동합니다. 이 과정의 마지막에, 사용자에게 Admin password를 설정할 것을 요구합니다. 이 비밀번호는 유니티에서 에셋서버를 관리하는데 필수 사항입니다. 사용자는 반드시 관리자로 접속하여야 프로젝트나 사용자를 생성 할 수 있습니다.

에셋 서버 관리

에셋 서버는 모든 멤버와 UsersProject에 접속 할 수 있게 해 줍니다. 클라이언트는 우선 유니티가 있는 서버에 클라이언트로 접속하여 프로젝트와 사용자를 생성하여야 합니다.

관리자 제어판을 사용하려면, 유니티를 시작하고 Window→Asset Server를 선택한 후, Administration 버튼을 클릭합니다.


Administration

Server Address 필드에서, 사용자가 관리하고자 하는 에셋서버가 있는 컴퓨터의 ip addresshost name을 입력합니다. 해당 에셋서버가 사용자 로컬 컴퓨터에 설치되어 있다면, Server Address에 "localhost"을 사용하면 됩니다. 다음은, 관리자 이름과 비밀번호를 넣습니다. 관리자 이름은 항상 "admin"이고 비밀번호는 에셋서버 설치시 입력한 것을 넣습니다. 마지막으로 Connect 버튼을 치면, 사용자는 에셋서버에 접속이 되고 초기 설정을 할 수 있습니다.

프로젝트와 사용자 관리

각 서버는 여러 개의 프로젝트를 가질 수 있고, 각 사용자는 하나 혹은 그 이상의 프로젝트에 대한 권한을 가집니다. 프로젝트는 일반적으로 직교적이며 (orthogonal) , 유일한 에셋 모음을 가지고 있습니다. 하나의 프로젝트는 하나의 게임이다”라고 생각하는 것이 최선입니다.

새로운 프로젝트를 생성하려면 Server Administration 탭에서 Create 버튼을 클릭합니다.


Create 버튼을 클릭하여 새 프로젝트 이름을 넣으세요

N기존 프로젝트를 선택하여 New User 버튼을 눌러 새 사용자를 생성할 수 있습니다.


새로운 사용자 생성

하나의 프로젝트에서 사용자를 생성한 후, 해당 사용자를 다른 프로젝트에 추가하려면 사용자 리스트 상의 사용자 이름 왼쪽에서 있는 체크박스를 체크하면 됩니다.

각 프로젝트 별로 사용자 접근을 허용하거나 차단할 수 있습니다. 프로젝트나 사용자를 프로젝트에서 완전히 삭제하려면, 각각 Delete ProjectDelete User 버튼을 사용하시오.

방화벽 설정

유니티 에셋 서버는 TCP 포트 10733을 사용합니다. 사용자는 사용자의 방화벽 그리고/혹은 라우터의 해당 포트를 열어두어야 합니다.

심화 내용

에셋 서버는 PostgreSQL의 변형 버전을 사용합니다. SQL 데이터베이스를 바로 사용하려면 SQL과 Unix/Linux 명령어에 대한 기술적인 지식이 필요합니다. 신중한 사용을 권유합니다.

백업 수행

저희 회사는 에셋 서버를 백업 하기 위한 명령어 도구를 제공합니다. 이 도구는 에셋 서버를 실행하는 기기의 관리자 계좌만이 사용 가능합니다. 백업 도구가 백업을 수행하려는 위치를 BACKUP_LOCATION에 대치하여 입력합니다:

Mac OS X
sudo /Library/UnityAssetServer/bin/as_backup BACKUP_LOCATION

Linux
sudo /opt/unity_asset_server/bin/as_backup BACKUP_LOCATION

Windows
"%ProgramFiles%\Unity\AssetServer\bin\as_backup.cmd" BACKUP_LOCATION

as_backup 은 프로젝트 당 하나 이상의 파일과 각 프로젝트에 관한 정보뿐 아니라 모든 사용자와 비밀 번호를 포함하는 BACKUP_LOCATION를 생성합니다.

백업 복귀 수행

백업으로 만들어진 에셋 서버의 백업을 복귀하려면, 우선 아무 프로젝트도 생성되지 않은 에셋 서버의 초기 설치를 실행합니다. (복귀 과정은 동일한 이름을 가진 기존 프로젝트에 덮어쓰기를 거절할 것입니다.)

그 후, as_restore가 백업으로 인해 생성된 백업이 위치하는 곳을 가르치게 하여, 제공하는 백업 복구 툴을 수행하면 됩니다:

Mac OS X
sudo /Library/UnityAssetServer/bin/as_restore BACKUP_LOCATION

Linux
sudo /opt/unity_asset_server/bin/as_restore BACKUP_LOCATION

Windows
"%ProgramFiles%\Unity\AssetServer\bin\as_restore.cmd" BACKUP_LOCATION

사용자는 as_backup과 as_restore을 사용하여 에셋서버 설치를 한 기기에서 다른 기기로 옮길 수 있습니다. 출발 기기에서는 백업을 수행하고, 해당 백업을 도착 기기로 옮겨 (혹은 네트워크 파일 공유를 통해 다른 기기에 연결) as_restore을 수행하여 새로 설치된 백업 인스턴스에 데이터를 삽입 하면 됩니다. 이 과정은 출발과 도착 에셋서버가 다른 버전 혹은 다른 OS를 사용해도 수행 할 수 있습니다.

에셋 서버 프로젝트의 데이터베이스 이름 찾기

프로젝트 데이터베이스의 테이블을 보려면, 실제 그 데이터 베이스의 이름을 알아야 합니다. 에셋 서버를 실행하는 호스트 컴퓨터에서 아래 명령 라인을 실행하시오:

Mac OS X
/Library/UnityAssetServer/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases_view'

Linux
/opt/unity_asset_server/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases_view'

Windows
"%ProgramFiles%\Unity\AssetServer\bin\psql.exe" -U admin -h localhost -d postgres -c "select * from all_databases_view"

이 명령과 다른 명령들은 사용자에게 비밀번호 입력을 요구합니다. 요청이 있을 때 마다, 설치 시에 설정한 해당 데이터베이스의 관리자 비밀번호를 입력하면, 다음과 같은 모양의 테이블이 나타납니다:

    databasename   |  projectname    |     description       |version 
--------------------+--------------------+--------------------------+---------
 sandbox           |Sandbox           |Created with Unity 2.0.0|1.0
 game              |Game              |Created with Unity 2.0.0|1.0
 my_game_project   |My Game Project   |Created with Unity 2.0.0|1.0
(3 rows)

이제 사용자가 백업을 하고자 하는 프로젝트의 "databasename"을 찾아내야 합니다. 데이터베이스 생성 시, 유니티 내에 보이듯이 "databasename"은 "projectname"과 동일하지만, 소문자로 표기되면 빈칸은 밑줄로 대치되어 나타납니다.

만일 사용자 서버가 여러 다른 포트 상에 여러 개의 PostgreSQL 데이터베이스를 실행하고 있다면, 사용자는 해당 에셋 서버 데이터베이스를 연결하는 데 사용될 포트를 명시 할 필요가 있을 수 있습니다. 이 경우에는, 아래 주어진 명령에서 add -p 10733 을 사용합니다 (사용자 인스턴스에 10733 디폴트 포트가 사용되었다고 가정). 예를 들어:

Linux
''/opt/unity_asset_server/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases_view' -p [email protected]@

추가 SQL 기능

이 명령들을 포함하여 모든 명령은 PostgreSQL 배포판의 도구를 사용합니다. 사용자는 해당 도구에 관한 정보를http://www.postgresql.org/docs/8.3/interactive/reference-client.html 에서 읽을 수 있습니다.

연결문서