===================================== PROVIDER 설치가이드 ===================================== 1. 개요 =============== 본 문서는 (주)유라클에서 제공하는 모피어스 제품군 중 “Server Platform - Push”의 원활한 설치를 할 수 있도록 제품 설치에 관련한 설명과 수행 절차를 나타내는 것을 목적으로 한다. 본 문서는 성능 개선, 기능 추가 등의 사항으로 내용이 변경될 수 있다. 2. 설치 준비 ================ - 설치를 하기 전 다음 사항이 준비되어야 한다. +------------+---------------------------------+--------+ | 항목 | 설명 | 비고 | +------------+---------------------------------+--------+ | Database | Oracle 9i 이상, MS-SQL, MySql | | +------------+---------------------------------+--------+ | Java | Java version 1.6.0\_45 | | +------------+---------------------------------+--------+ 3. 설치 절차 ================ - 다음 각 설치 항목 순으로 설치한다. 3-1. Provider ------------------ - Provider는 Receiver 가 보낸 PUSH 메시지를 GCM, APNS 로 전송하고 결과를 다시 Receiver로 리턴 해준다. 4. Provider 설치 ================ 4-1. 설치 전 준비 ----------------- - Provider를 설치 하기 전 다음 각 항목을 준비한다. - Java가 설치되어 있는 리눅스/유닉스 시스템 - version 1.6 이상의 Java 실행환경 - 로그인 가능한 리눅스/유닉스 계정 - 시스템에 설치된 bash shell - 설치 디렉토리 (예: /home/msp/msp\_push\_provider) - 설치 파일(msp\_push\_provider\_00.jar의 형태로 제공) 4-2. Provider 설치 ------------------ - Provider를 설치하기 위해 다음 각 항목을 순서대로 실행한다. - 설치 파일을 설치할 디렉토리(/home/msp/msp\_push\_provider)에 업로드 한다. - 설치할 서버에 로그인 한다. - 설치 디렉토리로 이동한다. |image1| - 설치 파일의 압축을 해제한다. |image2| - 압축을 해제하면 실행에 필요한 파일들이 생성된다. - 아래 명령을 실행하여 실행 스크립트 파일의 권한을 설정한다. |image3| 4-3. 설정 파일 편집 ------------------- - 이 단락에서는 실행을 위해 설정해야 하는 필수 항목들에 대해 기술한다. 설정 파일의 자세한 내용은 운영\_PROVIDER\_매뉴얼을 참조한다. 설정 파일은 설치 디렉토리(/home/msp/msp\_push\_provider) 아래의 conf/ 디렉토리에 위치한다. Push Provider의 설정파일의 종류는 다음과 같다. +---------------------+----------------------------------------------+--------+ | 설정파일 | 기능 | 비고 | +---------------------+----------------------------------------------+--------+ | config.properties | APPID, GCM token, APNS token password 설정 | | +---------------------+----------------------------------------------+--------+ | Log4j.properties | 로그설정 | | +---------------------+----------------------------------------------+--------+ 4-3-1. config.properties 설정 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +--------------------------------------------------+ | - config.properties | +==================================================+ | # provider 포트 설정 | | | | PORT = 10420 | | | | # APPID 설정 | | | | APPID = appid\_1, appid\_2 | | | | # appid\_1 GCM token 설정 | | | | GCM\_APIKEY1 = GCM\_token\_appid\_1 | | | | # appid\_1 APNS token 설정 | | | | APNS\_CERT\_SRC1 = APNS\_token\_appid\_1 | | | | # appid\_1 APNS password 설정 | | | | APNS\_CERT\_PASSWD1 = APNS\_password\_appid\_1 | | | | # appid\_2 GCM token 설정 | | | | GCM\_APIKEY2 = GCM\_token\_appid\_2 | | | | # appid\_2 APNS token 설정 | | | | APNS\_CERT\_SRC2 = APNS\_token\_appid\_2 | | | | # appid\_2 APNS password 설정 | | | | APNS\_CERT\_PASSWD2 = apns\_password\_appid\_2 | | | | ## APNS | | | | APNS\_USE\_EXT = Y | | | | APNS\_REMOVE\_APPID = N | +--------------------------------------------------+ - 설치시 수정되어야 할 항목은 아래와 같다. - **PORT**: DB에 맞는 JDBC 드라이버의 클래스명을 기입한다. (예: DB가 오라클일때 oracle.jdbc.driver.OracleDriver) - **APPID:** appid를 콤마(,) 로 구분하여 설정 - **GCM\_APIKEY1:** appid\_1 에대한 GCM token. - **APNS\_CERT\_SRC1:** appid\_1 에대한 APNS token. - **APNS\_CERT\_PASSWD1:** appid\_1 에대한 APNS password. - **GCM\_APIKEY2:** appid\_2 에대한 GCM token. - **APNS\_CERT\_SRC2:** appid\_2 에대한 APNS token. - **APNS\_CERT\_PASSWD2:** appid\_2 에대한 APNS password. 4-3-2. Log 설정 ^^^^^^^^^^^^^^^^^ - Provider의 로그 설정을 위해 conf/log4j.xml을 수정한다. +--------------------------------------------------------------------------------------+ | - **log4j.xml** | +======================================================================================+ | log4j.rootLogger = INFO, *stdout*, *dailyfile* | | | | log4j.appender.stdout = org.apache.log4j.ConsoleAppender | | | | log4j.appender.stdout.encoding =UTF-8 | | | | log4j.appender.stdout.layout = org.apache.log4j.PatternLayout | | | | log4j.appender.stdout.layout.ConversionPattern=%5p ({%t} %F[%M]:%L) [%d] - %m%n | | | | log4j.appender.dailyfile.Threshold = INFO | | | | log4j.appender.dailyfile.encoding =UTF-8 | | | | log4j.appender.dailyfile = org.apache.log4j.DailyRollingFileAppender | | | | log4j.appender.dailyfile.File = ./logs/logfile.log | | | | log4j.appender.dailyfile.layout = org.apache.log4j.PatternLayout | | | | log4j.appender.dailyfile.layout.ConversionPattern=%5p ({%t} %F[%M]:%L) [%d] - %m%n | +--------------------------------------------------------------------------------------+ 4-3-3. 실행 스크립트 설정 ^^^^^^^^^^^^^^^^^^^^^^^^^ - start.sh 설정 +-------------------------------------------------------------------------------------------------------------+ | - **start.sh** | +=============================================================================================================+ | #!/bin/bash | | | | # | | | | # | | | | # | | | | echo "starting provider." | | | | **JAVA\_HOME**\ =/usr/lib/jvm/java-7-openjdk-amd64/jre | | | | CLASSPATH=.:./conf | | | | #LOG4J\_CONF="file:./conf/log4j.xml" | | | | #nohup java -classpath $CLASSPATH -Dlog4j.configuration=$LOG4J\_CONF -jar bin/Provider.jar 2> /dev/null & | | | | nohup ${JAVA\_HOME}/bin/java -classpath $CLASSPATH -jar bin/Provider.jar PROVIDER 2> /dev/null & | +-------------------------------------------------------------------------------------------------------------+ - **JAVA\_HOME**: java가 설치된 경로를 입력한다. 5. 설치 확인 =============== - Provider 를 설치 한 후 다음 순서에 따라 동작을 확인한다. - Provider 실행 - Provider만 단독 실행한다. 1. Provider 실행 - start.sh을 실행하여 Provider를 구동한다. |image4| 실행 후 동작 확인은 ps 출력 또는 log파일 출력을 확인한다. |image5| 6. Trouble Shooting ==================== - 설치 후 동작이 확인되지 않을 경우 아래 항목들을 체크한다. 6-1. Provider 실행 ------------------ - start.sh이 실행되지 않음 - start.sh 내에 JAVA\_HOME 경로 설정을 확인한다. bash 설치 여부를 확인한다. bash 실행 경로를 확인한다. ksh등 다른 shell 밖에 사용할 수 없는 경우 start.sh의 내용을 해당 환경에 맞게 수정한다. (대부분의 경우 첫 번째 라인의 #!/bin/bash를 해당 환경에 맞도록 수정) .. |image1| image:: img/provider-1.png :width: 5.50000in .. |image2| image:: img/provider-2.png :width: 5.50000in .. |image3| image:: img/provider-3.png :width: 5.50000in .. |image4| image:: img/provider-4.png :width: 5.50000in .. |image5| image:: img/provider-5.png :width: 5.50000in