Apigee Developer Services ポータル(略して「ポータル」)をインストールする前に、次のことを確認してください。
- ポータルをインストールする前に、Postgres をインストールします。Postgres は Edge の一部としてインストールできます。また、ポータルで使用する場合は、Postgres を単独でインストールできます。
- Postgres を単独でインストールする場合は、ポータルと同じノードにインストールできます。
- Edge の一部としてインストールされた Postgres に接続する場合に、Postgres がマスター/スタンバイ モードで構成されているときは、マスター Postgres サーバーの IP アドレスを指定します。
- サポートされている 64 ビット版の Red Hat Enterprise Linux、CentOS、または Oracle でインストールを実施しようとしている。サポートされているバージョンの一覧については、サポートされているソフトウェアとそのバージョンをご覧ください。
- Yum がインストールされている。
インストーラには、Apigee Developer Services ポータル(略して「ポータル」)に必要な Drupal 提供モジュールのみが含まれます。他のサポートされているモジュールのインストールについては、Drupal 7 の拡張をご覧ください。
インストールの概要
ポータルをインストールするには、次の手順を行います。以降のセクションで、それぞれの手順について詳しく説明します。
- 接続をテストする
- バージョン 7.0 より前の PHP を削除する
- Postgres をインストールする
- ポータルをインストールする
- 更新マネージャーを有効にする
- (省略可)Apache Solr を構成する
- (省略可)SmartDocs をインストールする
- (省略可)JQuery を構成する
SMTPSSL プロパティのサポート終了
以前のリリースでは、ポータルに接続された SMTP サーバーで使用されるプロトコルを設定するために SMTPSSL
プロパティを使用していました。このプロパティは非推奨になりました。
これで、SMTPSSL
プロパティではなく SMTP_PROTOCOL
プロパティを使用して、ポータルに接続された SMTP サーバーで使用されるプロトコルを設定できるようになりました。有効な値は "standard"、"ssl"、"tls" です。
ポータル構成ファイルを作成する
以下に、ポータルのインストール用のサイレント構成ファイルの例を示します。実際の構成に応じてこのファイルを適宜編集してください。このファイルを含めるには、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=PORTAL_ADMIN_PASSWORD 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=ORG_ADMIN_PASSWORD # The PHP port. # If omitted, it defaults to 8888. PHP_FPM_PORT=8888 # Optionally configure the SMTP server used by the portal. # If you do, 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 # Set the SMTP protocol as "standard", "ssl", or "tls", # where "standard" corresponds to HTTP. # Note that in previous releases, this setting was controlled by the # SMTPSSL property. That property has been deprecated. SMTP_PROTOCOL="standard" # 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=YOUR_EMAIL_PASSWORD
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
になります。
成功すると、curl
から次のようなレスポンスが返されます。
{ "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 を削除する
インストール スクリプトは、インストールを開始する前に、システムに PHP の 7.0 より前のバージョンがあるかどうかをチェックします。バージョン 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
サーバーに PHP がインストールされているかどうかがわからない場合は、次のコマンドを使用します。
rpm -qa | grep -i php
ポータルでは PHP バージョン 4.18.01 ~ 0.0.49 を使用していることに注意してください。Apigee Edge for Private Cloud のバージョン番号を照合するためのものではありません。
3. Postgres をインストールする
ポータルをインストールする前に、Postgres をインストールする必要があります。Postgres は Edge の一部としてインストールできます。また、ポータルで使用する場合は、Postgres を単独でインストールできます。
- Edge の一部としてインストールされた Postgres に接続する場合に、Postgres がマスター/スタンバイ モードで構成されているときは、マスター Postgres サーバーの IP アドレスを指定します。
- Postgres を単独でインストールする場合は、ポータルと同じノードにインストールできます。
Edge のインストールの一環として Postgres をインストールする方法については、ノードに Edge コンポーネントをインストールするをご覧ください。
Postgres を単独でインストールするには:
- インターネット接続ありまたはインターネット接続なしの手順に従って、Edge
apigee-setup
ユーティリティをノードにインストールします。詳細については、Edge apigee-setup ユーティリティのインストールをご覧ください。 - 次の例のように Postgres 構成ファイルを作成します。
# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost HOSTIP=$(hostname -i) # The pod and region of Postgres. Use the default values shown below. MP_POD=gateway REGION=dc-1 # Set the Postgres password. The default value is 'postgres'. PG_PWD=postgres
- コマンド プロンプトで、セットアップ スクリプトを実行して Postgres をインストールします。
/opt/apigee/apigee-setup/bin/setup.sh -p pdb -f postgres_config_file
-p pdb
オプションは、Postgre をインストールすることを指定します。構成ファイルは「apigee」ユーザーがアクセス可能または読み取り可能である必要があります。
4. ポータルをインストールする
ポータルをインストールする前に、3. Postgres をインストールします。
- ポータルのノードに Edge
apigee-setup
ユーティリティをインストールする - Postgres(スタンドアロン)または Edge のインストールの一環として Postgres をインストールする
ポータルをインストールするには:
- コマンド プロンプトで
setup
スクリプトを実行します。/opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile
ここで
- configFile はポータルの構成ファイルです。詳細については、ポータル構成ファイルを作成するをご覧ください。
-p dp
は、ポータルをインストールするようsetup
スクリプトに指示します。
ポータルのインストールが成功したことを確認するには:
- ポータルのホームページ(
http://localhost:8079
)またはポータルの DNS 名に移動します。 - ポータル構成ファイルで設定した管理者認証情報を使用して、ポータルにログインします。
- Drupal メニューで [Reports] > [Status Report] を選択して、ポータルの現在のステータスを確認します。
- Management Server の接続が成功したことを確認します。表示されていない場合:
- ポータルの [接続構成] ページに移動します(例:
http://portal_IP:8079/admin/config/devconnect
)。 - [Test Connection] ボタンをクリックします。接続に成功すれば、完了です。接続できない場合は、続行します。
- エンドポイントと認証の設定を確認します。
- Management API のエンドポイント URL: プロトコル(HTTP または HTTPS)、IP または DNS 名、ポート番号が正しいことを確認します(例:
http://10.10.10.10:8080/v1
)。 - エンドポイント認証ユーザー: 組織管理者のユーザー名。
- 認証されたユーザーのパスワード: 組織管理者のパスワード。
デフォルト値には、インストール プロセス中に作成したポータル構成ファイルの設定が反映されています。
これらの値は、Apigee Edge への接続テストの手順で使用した ms_IP_or_DNS、email、password の値と一致している必要があります。また、ユーザー名とパスワードは、オンボーディング構成ファイルの
USER_NAME
プロパティとUSER_PWD
プロパティの値、または組織管理者のロールを持つユーザーの認証情報と一致している必要があります。 - Management API のエンドポイント URL: プロトコル(HTTP または HTTPS)、IP または DNS 名、ポート番号が正しいことを確認します(例:
- Management Server に接続したら、ページの下部にある [Save configuration] ボタンをクリックして、変更を保存します。
- ポータルの [接続構成] ページに移動します(例:
5. Update Manager モジュールが有効になっていることを確認する
Drupal アップデートの通知を受信するには、Drupal アップデート マネージャー モジュールが有効になっていることを確認します。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 モジュールを有効にするには:
- 管理者またはコンテンツ作成権限を持つユーザーとしてポータルにログインします。
- Drupal メニューで [Modules] を選択します。
- [Apache Solr Framework] モジュールと [Apache Solr Search] モジュールを有効にします。
- 変更を保存します。
- https://drupal.org/node/1999280 の説明に従って Solr を構成します。
7. SmartDocs をインストールする(省略可)
SmartDocs では、API ドキュメントが完全にインタラクティブになるような方法で、その API をポータルにドキュメント化できます。ただし、ポータルで SmartDocs を使用するには、最初に Edge に SmartDocs をインストールする必要があります。
- ポータルを Edge Cloud に接続している場合、SmartDocs はすでにインストールされています。これ以上の構成は必要ありません。
- ポータルを Edge for Private Cloud に接続している場合は、SmartDocs を Edge にインストールする必要があります。Edge と SmartDocs のインストールの詳細については、SmartDocs のインストールをご覧ください。
また、ポータルで SmartDocs を有効にする必要があります。SmartDocs の詳細については、SmartDocs を使用した API のドキュメント化をご覧ください。
8. インターネット接続のない環境で JQuery 更新モジュールを構成する(省略可)
インターネット接続のない環境で JQuery 更新モジュールをインストールして使用する場合は、JQuery のローカル バージョンを使用するようにモジュールを構成する必要があります。インターネット以外のインストールに CDN を使用するようにモジュールを構成すると、CDN へのアクセスが試行され、ページの読み込みが遅れます。JQuery 更新モジュールの詳細については、https://www.drupal.org/project/jquery_update をご覧ください。
JQuery のローカル バージョンを使用するように JQuery 更新モジュールを構成するには:
- 管理者またはコンテンツ作成権限を持つユーザーとしてポータルにログインします。
- Drupal メニューで [Configuration] > [Development] > [JQuery Update] を選択します。
- 左側のナビゲーションで [掲載結果] をクリックします。
- [JQuery と JQuery UI の CDN] プルダウンで [なし] を選択します。
- [構成を保存] をクリックします。
9. 次のステップ
次の表に、インストール後に実行する最も一般的なタスクの一部を示します。また、Apigee ドキュメントへのリンクも含まれています。
タスク | 説明 |
---|---|
テーマによってポータルの外観(色、スタイル、その他の視覚要素)が決まります。 |
|
ホームページには、メインメニュー、ウェルカム メッセージ、ヘッダー、フッター、タイトルなどが表示されます。 |
|
登録プロセスでは、新しいデベロッパーがポータルでアカウントを登録する方法を制御します。たとえば、新しいデベロッパーがポータルにすぐにアクセスできるか、管理者が確認する必要があるか、などです。また、新しいアカウントが作成されたときにポータル管理者がどのようにして通知を受け取るかも設定できます。 |
|
ポータルは、特定のイベントに応答してメールを送信します。たとえば、新しいデベロッパーがポータルに登録したときやデベロッパーがパスワードを忘れた場合にメールが送られます。 |
|
[Terms & Conditions] ページを追加します。デベロッパーは、利用規約に同意した場合にのみ、ポータルへのアクセスを許可されます。 |
|
ポータルには、ロールベースの認可モデルが実装されています。デベロッパーに登録を許可する前に、ポータルで使用する権限とロールを定義します。 |
|
ポータルには、ブログとスレッド形式のフォーラムのサポートが組み込まれています。ブログ投稿やフォーラムの投稿を表示、追加、編集、削除するために必要な権限を定義します。 |
|
データベースのバックアップを確実に行う |
Drupal データベースをバックアップしていることを確認します。インストールはそれぞれ異なるため、データベースをバックアップする最適な方法は、ご自身で決定してください。 バックアップの方法もご覧ください。 |
ホスト名の設定 |
DNS サーバーでホスト名を設定しない場合は、いつでもサーバーの IP アドレスを使用してサイトにアクセスできます。ホスト名を使用する場合は、サーバーに DNS を構成できます。DNS は、基本的な構成で他の構成なしで正しく機能します。 なんらかの理由でロードバランサを設定した場合、またはなんらかの理由でサイトの URL が正しくない場合は、Drupal 用に
このファイルには、
|
カスタム開発 | テーマの外部でカスタムコードを作成して、ポータルの機能を拡張することもできます。これを行うには、Drupal のモジュール開発トピックの説明に従って独自の Drupal モジュールを作成し、/sites/all/modules ディレクトリに配置します。 |