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 環境に固有のホスト名とポート番号を指定します。Edge が使用するデフォルト ポートは 8080 です。クラウド上の組織に接続する場合、リクエスト 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 を削除する
インストールを開始する前に、インストール スクリプトがシステムをチェックし、バージョン 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
サーバーに 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
オプションは、Postgres をインストールすることを指定します。構成ファイルは「apigee」ユーザーがアクセス可能または読み取り可能である必要があります。
4. ポータルをインストールする
ポータルをインストールする前に、3. Postgres をインストールするで説明した次の手順を完了している必要があります。
- Edge
apigee-setup
ユーティリティをポータルのノードにインストールする - スタンドアロンまたは 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 との接続に成功していることを確認します。接続できていない場合は、次の手順に従います。
- ポータルの [Connection Configuration] ページに移動します(例:
http://portal_IP:8079/admin/config/devconnect
)。 - [Test Connection] ボタンをクリックします。接続に成功すれば完了です。接続に失敗した場合、確認を続けます。
- エンドポイントと認証の設定を確認します。
- Management API endpoint URL: プロトコル(HTTP または HTTPS)、IP または DNS 名、ポート番号が正しいことを確認します。次に例を示します。
http://10.10.10.10:8080/v1
- Endpoint authenticated user: 組織管理者のユーザー名。
- Authenticated user's password: 組織管理者のパスワード。
デフォルト値には、インストール中に作成したポータル構成ファイルの設定が反映されています。
これらの値は、1: Apigee Edge への接続テストを行うの手順で使用した ms_IP_or_DNS、email、password の値と一致している必要があります。また、ユーザー名とパスワードは、オンボーディング構成ファイルで指定された
USER_NAME
プロパティとUSER_PWD
プロパティの値、または組織管理者のロールを持つユーザーの認証情報と一致している必要があります。 - Management API endpoint URL: プロトコル(HTTP または HTTPS)、IP または DNS 名、ポート番号が正しいことを確認します。次に例を示します。
- Management Server への接続が成功したら、ページの下部にある [Save configuration] ボタンをクリックして変更を保存します。
- ポータルの [Connection Configuration] ページに移動します(例:
5. 更新マネージャー モジュールを有効にする
Drupal のアップデート通知を受け取るには、Drupal 更新マネージャー モジュールを有効にします。Drupal メニューから [Modules] を選択し、[Update manager] モジュールまで下にスクロールします。有効になっていない場合は有効にします。
更新マネージャー モジュールを有効にすると、[Reports] > [Available Updates] メニュー項目を使用して現在提供されているアップデートを確認できます。また、次の 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 ドキュメントを作成できます。ただし、ポータルで SmartDocs を使用するには、Edge に SmartDocs をインストールする必要があります。
- ポータルを Edge Cloud に接続している場合、SmartDocs はすでにインストールされています。これ以上の構成は必要ありません。
- ポータルを Edge for Private Cloud に接続している場合は、SmartDocs を Edge にインストールする必要があります。Edge と SmartDocs のインストールの詳細については、SmartDocs のインストールをご覧ください。
また、ポータルで SmartDocs を有効にする必要があります。SmartDocs の詳細については、SmartDocs を使用した API のドキュメント化をご覧ください。
8. インターネット以外の環境で JQuery 更新モジュールを構成する(省略可)
インターネット接続のない Edge 環境に JQuery 更新モジュールをインストールして使用するには、JQuery のローカル バージョンを使用するようにモジュールを構成する必要があります。インターネット以外の環境で CDN を使用するようにモジュールを構成すると、CDN へのアクセスを試みるため、ページの読み込みで遅延が発生します。JQuery 更新モジュールの詳細については、https://www.drupal.org/project/jquery_update をご覧ください。
JQuery のローカル バージョンを使用するように JQuery 更新モジュールを構成するには:
- 管理者またはコンテンツ作成権限のあるユーザーとしてポータルにログインします。
- Drupal メニューで [Configuration] > [Development] > [JQuery Update] を選択します。
- 左側のナビゲーションで [Performance] をクリックします。
- [JQuery and JQuery UI CDN] プルダウンで [None] を選択します。
- [Save configuration] をクリックします。
9. 次のステップ
次の表に、インストール後に最もよく行うタスクをまとめました。詳細情報を検索できるように、Apigee ドキュメントのリンクも示します。
タスク | 説明 |
---|---|
テーマによってポータルの外観(色、スタイル、その他の視覚要素)が決まります。 |
|
ホームページには、メインメニュー、ようこそメッセージ、ヘッダー、フッター、タイトルなどが表示されます。 |
|
新しいデベロッパーは、登録プロセスにより、ポータルのアカウントを登録します。新しいデベロッパーはポータルにすぐにアクセスできる場合も、管理者による確認が必要になる場合もあります。また、新しいアカウントが作成されたときにポータル管理者がどのようにして通知を受け取るかも設定できます。 |
|
特定のイベントが発生したときに、ポータルからメールが送信されます。たとえば、新しいデベロッパーがポータルに登録したときやデベロッパーがパスワードを忘れた場合にメールが送られます。 |
|
[Terms & Conditions] ページを追加します。デベロッパーは、利用規約に同意した場合にのみ、ポータルへのアクセスを許可されます。 |
|
ポータルは、ロールベースの認可モデルを実装しています。デベロッパーに登録を許可する前に、ポータルで使用する権限とロールを定義します。 |
|
ポータルには、ブログ、スレッド フォーラムなどのサポート機能が組み込まれています。ブログやフォーラム投稿の表示、追加、編集、削除に必要な権限を定義します。 |
|
データベースのバックアップ |
Drupal データベースをバックアップします。Edge のインストール環境はそれぞれ異なるため、データベースをバックアップする最適な方法はユーザーが判断する必要があります。 バックアップの方法もご覧ください。 |
ホスト名の設定 |
DNS サーバーに hostname が設定されていない場合は、サーバーの IP アドレスからサイトにアクセスできます。ホスト名を使用する場合は、サーバーの DNS を構成できます。これは、基本的なセットアップに対して他に何も設定しなくても正しく機能します。 ロードバランサを設定した場合、またはなんらかの理由でサイトの URL が正しく得られない場合は、次の手順に従って Drupal の
このファイルには、
|
カスタム開発 | テーマの外部でカスタムコードを作成して、ポータルの機能を拡張できます。そのためには、Drupal のモジュール開発トピックの説明に従って独自の Drupal モジュールを作成し、/sites/all/modules ディレクトリに配置します。 |