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

Edge for Private Cloud v. 4.17.01

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

  • ポータルをインストールする前に Postgres をインストールしている。Postgres は Edge と一緒にインストールできます。また、ポータルで使用する場合は、Postgres をスタンドアロンでインストールできます。
    • 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}

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

ご使用の Edge 環境に固有のホスト名とポート番号を指定します。Edge が使用するデフォルト ポートは 8080 です。クラウド上の組織に接続する場合、リクエスト 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 と同時にインストールできます。また、ポータルで使用する Postgres を単独でインストールすることもできます。

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

  • ポータルを 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 ドキュメントのリンクも示します。

タスク

説明

テーマのカスタマイズ

テーマによってポータルの外観(色、スタイル、その他の視覚要素)が決まります。

外観をカスタマイズする

ホームページには、メインメニュー、ようこそメッセージ、ヘッダー、フッター、タイトルなどが表示されます。

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

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

メールの構成

特定のイベントが発生すると、ポータルからメールが送信されます。たとえば、新しいデベロッパーがポータルに登録したときやデベロッパーがパスワードを忘れた場合にメールが送られます。

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

[Terms & Conditions] ページを追加します。デベロッパーは、利用規約に同意した場合にのみ、ポータルへのアクセスを許可されます。

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

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

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

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

データベースのバックアップを行ってください。

Drupal データベースをバックアップします。Edge のインストール環境はそれぞれ異なるため、データベースをバックアップする最適な方法はユーザーが判断する必要があります。

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

バックアップの方法もご覧ください。

ホスト名を設定する

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

ロードバランサを設定した場合、またはなんらかの理由でサイトの URL が正しく得られない場合は、Dev Portal の settings.php ファイルで $base_url を設定できます。このファイルはデフォルトで /opt/apigee/apigee-drupal/sites/default ディレクトリにあります。

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