機構與環境維護

Edge for Private Cloud 4.17.09 版

本節說明各種管理作業,例如在 Apigee Edge for Private Cloud 安裝作業中建立、管理及移除 Apigee 組織、環境和虛擬主機。

如要瞭解機構、環境和虛擬主機,請參閱「關於 Planet、區域、Pod、機構、環境和虛擬主機」。

檢查使用者、組織和環境的狀態

在 Edge 私有雲的地端部署安裝中,管理伺服器扮演著重要角色,可將所有其他元件整合在一起。您可以發出下列 CURL 指令,在管理伺服器上檢查使用者、組織和部署狀態:

curl -u <adminEmail>:<admin passwd> http://localhost:8080/v1/users
curl -u <adminEmail>:<admin passwd> http://localhost:8080/v1/organizations
curl -u <adminEmail>:<admin passwd> http://localhost:8080/v1/organizations/<orgname>/deployments

系統應為所有呼叫顯示 200 HTTP 狀態。如果上述方法無效,請按照下列步驟操作:

  1. 查看 /opt/apigee/var/log/apigee/management-server 的管理伺服器記錄,瞭解是否有任何錯誤。
  2. 呼叫管理伺服器,檢查是否正常運作。
  3. 從 ELB 移除伺服器,然後重新啟動管理伺服器:
    /opt/apigee/bin/apigee-service management-server restart

使用設定檔

下列指令會將設定檔做為輸入內容。舉例來說,您可以將設定檔傳遞至 setup-org 指令,定義組織的所有屬性,包括環境和虛擬主機。

如需完整的設定檔,以及可在設定檔中設定的屬性資訊,請參閱「將機構加入平台」。

關於設定虛擬主機

Edge 上的虛擬主機會定義 API Proxy 公開的網域和 Edge 路由器通訊埠,以及應用程式用來存取 API Proxy 的網址。虛擬主機也會定義 API Proxy 是透過 HTTP 通訊協定存取,還是透過加密的 HTTPS 通訊協定存取。

使用下方顯示的指令碼和 API 呼叫建立虛擬主機。建立虛擬主機時,您必須指定下列資訊:

  • 虛擬主機的名稱,用於在 API Proxy 中參照。
  • 虛擬主機的路由器通訊埠。這些通訊埠通常從 9001 開始,每新增一個虛擬主機,通訊埠編號就會遞增一。
  • 虛擬主機的主機別名。通常是虛擬主機的 DNS 名稱。

    Edge 路由器會比較傳入要求的主機標頭與主機別名清單,藉此判斷處理要求的 API Proxy。透過虛擬主機提出要求時,請指定與虛擬主機的主機別名相符的網域名稱,或指定路由器的 IP 位址和包含主機別名的 Host 標頭。

舉例來說,如果您在通訊埠 9001 上建立虛擬主機,並將主機別名設為 myapis.apigee.net,則透過該虛擬主機向 API 發出的 cURL 要求可採用下列其中一種形式:

  • 如果您有 myapis.apigee.net 的 DNS 項目:
    curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}
  • 如果您沒有 myapis.apigee.net 的 DNS 項目:
    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'

    在第二種形式中,您會指定路由器的 IP 位址,並在主機標頭中傳遞主機別名。

    注意:curl 指令、大多數瀏覽器和許多其他公用程式會自動將 Host 標頭與網域附加為要求的一部分,因此您實際上可以使用以下形式的 curl 指令:
    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

虛擬主機沒有 DNS 項目時的選項

如果沒有 DNS 項目,可以將主機別名設為路由器的 IP 位址和虛擬主機的通訊埠,格式為 <routerIP>:port。例如:

192.168.1.31:9001

使用下列格式執行 curl 指令時:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

這個選項最適合搭配 Edge UI 使用。

如果您有多個路由器,請為每個路由器新增主機別名,並指定每個路由器的 IP 位址和虛擬主機的通訊埠。

或者,您也可以將主機別名設為某個值,例如 temp.hostalias.com。接著,您必須在每項要求中傳遞 host 標頭:

curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: temp.hostalias.com'

或者,您也可以將主機別名新增至 /etc/hosts 檔案。例如,將這一行新增至 /etc/hosts:

192.168.1.31   temp.hostalias.com

接著,您可以提出要求,就像有 DNS 項目一樣:

curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}