개발자 서비스 포털 설치

프라이빗 클라우드용 Edge v. 4.17.01

설치하기 전에 다음 사항을 확인하세요.

  • 포털을 설치하기 전에 Postgres를 설치합니다. Edge 설치의 일부로 Postgres를 설치하거나 포털에서 사용할 수 있도록 Postgres를 독립형으로 설치할 수 있습니다.
    • Postgres 독립형을 설치하는 경우 포털과 동일한 노드에 있을 수 있습니다.
    • Edge의 일부로 설치된 Postgres에 연결하고 Postgres가 마스터/대기 모드로 구성된 경우 마스터 Postgres 서버의 IP 주소를 지정합니다.
  • 지원되는 버전의 Red Hat Enterprise Linux, CentOS 또는 Oracle의 64비트 버전에서 설치를 수행합니다. 지원되는 소프트웨어 및 지원되는 버전에서 지원되는 버전 목록을 확인하세요.
  • Yum이 설치되어 있습니다.

설치 개요

노드에 Edge apigee-setup 유틸리티를 설치한 후 이 유틸리티를 사용하여 노드에 포털을 설치합니다. apigee-setup 유틸리티의 형식은 다음과 같습니다.

> sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

설치에 대한 정보가 포함된 구성 파일을 apigee-setup 유틸리티에 전달합니다. 구성 파일에 필수 정보가 누락된 경우 apigee-setup 유틸리티에서 명령줄에 입력하라는 메시지를 표시합니다.

유일한 요구사항은 'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 한다는 것입니다.

예를 들어 다음 명령어를 사용하여 포털을 설치합니다.

> sudo /opt/apigee/apigee-setup/bin/setup.sh -p dp -f myConfig

자세한 내용은 Edge apigee-setup 유틸리티 설치를 참조하세요.

구성 파일 만들기

다음은 포털 설치를 위한 자동 구성 파일의 예시입니다. 구성에 필요한 대로 이 파일을 수정합니다. setup.sh에 -f 옵션을 사용하여 이 파일을 포함합니다.

IP1=IPorDNSnameOfNode

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Specify the name of the portal database in Postgres. 
PG_NAME=devportal 

# Specify the Postgres admin credentials. 
# The portal connects to Postgres by using the 'apigee' user. 
# If you changed the Postgres password from the default of 'postgres' 
# then set PG_PWD accordingly. 
# If connecting to a Postgres node installed with Edge, 
# contact the Edge sys admin to get these credentials. 
PG_USER=apigee 
PG_PWD=postgres 

# The IP address of the Postgres server. 
# If it is installed on the same node as the portal, specify that IP. 
# If connecting to a remote Postgres server,specify its IP address. 
PG_HOST=$IP1 

# The Postgres user credentials used by the portal 
# to access the Postgres database, 
# This account is created if it does not already exist. 
DRUPAL_PG_USER=drupaladmin 
DRUPAL_PG_PASS=portalSecret 

# Specify 'postgres' as the database. 
DEFAULT_DB=postgres 

# Specify the Drupal admin account details. 
# DO NOT set DEVPORTAL_ADMIN_USERNAME=admin. 
# The installer creates this user on the portal. 
DEVPORTAL_ADMIN_FIRSTNAME=firstName 
DEVPORTAL_ADMIN_LASTNAME=lastName 
DEVPORTAL_ADMIN_USERNAME=userName 
DEVPORTAL_ADMIN_PWD=pWord 
DEVPORTAL_ADMIN_EMAIL=foo@bar.com 

# Edge connection details. 
# If omitted, you can set them in the portal UI. 
# Specify the Edge organization associated with the portal. 
EDGE_ORG=edgeOrgName 

# Specify the URL of the Edge management API. 
# For a Cloud based installation of Edge, the URL is: 
# https://api.enterprise.apigee.com/v1 
# For a Private Cloud installation, it is in the form: 
# http://<ms_ip_or_DNS>:8080/v1 or 
# https://<ms_ip_or_DNS>:TLSport/v1 
MGMT_URL=https://api.enterprise.apigee.com/v1 

