PROVIDER 설치가이드

1. 개요

본 문서는 (주)유라클에서 제공하는 모피어스 제품군 중 “Server Platform - Push”의 원활한 설치를 할 수 있도록 제품 설치에 관련한 설명과 수행 절차를 나타내는 것을 목적으로 한다.

본 문서는 성능 개선, 기능 추가 등의 사항으로 내용이 변경될 수 있다.

2. 설치 준비

  • 설치를 하기 전 다음 사항이 준비되어야 한다.

항목

설명

비고

Java

Java version 1.8 이상

TLS1.2를 위해 1.8 이상 권고

3. 설치 절차

  • 다음 각 설치 항목 순으로 설치한다.

3-1. Provider

  • Provider는 UPMC 가 보낸 PUSH 메시지를 GCM, APNS 로 전송하고 결과를 다시 UPMC로 리턴 해준다.

4. Provider 설치

4-1. 설치 전 준비

  • Provider를 설치 하기 전 다음 각 항목을 준비한다.

    • Java가 설치되어 있는 리눅스/유닉스 시스템

    • version 1.8 이상의 Java 실행환경

    • 로그인 가능한 리눅스/유닉스 계정

    • 시스템에 설치된 bash shell

    • 설치 디렉토리 (예: /home/consulting/push/provider)

    • 설치 파일(provider-5.0.13-ee.tar 의 형태로 제공)

4-2. Provider 설치

  • Provider를 설치하기 위해 다음 각 항목을 순서대로 실행한다.

    • 설치 파일을 설치할 디렉토리(/home/consulting/push/provider)에

      업로드 한다.

    • 설치할 서버에 로그인 한다.

    • 설치 디렉토리로 이동한다.

      image1

    • 설치 파일의 압축을 해제한다.

      image2

    • 압축을 해제하면 실행에 필요한 파일들이 생성된다.

    • 아래 명령을 실행하여 실행 스크립트 파일의 권한을 설정한다.

      image3

4-3. 설정 파일 편집

  • 이 단락에서는 실행을 위해 설정해야 하는 필수 항목들에 대해 기술한다. 설정 파일의 자세한 내용은 운영_PROVIDER_매뉴얼을 참조한다.

    설정 파일은 설치 디렉토리(/home/consulting/push/provider) 아래의 conf/ 디렉토리에 위치한다.

    Push Provider의 설정파일의 종류는 다음과 같다.

설정파일

기능

비고

config.properties

APPID, GCM token, APNS token password 설정

Log4j.properties

로그설정

4-3-1. config.properties 설정

  • config.properties

# APPID 설정

APPID = appid_1, appid_2

## GCM PROTOCOL KIND : HTTP or XMPP

GCM_USE_PROTOCOL = XMPP

## 매우중요 : POROTCOL을 XMPP를 사용 할 경우

## 개발서버는 DEV(포트:5236)로 하시고

##운영서버는 REAL(포트5235)롤 셋팅 해 주세요.

XMPP_CONNECT_SERVER = REAL

## APNS PROTOCOL KIND : BINARY or HTTP2

APNS_USE_PROTOCOL = HTTP2

# appid_1 GCM 설정

GCM_APIKEY1 = GCM_serverkey_appid_1

GCM_SENDERID1 = GCM_senderid_appid_1

# appid_2 GCM 설정

GCM_APIKEY2 = GCM_serverkey_appid_2

GCM_SENDERID1 = GCM_senderid_appid_2

# appid_1 APNS 설정

APNS_HTTP2_TOKEN_SRC1 = APNS_cert_path_appid_1

APNS_HTTP2_TEAMKEY1 = APNS_teamkey_appid_1

APNS_HTTP2_KEYID1 = APNS_keyid_appid_1

# appid_2 APNS token 설정

APNS_HTTP2_TOKEN_SRC2 = APNS_cert_path_appid_2

APNS_HTTP2_TEAMKEY2 = APNS_teamkey_appid_2

APNS_HTTP2_KEYID2 = APNS_keyid_appid_2

## APNS

APNS_USE_EXT = Y

APNS_REMOVE_APPID = N

  • 설치시 수정되어야 할 위와 같다. (수정이 불필요한 부분은 기입하지 않았습니다.)

    • APPID: appid를 콤마(,) 로 구분하여 설정

    • APPID의 콤마(,)를 구분으로 하여 첫번째인 경우 GCM_APIKEY1, GCM_SENDERID1, APNS_HTTP2_TOKEN_SRC1, APNS_HTTP2_TEAMKEY1, APNS_HTTP2_KEYID1 의 값을 설정한다.

    • APPID의 콤마(,)를 구분으로 하여 두번째인 경우 GCM_APIKEY2, GCM_SENDERID2, APNS_HTTP2_TOKEN_SRC2, APNS_HTTP2_TEAMKEY2, APNS_HTTP2_KEYID2 의 값을 설정한다.

  • 주의사항: 각 라인의 마지막에 공백이 추가 되지 않아야 합니다.

4-3-2. Log 설정

  • Provider의 로그 설정을 위해 conf/logback.xml을 수정한다.

  • 로그파일을 남기는 디렉터리 경로 지정이 필요한 경우 디렉터리 경로를 수정 하면 된다.

4-3-3. 실행 스크립트 설정

  • start.sh 설정

  • start.sh

#!/bin/bash

#

#

#

echo “starting provider.”

JAVA_HOME=/home/consulting/openjdk8/zulu8.40.0.25-ca-jdk8.0.222-linux_i686

CLASSPATH=.:./conf

#nohup ${JAVA_HOME}/bin/java -classpath $CLASSPATH -jar target/provider-5.0.13-ee.jar &

nohup ${JAVA_HOME}/bin/java -classpath $CLASSPATH -jar target/provider-5.0.13-ee.jar 1>/dev/null 2>&1 &

  • JAVA_HOME: java가 설치된 경로를 입력한다.

5. 설치 확인

  • Provider 를 설치 한 후 다음 순서에 따라 동작을 확인한다.

    • Provider 실행 - 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를 해당 환경에 맞도록 수정)