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

Edge for Private Cloud v. 4.17.09

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

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

インストーラには、Apigee Developer Services ポータル(略して「ポータル」)に必要な Drupal 提供のモジュールのみが含まれています。他の拡張モジュールのインストールについては、Drupal 7 の拡張をご覧ください。

インストールの概要

ノードに 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}

ここで、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

次のコマンドを使用して 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 の構成ファイルを作成します。

    # ホストの IP アドレスまたは DNS 名に解決する必要があります。127.0.0.1 または localhost には解決しないでください。
    HOSTIP=$(hostname -i)

    # 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」オプションは、Postgre をインストールすることを指定します。

    構成ファイルは、「apigee」ユーザーがアクセスまたは読み取り可能である必要があります。

4. ポータルをインストールする

ポータルをインストールするには:

  1. インターネットまたはインターネット以外の手順を使用して、ノードに Edge apigee-setup ユーティリティをインストールします。詳細については、Edge apigee-setup ユーティリティをインストールするをご覧ください。
  2. Postgres がインストールされていることを確認します。Postgres は、スタンドアロンとしてインストールすることも、Edge のインストールの一部としてインストールすることもできます。
  3. コマンド プロンプトで、設定スクリプトを実行します。
    > /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    「-p dp」オプションは、ポータルをインストールすることを指定します。

    構成ファイルは、「apigee」ユーザーがアクセスまたは読み取り可能である必要があります。
  4. http://localhost:8079 またはポータルの DNS 名でポータルのホームページに移動します。
  5. 構成ファイルで設定した管理者認証情報を使用してポータルにログインし、ポータルが正常に動作していることを確認します。
  6. Drupal メニューで [Reports] > [Status Report] を選択して、ポータルの現在のステータスが表示されることを確認します。

5. Update Manager モジュールが有効になっていることを確認する

Drupal の更新に関する通知を受け取るには、Drupal Update Manager モジュールが有効になっていることを確認してください。Drupal メニューから [Modules] を選択し、[Update manager] モジュールまで下にスクロールします。有効になっていない場合は、有効にします。

有効にすると、[レポート] > [利用可能なアップデート] メニュー項目を使用して、利用可能なアップデートを確認できます。次の Drush コマンドを使用することもできます。

> drush pm-info update

このコマンドは、サイトのルート ディレクトリから実行する必要があります。デフォルトでは、デベロッパー ポータルは /opt/apigee/apigee-drupal/wwwroot にインストールされます。コマンドを実行する前に、/opt/apigee/apigee-drupal/wwwroot に移動する必要があります。ポータルをデフォルトのディレクトリにインストールしていない場合は、インストール ディレクトリに移動します。

[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 を使用すると、Developer Services ポータルで API ドキュメントを完全な対話型のドキュメントにすることができます。ただし、ポータルで SmartDocs を使用するには、まず Edge に SmartDocs をインストールする必要があります。

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

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

8. インターネットに接続されていないインストール用に JQuery Update モジュールを構成する(省略可)

インターネットに接続されていない環境に JQuery Update モジュールをインストールして使用する場合は、ローカル バージョンの JQuery を使用するようにモジュールを構成する必要があります。インターネットに接続されていないインストールで CDN を使用するようにモジュールを構成すると、CDN へのアクセスが試行され、ページの読み込みが遅延します。JQuery Update モジュールの詳細については、https://www.drupal.org/project/jquery_update をご覧ください。

ローカル バージョンの JQuery を使用するように JQuery Update モジュールを構成するには:

  1. 管理者権限またはコンテンツ作成権限を持つユーザーとしてポータルにログインします。
  2. Drupal メニューで [Configuration] > [Development] > [JQuery Update] を選択します。
  3. 左側のナビゲーションで [パフォーマンス] をクリックします。
  4. [JQuery and JQuery UI CDN] プルダウンで [None] を選択します。
  5. [構成を保存] をクリックします。

9. 次のステップ

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

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

タスク 説明

テーマのカスタマイズ

テーマは、色、スタイル、その他の視覚的な側面など、ポータルの外観を定義します。

外観をカスタマイズする

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

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

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

メールの構成

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

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

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

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

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

ブログおよびフォーラム投稿の追加

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

データベースのバックアップが作成されていることを確認する

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

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

ポータルのバックアップもご覧ください。

ホスト名を設定する

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

ロードバランサを設定した場合や、他の理由でサイトに不適切な URL が表示される場合は、次のファイルで $base_url を設定できます。

/opt/apigee/apigee-drupal-devportal-opdk_version/source/conf/settings.php

この値は、ポータルをアップグレードすると上書きされます。

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