# The org admin credentials for the Edge organization in the form
# of Edge emailAddress:pword. 
# The portal uses this information to connect to Edge. 
DEVADMIN_USER=orgAdmin@myCorp.com 
DEVADMIN_PWD=pWord 

# The PHP port. 
# If omitted, it defaults to 8888. 
PHP_FPM_PORT=8888 

# You must configure the SMTP server used by the portal. 
# The properties SMTPHOST and SMTPPORT are required. 
# The others are optional with a default value as notated below. 
# SMTP hostname. For example, for the Gmail server, use smtp.gmail.com. 
SMTPHOST=smtp.gmail.com 

# Use SSL for SMTP: 'y' or 'n' (default). 
SMTPSSL="n" 

# SMTP port (usually 25). 
# The value can be different based on the selected encryption protocol. 
# For example, for Gmail, the port is 465 when using SSL and 587 for TLS. 
SMTPPORT=25 

# Username used for SMTP authentication, defaults is blank. 
SMTPUSER=your@email.com 

# Password used for SMTP authentication, default is blank. 
SMTPPASSWORD=yourEmailPassword

1. Apigee Edge 연결 테스트

포털 서버의 명령 프롬프트에서 다음 cURL 명령어를 실행하여 Edge 관리 서버에 대한 연결을 테스트합니다.

> curl -u {EMAIL}:{PASSWORD} http://<ms_ip_or_DNS>:8080/v1/organizations/{ORGNAME}

또는:

> curl -u {EMAIL}:{PASSWORD} https://<ms_ip_or_DNS>:TLSPort/v1/organizations/{ORGNAME}

여기서 EMAIL 및 PASSWORD는 ORGNAME의 관리자 이메일 주소 및 비밀번호입니다.

Edge 설치에 맞는 호스트 이름과 포트 번호를 지정해야 합니다. 포트 8080은 Edge에서 사용하는 기본 포트입니다. 클라우드의 조직에 연결하는 경우 요청 URL은 https://api.enterprise.apigee.com/v1/organizations/{ORGNAME}입니다.

성공하면 이 명령어는 다음과 비슷한 응답을 반환합니다.

{
  "createdAt" : 1348689232699,
  "createdBy" : "USERNAME",
  "displayName" : "cg",
  "environments" : [ "test", "prod" ],
  "lastModifiedAt" : 1348689232699,
  "lastModifiedBy" : "foo@bar.com",
  "name" : "cg",
  "properties" : {
    "property" : [ ]
  },
  "type" : "trial"
}

2. 7.0 이전 버전의 PHP 삭제

설치 스크립트는 설치를 시작하기 전에 시스템에서 7.0 이전 버전의 PHP를 확인합니다. 7.0 이전 버전의 PHP가 있으면 다음 경고 메시지가 표시됩니다.

The following packages present on your system conflict with software we are
about to install. You will need to manually remove each one, then re-run this install script.

php
php-cli
php-common
php-gd
php-mbstring
php-mysql
php-pdo
php-pear
php-pecl-apc
php-process
php-xml

CentOS 및 RedHat Enterprise Linux (RHEL)의 경우 다음 명령어를 사용하여 PHP 패키지를 삭제합니다.

yum remove <package-name>

3. Postgres 설치

포털을 설치하려면 먼저 Postgres를 설치해야 합니다. Edge 설치의 일부로 Postgres를 설치하거나 포털에서 사용할 수 있도록 Postgres를 독립형으로 설치할 수 있습니다.

  • Edge의 일부로 설치된 Postgres에 연결하고 Postgres가 마스터/대기 모드로 구성된 경우 마스터 Postgres 서버의 IP 주소를 지정합니다.
  • Postgres 독립형을 설치하는 경우 포털과 동일한 노드에 있을 수 있습니다.

Edge 설치의 일부로 Postgres를 설치하는 방법에 대한 자세한 내용은 노드에 Edge 구성요소 설치를 참조하세요.

