機構與環境維護

Edge for Private Cloud 4.19.01

本節說明各種管理作業,例如在 Apigee Edge 中用於私人雲端安裝的 Apigee 機構、環境和虛擬主機建立、管理及移除作業。

如要瞭解機構、環境和虛擬主機,請參閱「關於星球、地區、Pod、機構、環境和虛擬主機」一文。

檢查使用者、機構和環境的狀態

在 Edge Private Cloud 的內部安裝環境中,管理伺服器扮演著關鍵角色,負責將所有其他元件整合在一起。您可以發出下列 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 Router 連接埠,並透過擴充功能定義應用程式用來存取 API Proxy 的網址。虛擬主機也會定義 API Proxy 是使用 HTTP 通訊協定或加密 HTTPS 通訊協定來存取。

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

  • 您在 API 代理伺服器中用來參照虛擬主機的名稱
  • 虛擬主機在路由器上的通訊埠。這些連接埠通常會從 9001 開始,每新增一個虛擬主機就會增加 1。
  • 虛擬主機的主機別名。通常是虛擬主機的 DNS 名稱。

    Edge Router 會將傳入要求的主機標頭與主機別名的清單進行比較,藉此判斷要處理要求的 API Proxy。透過虛擬主機提出要求時,請指定與虛擬主機主機別名相符的網域名稱,或是指定 Router 的 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'

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

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

如果沒有 DNS 項目,您可以將主機別名設為 Router 的 IP 位址和虛擬主機的通訊埠,如 routerIP:port。例如:

192.168.1.31:9001

接著,請使用下列格式建立 curl 指令:

curl http://routerIP:9001/proxy-base-path/resource-path

這個選項是首選,因為它與 Edge UI 搭配得很好。

如果您有多個 Router,請為每個 Router 新增主機別名,指定每個 Router 的 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