開發人員服務入口網站安裝

Edge for Private Cloud 4.17.01 版

安裝前,請確認下列事項:

  • 您必須先安裝 Postgres,再安裝入口網站。您可以安裝 Postgres 做為安裝 Edge 的一部分,也可以安裝 Postgres 單獨供入口網站使用。
    • 如果您安裝的是獨立的 Postgres,則可與入口網站位於同一節點。
    • 如果您要連線至 Edge 安裝的 Postgres,而 Postgres 是以主/備用模式設定,請指定主 Postgres 伺服器的 IP 位址。
  • 您在 Red Hat Enterprise Linux、CentOS 或 Oracle 的 64 位元支援版本上執行安裝作業。請參閱支援的軟體和支援的版本一文中的支援版本清單。
  • 已安裝 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 公用程式

建立設定檔

以下是安裝入口網站時使用的靜默設定檔範例。視需要編輯這個檔案。使用 -f 選項將這個檔案加入 setup.sh

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 管理伺服器的連線:

> 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 專用的主機名稱和通訊埠編號。8080 通訊埠是 Edge 使用的預設通訊埠。如要連線至雲端中的機構,要求網址為: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. 移除 PHP 7.0 以下版本

安裝指令碼會在開始安裝前,檢查系統上是否有 7.0 版之前的 PHP 版本。如果有 PHP 7.0 以下版本,系統會顯示以下警告訊息:

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,才能安裝入口網站。您可以安裝 Edge 時一併安裝 Postgres,也可以單獨安裝 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 的一部分)。
  3. 在命令提示字元中執行設定指令碼:
    > /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    「-p dp」選項會指定安裝入口網站。

    「apigee」使用者必須能存取或讀取設定檔。
  4. 前往入口網站的首頁 http://localhost:8079,或是入口網站的 DNS 名稱。
  5. 使用您在設定檔中設定的管理員憑證登入入口網站。

5. 確認已啟用更新管理員模組

如要接收 Drupal 更新通知,請確認 Drupal Update Manager 模組已啟用。在 Drupal 選單中,選取「Modules」,然後向下捲動至「Update manager」模組。如果尚未啟用,請啟用這項功能。

啟用後,您可以使用「報告」>「可用的更新」選單項目查看可用的更新。您也可以使用下列 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 製作說明文件,讓 API 說明文件完全具備互動功能。不過,如要將 SmartDoc 與入口網站搭配使用,您必須先安裝 Edge 上的 SmartDoc。

  • 如果您要將入口網站連結至 Edge Cloud 安裝作業,SmartDocs 已安裝完成,因此不需要再進行其他設定。
  • 如要將入口網站連線至 Edge for Private Cloud 安裝作業,您必須確保 SmartDoc 已安裝在 Edge 上。如要進一步瞭解如何安裝 Edge 和 SmartDoc,請參閱安裝 SmartDoc

您也必須在入口網站上啟用 SmartDoc。如要進一步瞭解 SmartDocs,請參閱「使用 SmartDocs 來記錄 API」。

8. 接下來該怎麼做?

安裝開發人員服務入口網站後,您可以根據特定需求進行設定和自訂。Apigee 網站上的說明文件包含設定、設定樣式和管理入口網站的所有資訊。如需說明文件,請前往 http://apigee.com/docs/developer-services/content/what-developer-portal

下表列出安裝後最常執行的幾項工作,並提供 Apigee 說明文件的連結,方便您進一步瞭解相關資訊:

工作

說明

自訂主題

主題會定義入口網站的外觀,包括顏色、樣式和其他視覺元素。

自訂外觀

首頁包含主選單、歡迎訊息、標題、頁眉、頁尾。

新增及管理使用者帳戶

註冊程序會控制新開發人員如何在入口網站上註冊帳戶。舉例來說,新開發人員是否可立即存取入口網站,還是必須由管理員驗證?這個程序也會控制在建立新帳戶時,要如何通知入口網站管理員。

設定電子郵件

入口網站會在發生特定事件時傳送電子郵件。舉例來說,當新的開發人員在入口網站註冊,以及開發人員遺失密碼時。

新增及管理使用者帳戶

新增條款及細則頁面,開發人員必須接受這些條款,才能存取入口網站。

新增及管理使用者帳戶

入口網站會實作依角色提供的授權模型。在允許開發人員註冊前,請先定義入口網站使用的權限和角色。

新增網誌和論壇文章

開發人員入口網站內建支援網誌和分類論壇。定義必要權限,以便查看、新增、編輯及刪除網誌和論壇文章。

確保進行資料庫備份

確認備份的是 Drupal 資料庫。請注意,由於每個安裝作業都不同,因此您必須自行決定如何備份資料庫。

注意:備份和遷移模組與 Postgres 資料庫不相容。

另請參閱「如何執行備份」。

設定主機名稱

如果您未在 DNS 伺服器中設定主機名稱,您隨時可以透過伺服器的 IP 位址存取網站。如果您想使用主機名稱,可以為伺服器設定 DNS,在基本設定中不需任何其他設定,DNS 就會正常運作。

如果您設定負載平衡器,或是因其他原因在網站上取得錯誤的網址,可以在 Dev Portal 的 settings.php 檔案中設定 $base_url,該檔案預設位於 /opt/apigee/apigee-drupal/sites/default 目錄中。

自訂開發 您可能還想使用主題以外的自訂程式碼,擴充入口網站的功能。如要這麼做,請按照 Drupal 的模組開發主題所述,建立自己的 Drupal 模組,並將模組放入 /sites/all/modules 目錄。