Postgres 독립형을 설치하려면 다음 안내를 따르세요.

  1. 인터넷 또는 비인터넷 절차를 사용하여 노드에 Edge apigee-setup 유틸리티를 설치합니다. 자세한 내용은 Edge apigee-setup 유틸리티 설치를 참조하세요.
  2. 아래와 같이 Postgres의 구성 파일을 만듭니다.

    # Postgres의 포드 및 리전입니다. 아래에 표시된 기본값을 사용합니다.
    MP_POD=gateway
    REGION=dc-1

    # Set the Postgres password. 기본값은 'postgres'입니다.
    PG_PWD=postgres
  3. 명령 프롬프트에서 설정 스크립트를 실행하여 Postgres를 설치합니다.
    > /opt/apigee/apigee-setup/bin/setup.sh -p pdb -f configFile

    '-p pdb' 옵션은 Postgres를 설치하도록 지정합니다.

    'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 합니다.

4. 포털 설치

포털을 설치하려면 다음 안내를 따르세요.

  1. 인터넷 또는 비인터넷 절차를 사용하여 노드에 Edge apigee-setup 유틸리티를 설치합니다. 자세한 내용은 Edge apigee-setup 유틸리티 설치를 참조하세요.
  2. Postgres를 독립형으로 설치했거나 Edge 설치의 일부로 설치했는지 확인합니다.
  3. 명령어 프롬프트에서 설정 스크립트를 실행합니다.
    > /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    '-p dp' 옵션은 포털을 설치하도록 지정합니다.

    'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 합니다.
  4. http://localhost:8079 또는 포털의 DNS 이름에서 포털 홈페이지로 이동합니다.
  5. 구성 파일에서 설정한 관리자 사용자 인증 정보를 사용하여 포털에 로그인합니다.

5. 업데이트 관리자 모듈이 사용 설정되어 있는지 확인합니다.

Drupal 업데이트 알림을 받으려면 Drupal 업데이트 관리자 모듈이 사용 설정되어 있는지 확인합니다. Drupal 메뉴에서 모듈을 선택하고 업데이트 관리자 모듈까지 아래로 스크롤합니다. 사용 설정되어 있지 않으면 사용 설정합니다.

사용 설정되면 보고서 > 사용 가능한 업데이트 메뉴 항목을 사용하여 사용 가능한 업데이트를 확인할 수 있습니다. 다음 Drush 명령어를 사용할 수도 있습니다.

> drush pm-info update

사이트의 루트 디렉터리에서 이 명령어를 실행해야 합니다. 기본적으로 개발자 포털은 /opt/apigee/apigee-drupal에 설치됩니다. 따라서 명령어를 실행하기 전에 먼저 디렉터리를 /opt/apigee/apigee-drupal로 변경해야 합니다. 기본 디렉터리에 포털을 설치하지 않은 경우 설치 디렉터리로 변경합니다.

Reports > Available Updates > Settings 메뉴 항목을 사용하여 업데이트가 있을 때 이메일을 보내도록 모듈을 구성하고 업데이트 확인 빈도를 설정합니다.

6. Apache Solr 검색엔진 구성(선택사항)

기본적으로 Apache Solr 검색엔진에 연결되는 Drupal 모듈은 포털을 설치할 때 사용 중지됩니다. 대부분의 포털은 내부 Drupal 검색엔진을 사용하므로 Drupal Solr 모듈이 필요하지 않습니다.

Solr를 검색엔진으로 사용하려면 서버에 Solr를 로컬로 설치한 후 포털에서 Drupal Solr 모듈을 사용 설정하고 구성해야 합니다.

Drupal Solr 모듈을 사용 설정하려면 다음 안내를 따르세요.

  1. 관리자 또는 콘텐츠 제작 권한이 있는 사용자로 포털에 로그인합니다.
  2. Drupal 메뉴에서 모듈을 선택합니다.
  3. Apache Solr Framework 모듈과 Apache Solr Search 모듈을 사용 설정합니다.
  4. 변경사항을 저장합니다.
  5. https://drupal.org/node/1999280에 설명된 대로 Solr을 구성합니다.

7. SmartDocs 설치 (선택사항)

