Developer Services ポータルのインストール

Edge for Private Cloud バージョン 4.17.01

インストールする前に、次の点を確認してください。

  • ポータルをインストールする前に Postgres をインストールします。Postgres は、Edge のインストールの一環としてインストールすることも、ポータルで使用するためにスタンドアロンでインストールすることもできます。
    • Postgres をスタンドアロンでインストールする場合は、ポータルと同じノードにインストールできます。
    • Edge の一部としてインストールされた Postgres に接続し、Postgres がマスター/スタンバイ モードで構成されている場合は、マスター Postgres サーバーの IP アドレスを指定します。
  • サポートされている 64 ビット版の Red Hat Enterprise Linux、CentOS、または Oracle でインストールを行っている。サポート対象バージョンの一覧については、サポート対象のソフトウェアとサポート対象のバージョンをご覧ください。
  • 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 Management Server への接続をテストします。

> 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}

ここで、EMAILPASSWORDORGNAME の管理者のメールアドレスとパスワードです。

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 がインストールされている必要があります。Postgres は、Edge のインストールの一環としてインストールすることも、ポータルで使用するためにスタンドアロンでインストールすることもできます。

  • Edge の一部としてインストールされた Postgres に接続し、Postgres がマスター/スタンバイ モードで構成されている場合は、マスター Postgres サーバーの IP アドレスを指定します。
  • Postgres をスタンドアロンでインストールする場合は、ポータルと同じノードにインストールできます。

Edge のインストールの一環として Postgres をインストールする方法については、Edge コンポーネントをノードにインストールするをご覧ください。

Postgres をスタンドアロンでインストールするには:

  1. インターネットまたはインターネット以外の方法で、Edge apigee-setup ユーティリティをノードにインストールします。詳細については、Edge apigee-setup ユーティリティのインストールをご覧ください。
  2. 以下のように Postgres の構成ファイルを作成します。

    # Postgres の Pod とリージョン。以下に示すデフォルト値を使用します。
    MP_POD=gateway
    REGION=dc-1

    # Postgres のパスワードを設定します。デフォルト値は「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. スタンドアロンで、または Edge のインストールの一環として Postgres がインストールされていることを確認します。
  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 のメニューで [Modules] を選択し、[Updatemanager] モジュールまでスクロールします。有効になっていない場合は、有効にします。

有効にした後は、[Reports] > [Available Updates] メニュー項目を使用して、利用可能なアップデートを確認できます。次の 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 のメニューで [Modules] を選択します。
  3. [Apache Solr Framework] モジュールと [Apache Solr Search] モジュールを有効にします。
  4. 変更を保存します。
  5. https://drupal.org/node/1999280 に記載されているように Solr を構成します。

7. SmartDocs のインストール(オプション)

SmartDocs を使用すると、完全な対話型の API ドキュメントを Developer Services ポータルに作成できます。ただし、ポータルで SmartDocs を使用するには、最初に SmartDocs を Edge にインストールする必要があります。

  • ポータルを Edge Cloud に接続する場合、SmartDocs はすでにインストールされているため、それ以上の構成は必要ありません。
  • ポータルを Edge for Private Cloud に接続する場合は、SmartDocs が Edge にインストールされていることを確認する必要があります。Edge と SmartDocs のインストールの詳細については、SmartDocs のインストールをご覧ください。

また、ポータルで SmartDocs を有効にする必要があります。SmartDocs の詳細については、SmartDocs を使用した API のドキュメント化をご覧ください。

8. 次のステップ

Developer Services ポータルをインストールしたら、次は特定の要件に合わせてポータルを構成してカスタマイズします。ポータルの構成、スタイル設定、管理に関するすべての情報は、Apigee ウェブサイトのドキュメントに記載されています。http://apigee.com/docs/developer-services/content/what-developer-portal でドキュメントにアクセスします。

次の表に、インストール後に行う最も一般的なタスクの一部を示します。また、詳細を確認できる Apigee ドキュメントのリンクも示します。

タスク

Description

テーマのカスタマイズ

テーマにより、色、スタイル、その他の視覚的要素など、ポータルの外観が定義されます。

外観のカスタマイズ

ホームページには、メインメニュー、ウェルカム メッセージ、ヘッダー、フッター、タイトルがあります。

ユーザー アカウントの追加と管理

登録プロセスでは、新しいデベロッパーがポータルにアカウントを登録する方法を制御します。たとえば、新しいデベロッパーがポータルにすぐにアクセスできるか、または管理者による確認が必要ですか。このプロセスは、新しいアカウントが作成されたときにポータル管理者に通知する方法も制御します。

メールの構成

ポータルは、特定のイベントに応じてメールを送信します。たとえば、新しいデベロッパーがポータルに登録したり、デベロッパーがパスワードを紛失したりした場合などです。

ユーザー アカウントの追加と管理

デベロッパーがポータルへのアクセスを許可される前に同意する必要がある利用規約ページを追加します。

ユーザー アカウントの追加と管理

ポータルには、ロールベースの認可モデルが実装されています。デベロッパーの登録を許可する前に、ポータルで使用する権限とロールを定義します。

ブログとフォーラムの投稿を追加する

ポータルには、ブログとスレッド形式のフォーラムのサポートが組み込まれています。ブログとフォーラムの投稿を表示、追加、編集、削除するために必要な権限を定義します。

データベースのバックアップを確実に行う

Drupal データベースがバックアップされていることを確認します。インストールはそれぞれ異なるため、データベースの最適なバックアップ方法はお客様が判断する必要があります。

: Backup and Migrate モジュールは、Postgres データベースと互換性がありません。

バックアップを行う方法もご覧ください。

ホスト名を設定する

DNS サーバーにホスト名を設定しない場合は、サーバーの IP アドレスでいつでもサイトにアクセスできます。ホスト名を使用する場合は、サーバーの DNS を構成できます。これは、基本設定に他の構成がなくても正常に動作するはずです。

ロードバランサを設定した場合や、その他の理由でサイトで誤った URL が返される場合は、デベロッパー ポータルの settings.php ファイルに $base_url を設定できます。このファイルは、デフォルトでは /opt/apigee/apigee-drupal/sites/default ディレクトリにあります。

カスタム開発 テーマの外部でカスタムコードを使用して、ポータルの機能を拡張することもできます。そのためには、Drupal のモジュール開発トピックの説明に従って独自の Drupal モジュールを作成し、/sites/all/modules ディレクトリに配置します。