- Perforce Swarm
- 버전 2015.1
-
- 설치 안내서
-
- 소개
-
- 이 문서는 Perforce Swarm(이후 "Swarm"으로 명시) 릴리스 2014.4.의 설치 및
- 초기 구성 프로세스에 대해 설명합니다. 다양한 OS 배포판에 따라 동일한 결과에
- 이르는 방식이 서로 다를 수 있습니다. 따라서 당사는 최선의 설명을 제공하기 위해
- 노력하지만, 사용자가 특정 배포판 설명서를 참조해야 하는 경우도 있습니다.
-
- * Swarm의 설치 및 구성에는 시스템 관리자 기능이 필요하며 많은 경우 루트
- 권한 액세스를 필요로 합니다.
-
- 개요
-
- Swarm 웹 응용프로그램의 설치 및 구성을 위해 이 문서가 다루는 주요 영역은
- 다음과 같습니다.
-
- * 런타임 종속성
- * Swarm 설치
- * 사용자 환경에 맞는 Swarm 구성
- * 트리거 토큰 설정
- * Swarm에 맞는 Perforce 구성
- * 워커 생성을 위한 반복 작업 설정
-
-
- ------------------------------------------------------------------------
- 런타임 종속성
- ------------------------------------------------------------------------
-
- Swarm은 다음과 같은 런타임 종속성을 필요로 합니다.
-
- * 지원되는 운영 체제 플랫폼
-
- * mod_rewrite 및 mod_php5 모듈이 포함된 Apache 웹 서버
-
- * 다음 확장이 포함된 PHP:
- * iconv
- * json
- * session
- * P4PHP
- * APC(최적 성능용)
- * imagick(선택 사항, 비 웹 안전 이미지 보기용)
- * Zip(선택 사항, 파일/폴더 아카이브 다운로드용)
-
- * LibreOffice(선택 사항, 오피스 유형 문서 보기용)
-
- * zip 명령줄 도구(선택 사항, Zip 확장이 설치되어 있지 않은 경우 파일/폴더
- 아카이브 다운로드용)
-
- * 연결을 위한 지원되는 Perforce 서비스 및 기능
-
- 참고: "Perforce 서비스"란 Perforce 서버, 프록시, 브로커, 레플리카, 에지
- 서버, 커밋 서버 또는 클러스터/노드를 지칭합니다.
- 이는 "서비스" 사용자를 지칭하지 않습니다. 서비스 사용자는 Perforce
- 서비스 내 복제 코디네이션에 사용됩니다.
-
- 지원하는 운영 체제 플랫폼
-
- Swarm은 이진 버전 P4PHP(PHP용 퍼포스 확장)를 포함하므로 다음 운영 체제에서
- 지원됩니다.
-
- * Linux 2.6+ Intel(x86, x86_64), gblic 2.3.3+ 사용
-
- * Mac OS X 10.6+(x86_64)
-
- 직접 P4PHP를 구축하거나 기타 런타임 의존성이 충족되는 경우에는 다른
- 플랫폼에서도 Swarm을 실행할 수 있습니다. 소스에서 P4PHP를 불러와 빌드하는 방법은
- 다음을 참조하십시오.
-
- http://www.perforce.com/perforce/doc.current/user/p4phpnotes.txt
-
- Apache 웹 서버
-
- Swarm을 작동하려면 Apache HTTP 서버 2.2 이상이 필요합니다.
-
- http://httpd.apache.org/
-
- Swarm은 또한 다음 Apache 모듈을 필요로 합니다.
-
- * PHP와 상호 작용을 위한 mod_php5
- 일반적으로 PHP와 함께 설치됩니다.
-
- * mod_rewrite URL 재작성 엔진
- http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html
-
- PHP
-
- Swarm은 PHP 5.3.3+, 5.4.x 또는 5.5.x에서 지원됩니다:
-
- http://www.php.net
-
- Swarm은 다음과 같은 PHP 확장을 필요로 합니다.
-
- * iconv(문자 인코딩 변환기)
- http://php.net/iconv
- 대부분의 PHP 배포판에서 일반적으로 활성화됩니다.
-
- * JSON(JavaScript 개체 노테이션)
- http://php.net/json
- 대부분의 PHP 배포판에서 일반적으로 활성화되지만 최근 배포판에서는 선택
- 사항으로 처리되기도 합니다.
-
- * Session(세션 처리)
- http://php.net/session
- 대부분의 PHP 배포판에서 일반적으로 활성화됩니다.
-
- * P4PHP(Perforce PHP 확장)
- Swarm 패키지에 포함되어 있으며 설치 방법은 아래를 참조하십시오.
-
- Swarm은 다음과 같은 PHP 확장과 함께 사용하면 매우 큰 이점을 가지게 됩니다.
-
- * APC(대체 PHP 캐시)
- http://php.net/apc
- APC 설치 지침은 아래를 참조하십시오.
-
- * Imagick(ImageMagick을 PHP에 통합)
- http://php.net/imagick
- Imagick 설치 지침은 아래를 참조하십시오.
-
- Perforce 서버 요구 사항
-
- * Swarm은 다음 패치 수준 이상의 Perforce 서버 버전과 연동합니다.
-
- * 2010.2/503309
- * 2011.1/506384
- * 2012.1/512349
- * 2012.2/525804
- * 2013.1/610569
- * 2013.2/708877
- * 2013.3/740675
- * 2014.1/807760
-
- * Swarm은 Perforce 2013.1 이상에서 최고의 성능을 발휘합니다.
- http://www.perforce.com
-
- 이후 단계에서 Perforce 서비스에 설치되는 Swarm 트리거의 요구 사항은
- 다음과 같습니다.
-
- * Linux 호스트에 설치된 Perforce 서비스의 경우 다음 중 하나가 필요:
-
- * curl
- http://curl.haxx.se/download.html
- * wget
- http://ftp.gnu.org/gnu/wget/
-
- * Windows 호스트에 설치된 Perforce 서비스의 경우 다음 중 하나가 필요:
-
- * curl
- http://curl.haxx.se/download.html
-
- SELinux(Security-Enhanced Linux)
-
- * Swarm은 현재 SELinux*를 *지원하지 않습니다. 향후 릴리스에서 SELinux를
- 지원하고 필요한 구성에 대한 지침을 제공하게 되기를 바랍니다.
-
- * 본 버전의 Swarm은 '시행 모드'의 기본 구성을 사용하는 경우 SELinux와
- *연동되지 않습니다*. SELinux 시스템을 실행 중인 경우 다음 명령을 통해 'Permissive
- 모드'로 설정하면 Swarm이 작동하지 않을 수 있습니다.
-
- $ sudo setenforce 0
-
- 시스템을 'Permissive 모드'로 설정하면 댄 월시(Dan Walsh)를 슬프게 할 수
- 있습니다.
- https://plus.google.com/112917221531140868607/posts/ZiqZVXAjrev
-
- ------------------------------------------------------------------------
- Swarm 패키지 설치
- ------------------------------------------------------------------------
-
- Swarm은 두 가지 배포 형식으로 사용할 수 있습니다. Debian(.deb) 및 RPM
- (.rpm)
-
- 패키지 관리 도구가 각 패키지의 종속성을 파악하기 때문에 배포 패키지를 사용하면
- 소프트웨어의 설치, 업데이트 및 제거를 매우 간소화할 수 있습니다.
-
- 참고: Swarm 패키지는 Ubuntu 12.04 LTS, Ubuntu 14.04 LTS(Debian 패키지의 경우) 및
- CentOS 6.1+(RPM 패키지)에 대해 철저한 테스트를 거쳤습니다. 각 패키지는 다른 호환
- 배포판에서도 작동이 가능하지만 이는 아직 테스트된 바 없습니다.
-
- 1. Perforce 패키지 리포지토리를 구성합니다.
-
- 루트 권한으로 다음 중 하나를 실행합니다.
-
- a. Debian의 경우:
-
- 다음 컨텐츠로 '/etc/apt/sources.list.d/perforce.list' 파일을 생성합니다.
-
- deb http://package.perforce.com/apt/ubuntu/ precise release
-
- 이는 Debian 및 Ubuntu 시스템에서 작동합니다.
-
- b. RPM의 경우:
-
- 다음 컨텐츠로 '/etc/yum.repos.d/perforce-swarm.repo' 파일을 생성합니다.
-
- [Perforce]
- name=Perforce
- baseurl=http://package.perforce.com/yum/rhel/6/x86_64/
- enabled=1
- gpgcheck=1
-
- 이는 RedHat 및 CentOS 모두에 적용됩니다.
-
- 2. Perforce 패키지 서명 키를 가져옵니다.
-
- 다음 중 한 가지를 실행합니다:
-
- a. Debian의 경우:
-
- $ wget -qO - http://package.perforce.com/perforce.pubkey | sudo
- apt-key add -
- $ sudo apt-get update
-
- b. RPM의 경우(루트 권한으로 실행):
-
- # rpm --import http://package.perforce.com/perforce.pubkey
-
- 서명 키의 승인 여부 확인에 대한 자세한 정보는 다음을 참조하십시오.
-
- http://answers.perforce.com/articles/KB_Article/Public-Key-for-
- Installation-Packages
-
- 3. 주요 Swarm 패키지를 설치합니다.
-
- 두 가지 패키지 파일을 선택할 수 있습니다.
-
- 다음 중 한 가지를 실행합니다:
-
- i. Debian의 경우:
-
- $ sudo apt-get install perforce-swarm
-
- ii. RPM의 경우(루트 권한으로 실행):
-
- # yum install perforce-swarm
-
- 4. Swarm 트리거 패키지를 설치합니다.
-
- 이 패키지를 Perforce 서비스 호스팅 서버에 설치합니다. 해당 서버는 Swarm
- 호스팅 서버와 동일한 서버이거나 또는 네트워크 상의 다른 서버일 수 있습니다.
-
- 중요: Perforce 서비스 호스팅 서버가 패키지를 사용할 수 없는 경우(예:
- 서버에서 Widnows 실행 중), '/opt/perforce/swarm/p4-bin/scripts'에서
- Perforce 서비스 호스팅 서버로 적절한 Swarm 트리거 스크립트를 복사해야
- 합니다. Linux 시스템용은 'swarm-trigger.sh'입니다. Windows 시스템용은
- 'swarm-trigger.vbs'입니다. 복사한 후 트리거 스크립트를 구성해야 합니다. 자세한
- 정보는 아래 "Swarm용 Perforce 구성" 절을 참조하십시오.
-
- 다음 중 한 가지를 실행합니다:
-
- i. Debian의 경우:
-
- $ sudo apt-get install perforce-swarm-triggers
-
- ii. RPM의 경우(루트 권한으로 실행):
-
- # yum install perforce-swarm-triggers
-
- 5. Swarm 옵션 패키지를 설치합니다.
-
- 반드시 필요하지는 않지만 이 패키지는 Imagick 및 LibreOffice Swarm 모듈
- 사용에 필요한 종속성을 설치합니다. 이러한 모듈은 다양한 이미지 및 오피스 문서의
- 미리보기를 제공합니다.
-
- 다음 중 한 가지를 실행합니다:
-
- i. Debian의 경우:
-
- $ sudo apt-get install perforce-swarm-optional
-
- ii. RPM의 경우(루트 권한으로 실행):
-
- # yum install perforce-swarm-optional
-
- 중요: 이 패키지는 EPEL 프로젝트의 "php-pecl-imagick" 패키지의
- 영향을 받습니다. EPEL에서 패키지를 설치하려면 EPEL
- 리포지토리를 추가하고 서명 키를 허용해야 합니다. 관련 지침은
- https://fedoraproject.org/wiki/EPEL에서 참조하실 수 있습니다.
-
- 6. 다음 사전 설치 단계를 완료합니다.
-
- *perforce-swarm* 패키지가 설치되면 추가 구성이 필요합니다.
-
- 1. Swarm 구성 스크립트를 사용하여 Swarm을 설정합니다.
-
- 참고: Swarm 구성 스크립트에는 몇 가지 사용 방식이 있습니다. 아래의
- 단계는 대화형 설치를 통한 가장 간편한 구성에 대한 요약이지만 루트 권한을
- 사용하면 실행 중에 옵션을 검토할 수 있습니다.
-
- $ /opt/perforce/swarm/sbin/configure-swarm.sh -h
-
- 루트 권한으로 대화형 설치 실행:
-
- $ /opt/perforce/swarm/sbin/configure-swarm.sh -i
-
- 2. 구성 스크립트에 정보를 입력합니다.
-
- a. P4PORT의 값을 지정합니다.
-
- Perforce 서비스의 호스트 이름 및 포트를 지정합니다. 정의된 경우
- P4PORT 값은 기본값으로 사용됩니다. 구성 스크립트가 자신의 연결 가능
- 여부를 확인합니다.
-
- b. Perforce 서비스에서 관리자 수준 권한으로 일반 사용자의 사용자 ID
- 및 암호를 지정합니다.
-
- 기본 사용자 ID는 'swarm'입니다.
-
- 안내에 따라 사용자 ID에 따른 로그인 티켓 또는 암호를 입력합니다.
-
- 참고: 로그인 티켓은 다음을 실행하여 얻을 수 있습니다(다른 셸에서).
-
- $ p4 -p myp4host:1666 -u userid login -p
-
- 입력한 로그인 티켓의 만료일이 1년 이내인 경우 경고가
- 표시됩니다.
-
- c. Swarm UI의 호스트 이름을 지정합니다.
-
- 기본값은 현재 호스트 이름입니다. 구성 스크립트는 호스트
- 이름의 실제 작동 여부를 확인하지 않습니다.
-
- d. 메일 릴레이 호스트를 지정합니다.
-
- 참고: 구성 스크립트는 입력한 메일 릴레이 호스트가 실제로 SMTP 연결을
- 허용하는지 확인하지 않습니다.
-
- 이 정보가 입력되면 구성 스크립트는 다음 작업을 수행합니다.
-
- - P4PHP 구성
- - 워커 작업의 상시 실행 보장을 위한 크론 잡 생성
- - Swarm 'data/config.php' 구성 파일 생성
- - Swarm용 Apache 가상 호스트 생성
- - Apache 다시 시작
-
- 3. Swarm 트리거를 구성합니다.
-
- 자세한 정보는 아래 "Swarm용 Perforce 구성" 절을 참조하십시오.
-
- 모두 완료되었습니다.
-
- ------------------------------------------------------------------------
- Swarm OVA 설치
- ------------------------------------------------------------------------
-
- Swarm은 최소한의 구성을 필요로 하는 OVA(Open Virtualization Appliance)로
- 설치할 수 있습니다.
-
- 다음이 필요한 경우 OVA를 사용할 수 있습니다.
-
- * 설치 및 구성 단계 간소화
- * 추가 하드웨어 없이 Swarm 실험
- * Linux 기반 서버 없이 Swarm 설치
-
- OVA를 사용하려면 아래 지침에 따른 후
- "트리커 토큰 설정" 절로 건너 뜁니다.
-
- 1. Swarm OVA를 다운로드합니다.
-
- 2. OVA를 사용자의 가상화 환경으로 가져옵니다.
-
- 3. 가상 컴퓨터를 시작합니다. 진단 및 부트 정보가 나타납니다.
-
- 4. 여러 구성 프롬프트가 순차적으로 표시됩니다.
-
- a. 루트 사용자 암호
- b. 시스템 *swarm* 사용자 암호
- c. 가상 컴퓨터 호스트 이름
- d. 메일 릴레이 호스트
- e. Perforce 서비스 포트
- f. *admin* 권한을 가진 Perforce 서비스의 일반 사용자
- 사용자 ID
- g. *admin-level* Perforce 사용자의 티켓 또는 암호
-
- 프롬프트가 성공적으로 답변되면 가상 컴퓨터는 구성 작업을 완료합니다. 모든
- 작업이 완료되면 시작 화면이 표시됩니다.
-
- 시작 화면에서 Swarm, 문서 및 가상 컴퓨터 관리 콘솔에 액세스하는 URL을
- 제공합니다.
-
- 이제 OVA를 통해 Swarm에 액세스할 수 있습니다.
-
- 참고:
-
- OVA가 구성되고 실행되면 SSH를 이용하여 시스템 *swarm* 사용자로 가상 컴퓨터에
- 연결하고 다음 Swarm config.php 파일을 수정하여 구성을 조정할 수 있습니다.
-
- /opt/swarm/data/config.php
-
- Swarm 설치 폴더는 /opt/swarm입니다.
-
- 더 아래 쪽의 "트리거 토큰 설정" 절로 진행합니다.
-
-
- ------------------------------------------------------------------------
- Swarm 설치
- ------------------------------------------------------------------------
-
- 높은 수준에서 Swarm은 다음을 수행하여 설치됩니다.
-
- * Swarm Tarball을 적절한 디렉토리에 확장
-
- * Apache가 Swarm 'data' 폴더에 쓰기 가능한지 확인
-
- * PHP용 iconv, json, session, P4PHP 및 APC 확장 설치 및 활성화
-
- * Swarm 'public' 폴더를 포인팅하는 Apache 가상 호스트 생성
-
- 단계별 설치 지침
-
- 1. Swarm 패키지("압축 Tarball")를 확장합니다.
-
- * 다양한 그래픽 파일 관리 응용프로그램(Linux의 Nautilus, Mac의
- Finder 등)에서 Swarm Tarball 패키지를 두 번 클릭하면 자동으로 패키지가
- 확장됩니다.
-
- * 명령줄에서 tar 명령으로 확장합니다.
-
- $ tar -zxf swarm.tgz
-
- * Swarm 패키지의 컨텐츠가 이름이 "swarm-<version>"인 상위 수준
- 폴더로 확장되며 여기서 <version>은 다운로드된 버전을 나타냅니다.
-
- 2. Swarm 패키지의 컨텐츠를 올바른 위치로 이동합니다.
-
- * Swarm 파일의 위치를 확인합니다. 이는 Apache에서 구성된 가상 호스트와
- 일치해야 합니다(아래의 Apache 구성 및 설치 절 참조).
-
- $ mv /path/to/swarm-<version> /path/to/vhosts/swarm
-
- 3. Swarm 파일에 대해 올바른 소유권과 권한을 할당합니다.
-
- * Swarm 배포판의 상위 수준 폴더 'data'에 대해 웹 서버가 쓰기 가능해야
- 합니다. 이를 적용하려면 데이터 폴더의 소유권을 웹 사용자로 변경하면 됩니다.
-
- $ sudo chown -R www /path/to/vhosts/swarm/data
-
- * 위에서 'www' 사용자는 웹 서버 사용자 이름의 한 예입니다. 사용자의
- 배포판에 따라 이는 '_www', 'web', 'nobody' 또는 기타 다양한 이름이 될 수 있습니다.
-
- 보안 관점에서, Swarm 배포판과 웹 서버가 충돌하는 경우 사용자/그룹에
- 최소한의 파일 권한만 부여하는 것이 좋습니다.
-
-
- Apache 구성 및 설정
-
- * Apache HTTP 서버(Apache) 구성은 OS 배포판에 따라 다를 수 있습니다.
- 자신의 Apache 설치에 맞는 문서를 참조하십시오.
-
- * 예를 들어 Mac OS X에서는 시스템 환경 설정의 공유 제어에서 웹 공유를
- 활성화해야 할 수 있습니다.
-
- 4. 설치에 맞는 Apache 가상 호스트("vhost")를 설정합니다.
-
- * 자세한 정보는 Apache 전체 설명서를 참조하십시오.
-
- http://httpd.apache.org/docs/2.2/vhosts/
- http://httpd.apache.org/docs/2.4/vhosts/
-
- * Apache 2.2용 가상 호스트 구성 예:
-
- <VirtualHost *:80>
- ServerName myswarm
- ServerAlias myswarm.machine.domain.com
- ErrorLog "/path/to/apache/logs/myswarm.error_log"
- CustomLog "/path/to/apache/logs/myswarm.access_log" common
- DocumentRoot "/path/to/vhosts/swarm/public"
- <Directory "/path/to/vhosts/swarm/public">
- AllowOverride All
- Order allow,deny
- Allow from all
- </Directory>
- </VirtualHost>
-
- * Apache 2.4용 가상 호스트 구성 예:
-
- <VirtualHost *:80>
- ServerName myswarm
- ServerAlias myswarm.machine.domain.com
- ErrorLog "/path/to/apache/logs/myswarm.error_log"
- CustomLog "/path/to/apache/logs/myswarm.access_log" common
- DocumentRoot "/path/to/vhosts/swarm/public"
- <Directory "/path/to/vhosts/swarm/public">
- AllowOverride All
- Require all granted
- </Directory>
- </VirtualHost>
-
- * DocumentRoot 및 Directory 값이 위 2단계에서 배치한 Swarm 배포판의
- "public" 폴더에 대응하는지 확인하십시오.
-
- 5. 올바른 Apache 모듈이 활성화되었는지 확인합니다.
-
- * PHP 및 Rewrite 모듈의 활성화 여부를 쿼리하기 위해 모든 활성 모듈 목록을
- 표시하도록 'apachectl' 유틸리티를 사용할 수 있습니다(사용자 시스템에서는
- 'apache2ctl'이라는 이름으로 표시될 수 있음).
-
- $ apachectl -t -D DUMP_MODULES
-
- * 결과에서 'php5_module' 및 'rewrite_module'을 찾습니다. 해당 모듈이
- 보이면 6단계로 건너 뜁니다.
-
- 사용자의 배포에 'a2enmod' Apache 유틸리티가 포함되어 있는 경우, 이를
- 이용하여 PHP 및 Rewrite 모듈을 활성화합니다.
-
- $ sudo a2enmod php5 rewrite
-
- * 'a2enmod' 유틸리티를 사용하지 않고 Apache 구성 파일을 직접 편집합니다.
- 모듈에 대한 Apache 구성 파일을 찾아 주석을 해제하거나 다음 줄을 추가합니다.
-
- LoadModule php5_module libexec/apache2/libphp5.so
- LoadModule rewrite_module libexec/apache2/mod_rewrite.so
-
- * 참고로 사용자의 Apache 설치에 따라 모듈(.so 파일)의 위치는 다를 수
- 있습니다.
-
- 6. 웹 서버를 다시 시작합니다.
-
- * 활성화한 Apache 구성 변경 사항이 적용되도록 웹 서버를 다시
- 시작합니다.
-
- $ sudo apachectl restart
-
- * Apache 활성 가상 호스트 및 모듈을 쿼리하여 변경 사항이 적용되었는지
- 확인합니다.
-
- $ apachectl -t -D DUMP_VHOSTS
- $ apachectl -t -D DUMP_MODULES
-
-
- PHP 구성:
-
- * PHP는 OS 배포판에 따라 다양하며 PHP 설치에 대한 해당 문서를 참조하십시오.
-
- 7. 먼저 PHP Apache 모듈이 사용할 php.ini 파일을 결정합니다. 참고로
- 명령줄에서 PHP를 호출할 때 사용되는 php.ini 파일과 반드시 동일할 필요는 없습니다.
- (명령줄에서 'php --ini'를 실행하면 이 정보가 표시됩니다).
-
- PHP Apache 모듈이 사용하는 php.ini가 어떤 것인지 파악하기 어렵다면,
- Apache를 통해 사용할 수 있는 PHP 파일을 다음 컨텐츠로 생성합니다.
-
- <?php phpinfo();?>
-
- 이 파일에 브라우저를 표시하고 결과 테이블에서 해당 테이블 행을
- 검색하십시오.
-
- 불러온 구성 파일
-
- 8. 시스템에 대한 date.timezone이 정확하게 설정되어 있는지 확인합니다.
-
- 일부 배포판에는 PHP가 사용할 수 있는 기본 시간대가 설정되어 있지 않습니다.
- 따라서 PHP용 시간대를 명확하게 설정하는 것이 좋습니다. 지원되는 시간대 목록:
-
- http://www.php.net/manual/en/timezones.php
-
- php.ini 내 date.timezone 설정 예:
-
- date.timezone = America/Vancouver
-
- 9. iconv, json 및 세션 확장이 있는지 확인합니다.
-
- * 해당 확장은 일반적으로 활성화되어 있지만, OS 패포판을 통해 패키지를
- 설치해야 할 수도 있습니다. 위 phpinfo 결과에서 각 이름을 검색하여 확장이
- 존재하는지 확인합니다.
-
- 10. PHP용 Perforce 확장 P4PHP 활성화:
-
- * Swarm이 Perforce 서비스와 통신하도록 하려면 P4PHP 확장이 필요합니다.
-
- * 당사는 Linux 플랫폼(32 및 64비트) 및 Mac OS X(Darwin)용, PHP 5.3,
- 5.4, 및 5.5를 위한 다양한 P4PHP 이진 베리언트를 제공합니다.
-
- * Linux의 경우 기본 베리언트는 glibc 2.11로 컴파일되지만, Red Hat
- Enterprise Linux 5.9. 등 이전 배포판 사용자를 지원하기 위해 glibc 2.3.3으로
- 컴파일된 PHP 5.3 베리언트도 함께 포함되어 있습니다.
-
- * P4PHP를 활성화하려면 웹 서버의 php.ini 파일을 편집하여 다음 줄을
- 추가합니다.
-
- extension=/path/to/swarm/p4-bin/bin.<platform>/perforce-
- <variant>.so
-
- 예 1: PHP 5.4 실행 64비트 Linux 시스템의 경우:
-
- extension=/path/to/swarm/p4-bin/bin.linux26x86_64/perforce-
- php54.so
-
- 예 2: 2.11 이전 glibc을 사용하는 PHP 5.3 실행 32비트 Linux 시스템의
- 경우:
-
- extension=/path/to/swarm/p4-bin/bin.linux26x86/perforce-php53-
- glibc2.3.3.so
-
- * 아니면 PHP 확장의 기본 위치에 확장 파일을 복사하고 다음 줄을 추가하십시오.
-
- extension=perforce-<variant>.so
-
- 11. Apache를 다시 시작하면 변경 사항이 적용됩니다.
-
- 12. P4PHP의 활성화를 확인하려면 7단계에서 생성한 phpinfo 파일로 이동합니다.
- 그런 다음 "perforce" 섹션을 확인합니다 ("Perforce Module" 검색). 모듈이
- 활성화되었음을 알리고 버전 정보가 표시됩니다.
-
-
- PHP용 대체 PHP 캐시(APC) 확장:
-
- APC는 PHP 중간 코드 캐싱 및 최적화를 위한 견고한 무료 개방형
- 프레임워크입니다. APC를 활성화하면 Swarm의 성능이 향상됩니다. APC에 대한 자세한
- 정보는 다음에서 확인할 수 있습니다.
-
- http://php.net/apc
- http://pecl.php.net/package/APC
-
- 13. APC는 사용자의 OS 배포판을 통해 설치하는 것이 좋습니다(apt-get, yum 등을
- 통해).
-
- * 배포판이 PHP용 APC 패키지를 제공하지 않을 경우 PECL을 통해 설치할 수도
- 있습니다(시스템 종속성 문제를 해결해야 할 수 있음).
-
- $ sudo pecl install apc
-
- 14. PHP Apache 모듈의 php.ini 파일에서 APC가 활성화되었는지 확인합니다
- (P4PHP에 대한 위 절에서 지정된 대로). 다음 줄을 php.ini에 추가해야 할 수
- 있습니다.
-
- extension=apc.so
-
- 15. Apache를 다시 시작하면 변경 사항이 적용됩니다.
-
- 16. APC의 활성화를 확인하려면 P4PHP에 대한 위 절 1단계에서 생성한 phpinf
- 파일로 이동합니다. 그런 다음 "apc" 섹션을 확인합니다("APC Support"를 검색해야
- 할 수 있음). 해당 버전 정보 및 지시문 테이블이 보고됩니다.
-
- 설정할 APC 지시문에 대해 현재 권장되는 바는 없습니다.
-
- ** 위에서 생성한 phpinfo 파일에 대한 노트 참조 **
-
- * P4PHP 및 APC의 설치 및 활성화가 완료되면 설치 정보가 노출되지 않도록
- 생성한 phpinfo 파일을 제거하는 것이 좋습니다.
-
-
- PHP용 Imagemagick(imagick) 확장
-
- * Imagick은 이미지의 생성 및 처리를 위한 ImageMagick 그래픽 라이브러리
- API가 통합된 PHP 확장입니다. Enabling Imagick을 활성화하면 웹 브라우저에서
- 일반적으로 표시할 수 없는 그래픽 형식에 대한 Swarm의 미리 보기 기능이 강화됩니다.
- Imagick에 대한 자세한 정보는 다음을 참조하십시오.
-
- http://php.net/imagick
- http://pecl.php.net/package/imagick
-
- 17. Imagick는 사용자의 OS 배포판을 통해 설치하는 것이 좋습니다
- (apt-get, yum 등을 통해).
-
- * 배포판이 PHP용 Imagick 패키지를 제공하지 않을 경우 PECL을 통해
- 설치하십시오(시스템 종속성 문제를 해결해야 할 수 있음).
-
- $ sudo pecl install imagick
-
- 18. PHP Apache 모듈의 php.ini 파일에서 Imagick의 활성화 여부를
- 확인합니다(P4PHP에 대한 위 절에서 지정된 대로). 다음 줄을 php.ini에 추가해야
- 할 수 있습니다.
-
- extension=imagick.so
-
- 19. Apache를 다시 시작하면 변경 사항이 적용됩니다.
-
- 20. Imagick의 활성화를 확인하려면 P4PHP에 대한 위 절의 1단계에서 생성한
- :파일:`phpinfo`파일로 이동합니다. 그런 다음 "imagick" 섹션을 확인합니다.
- 해당 버전 정보 및 지시문, 지원되는 이미지 파일 형식 등을 나타내는 테이블이
- 보고됩니다.
-
- ** 위에서 생성한 phpinfo 파일에 대한 노트 참조 **
-
- * P4PHP 및 Imagick의 설치 및 활성화가 완료되면 설치 정보가 노출되지
- 않도록 생성한 phpinfo 파일을 제거하는 것이 좋습니다.
-
-
- LibreOffice
-
- LibreOffice는 무료이면서 강력한 오픈 소스 개인 생산성 제품군입니다.
- Swarm은 이를 숨김 모드로 활용하여 오피스 유형 문서의 미리 보기를 생성할 수
- 있습니다. LibreOffice에 대한 자세한 정보는 다음을 참조하십시오.
-
- https://www.libreoffice.org/
-
- 21. LibreOffice는 사용자의 OS 배포판을 통해 설치하는 것이 좋습니다(apt-get,
- yum 등을 통해).
-
- * 특히, Swarm에 대해 필요한 최소 패키지 및 해당 패키지의 추이 종속성은
- 다음과 같습니다.
-
- * libreoffice-calc
- * libreoffice-draw
- * libreoffice-impress
- * libreoffice-writer
- * libreoffice-headless(CentOS/RHEL만 해당)
-
-
- ------------------------------------------------------------------------
- Swarm 구성
- ------------------------------------------------------------------------
-
- 이제 Swarm을 사용할 준비가 되었으며 사용자의 환경에 맞게
- 구성해야 합니다. 구성을 위한 높은 수준의 항목은 다음과 같습니다.
-
- * Swarm이 Perforce 서버와 통신할 수 있도록 구성 파일 생성
-
- * 워커 프로세스 생성을 위한 반복 작업 설정
-
- Swarm 구성 파일
-
- * 'data' 디렉토리 아래에 다음과 같은 컨텐츠로 'config.php'라는 이름의
- 파일을 생성합니다.
-
- <?php
- return array(
- 'p4' => array(
- 'port' => 'myp4server.domain.com:1666',
- 'user' => 'admin_userid',
- 'password' => 'ticket-value',
- )
- );
-
- * 'port' 값의 경우 Perforce 서버에 연결할 때 사용된 P4PORT 값을
- 입력합니다.
-
- * 'user' 값의 경우 Perforce 서비스에 대한 'admin' 수준 액세스를 가진
- Perforce 사용자 이름을 입력합니다.
-
- * 'password' 값의 경우 일반적인 텍스트 암호를 사용할 수도 있으나,
- 그것보다는 티켓 값을 사용하는 것이 좋습니다. 다음 명령을 사용하여 로그인 중
- admin_userid용 티켓 값을 가져옵니다.
-
- $ p4 -u <admin_userid> login -p
-
- 참고: 3에 대한 *security* 구성 설정을 사용하는 Perforce 서비스의 경우 티켓
- 기반 인증이 필요합니다.
-
- 중요: 티켓 기반 인증 사용 시 티켓이 만료되기까지의 기간이 충분한지
- 확인하십시오. 만료된 티켓으로는 많은 Swarm 작동을 수행할 수 없습니다.
-
- 다음을 통해 <admin_userid>의 티켓 만료 시점을 확인할 수 있습니다.
-
- $ p4 -u <admin_userid> -P <ticket_value> login -s
-
- 티켓에 대한 자세한 정보는 다음에서 확인할 수 있습니다.
-
- http://www.perforce.com/perforce/doc.current/manuals/p4sag/03_superuser
- .html
-
-
- ------------------------------------------------------------------------
- 트리거 토큰 설정
- ------------------------------------------------------------------------
-
- 트리거 토큰은 Swarm 작업에 영향을 주는 승인되지 않은 이벤트를 방지하며
- 트리거는 유효한 토큰이 무시되지 않도록 Swarm에
- 요청합니다.
-
- * Swarm에 수퍼 사용자로 로그인합니다.
-
- * 주 도구 모음 오른쪽의 사용자 ID를 클릭합니다.
-
- * Swarm 정보를 선택합니다. Swarm 정보 대화 상자가 나타납니다.
-
- Swarm 정보 대화 상자가 표시되면 Swarm은 API 토큰이 없을 경우 이를
- 생성합니다.
-
- * 대화 상자 아래쪽의 트리거 토큰 값을 메모하여 다음 단계에서 사용하십시오.
- 토큰을 클릭하여 선택하면 간편하게 복사할 수 있습니다.
-
-
- ------------------------------------------------------------------------
- Swarm용 Perforce 구성
- ------------------------------------------------------------------------
-
- 이제 Swarm 인스턴스가 구성되었으며 마지막 단계는 관심 이벤트에 대한 정보를
- Swarm에 전달하도록Perforce를 구성하는 것입니다. 이는
- 트리거를 사용하여 구성할 수 있습니다. Perforce 트리거에 대한
- 자세한 정보는 Perforce 시스템 관리자 안내서를 참조하십시오.
-
- http://www.perforce.com/perforce/doc.current/manuals/p4sag/06_scripting
- .html
-
- Perforce 트리거를 사용하여 이벤트를 Swarm으로 푸시
-
- * 다음 Swarm 트리거 스크립트를 사용하여 Perforce 이벤트를 Swarm으로
- 푸시합니다. 다음을 통해 사용할 수 있습니다.
-
- p4-bin/scripts/swarm-trigger.sh
-
- * 상기한 스크립트를 Perforce 서버 컴퓨터에 복사하여 Perforce 트리거가 이를
- 호출할 수 있도록 합니다.
-
- * 스크립트를 수정하여 SWARM_HOST 변수를 적절하게 설정합니다.
-
- * 스크립트를 수정하여 SWARM_TOKEN 변수를 적절하게 설정합니다. 이는 이전
- 단계에서 설정된 API 토큰입니다.
-
- * 스크립트에 실행 권한이 있는지 확인합니다.
-
- $ chmod +x swarm-trigger.sh
-
- * 이 트리거 스크립트에는 트리거 테이블에 추가되어야 할 항목을 표시하는
- 간편한 플래그가 포함되어 있습니다.
-
- $ ./swarm-trigger.sh -o
-
- * '수퍼' 권한을 가진 Perforce 사용자로, 'p4 triggers' 명령을 실행한 다음
- 해당 명령의 결과 줄을 추가하여 트리거 테이블을 편집합니다.
-
-
- ------------------------------------------------------------------------
- 워커 생성을 위한 반복 작업 설정
- ------------------------------------------------------------------------
-
- 수신 Perforce 이벤트가 Swarm을 위해 자동으로 처리되는지 여부를 확인하려면
- 크론 잡을 설정하는 것이 중요합니다.
-
- * crontab을 편집합니다. 사용자는 Swarm 호스트에 배치하고 싶을 수 있으나
- 이는 어떤 호스트에도 상주할 수 있습니다.
-
- $ crontab -e
-
- * 매 분마다 워커를 생성하도록 항목을 추가합니다.
-
- * * * * * curl -o /dev/null -m1 http://myswarm/queue/worker
-
- * Swarm에 대해 적절한 호스트 이름을 지정했는지 확인합니다.
-
-
- 이제 Swarm을 사용할 준비가 되었습니다. 즐겁게 사용하십시오!
-
- 끝
-
# |
Change |
User |
Description |
Committed |
|
#1
|
18730 |
Liz Lam |
clean up code and move things around |
9 years ago
|
|