SmartDocs를 사용하면 API 참고 리소스를 완전히 상호작용하게 하는 방식으로 개발자 서비스 포털에서 API를 문서화할 수 있습니다. 하지만 포털에서 SmartDocs를 사용하려면 먼저 Edge에 SmartDocs를 설치해야 합니다.

  • 포털을 Edge Cloud 설치에 연결하는 경우 SmartDocs가 이미 설치되어 있으므로 추가 구성이 필요하지 않습니다.
  • 포털을 프라이빗 클라우드용 Edge 설치에 연결하는 경우 Edge에 SmartDocs가 설치되어 있는지 확인해야 합니다. Edge 및 SmartDocs 설치에 대한 자세한 내용은 SmartDocs 설치를 참조하세요.

포털에서 SmartDocs도 사용 설정해야 합니다. SmartDocs에 대한 자세한 내용은 SmartDocs를 사용하여 API 문서화를 참조하세요.

8. 다음 단계

개발자 서비스 포털을 설치한 후 다음 단계는 특정 요구사항에 맞게 구성하고 맞춤설정하는 것입니다. Apigee 웹사이트의 문서에는 포털 구성, 스타일 지정, 관리에 대한 모든 정보가 포함되어 있습니다. http://apigee.com/docs/developer-services/content/what-developer-portal에서 문서에 액세스합니다.

다음 표에는 설치 후 수행하는 가장 일반적인 작업이 나와 있으며, 자세한 내용을 확인할 수 있는 Apigee 문서 링크가 포함되어 있습니다.

태스크

설명

테마 맞춤설정

테마는 색상, 스타일 지정, 기타 시각적 측면을 포함하여 포털의 모양을 정의합니다.

디자인 맞춤설정

홈페이지에는 기본 메뉴, 환영 메시지, 헤더, 바닥글, 제목이 포함됩니다.

사용자 계정 추가 및 관리

등록 프로세스는 새 개발자가 포털에 계정을 등록하는 방법을 제어합니다. 예를 들어 신규 개발자가 포털에 즉시 액세스할 수 있는지 또는 관리자가 확인해야 하는지 여부입니다. 이 프로세스는 새 계정이 생성될 때 포털 관리자에게 알림이 전송되는 방식도 제어합니다.

이메일 구성

포털은 특정 이벤트에 대한 응답으로 이메일을 보냅니다. 예를 들어 새로운 개발자가 포털에 등록할 때와 개발자가 비밀번호를 분실했을 때입니다.

사용자 계정 추가 및 관리

개발자가 포털에 액세스하기 전에 동의해야 하는 이용약관 페이지를 추가합니다.

사용자 계정 추가 및 관리

포털은 역할 기반 승인 모델을 구현합니다. 개발자가 등록하도록 허용하기 전에 포털에서 사용하는 권한과 역할을 정의합니다.

블로그 및 포럼 게시물 추가

포털에는 블로그 및 대화목록 포럼에 대한 기본 지원이 포함되어 있습니다. 블로그 및 포럼 게시물을 보고, 추가하고, 수정하고, 삭제하는 데 필요한 권한을 정의합니다.

데이터베이스 백업을 수행하고 있는지 확인합니다.

Drupal 데이터베이스를 백업하고 있는지 확인합니다. 설치마다 다르므로 데이터베이스를 백업하는 가장 좋은 방법을 결정하는 것은 사용자의 몫입니다.

참고: 백업 및 마이그레이션 모듈은 Postgres 데이터베이스와 호환되지 않습니다.

백업 수행 방법도 참조하세요.

호스트 이름 설정

DNS 서버에 호스트 이름을 설정하지 않으면 언제든지 서버의 IP 주소를 통해 사이트에 액세스할 수 있습니다. 호스트 이름을 사용하려면 서버에 DNS를 구성하면 됩니다. 기본 설정에서 다른 구성 없이 올바르게 작동합니다.

부하 분산기를 설정했거나 다른 이유로 사이트에서 잘못된 URL을 가져오는 경우 개발자 포털 settings.php 파일에서 $base_url을 설정할 수 있습니다. 이 파일은 기본적으로 /opt/apigee/apigee-drupal/sites/default 디렉터리에 있습니다.

커스텀 개발 테마 외부의 커스텀 코드로 포털 기능을 확장할 수도 있습니다. 이렇게 하려면 Drupal의 모듈 개발 주제에 설명된 대로 자체 Drupal 모듈을 만들고 모듈을 /sites/all/modules 디렉터리에 넣습니다.