如何設定 Edge

Private Cloud v4.18.05 專用 Edge

如要在安裝後設定 Edge,請使用 .properties 檔案組合 和邊緣公用程式舉例來說,如要在 Edge UI 上設定 TLS/SSL, .properties 檔案來設定必要的屬性。變更內容 .properties 檔案會要求您重新啟動受影響的 Edge 元件。

Apigee 是指編輯 .properties 檔案的技術,稱為 config 來設定。基本上,包含設定的程式碼是一種鍵/值查詢工具,以 .properties 檔案。在有設定的程式碼中,這些鍵稱為 符記。因此如要設定 Edge,請在 .properties 中設定符記 檔案。

含有設定的程式碼可讓 Edge 元件設定與 產品,讓安裝團隊根據安裝拓撲覆寫這些設定 並讓客戶覆寫他們選擇的任何房源

如果您將報表視為階層結構,請依照客戶的設定方式排列設定 將設定覆寫安裝團隊的所有設定 Apigee:

  1. 客戶
  2. 安裝程式
  3. Apigee

如何使用 .properties 檔案

客戶只能修改 .properties /opt/apigee/customer/application 目錄內。每個元件都有專屬的 .properties 檔案。例如:router.propertiesmanagement-server.properties

舉例來說,如要建立 .properties 檔案:

  1. 以任何使用者身分在編輯器中建立檔案。
  2. 使用 chown 將檔案的擁有者變更為「apigee:apigee」若你變更了 透過「 Apigee」執行 Edge 服務的使用者使用者 正在執行 Edge 服務

如要設定元件的屬性,請編輯對應的 .properties 檔案來設定 ,然後重新啟動元件:

/opt/apigee/apigee-service/bin/apigee-service component restart

例如,編輯 router.properties 後,重新啟動路由器:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

升級 Edge 後,.properties 已讀取 /opt/apigee/customer/application 目錄。也就是說 會保留您設定元件的任何屬性。

.properties 檔案的位置

Edge 的 .properties 檔案有三個頂層目錄 元件:安裝、擁有者和客戶預設位置如下所示 資料表:

擁有者 預設權杖根目錄
元件
/opt/apigee/component_name/conf

component_name 用於識別元件。可能的值 包括:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL 資料庫)
  • apigee-qpidd (魁北克)
  • apigee-sso (邊緣單一登入)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (管理伺服器)
  • edge-management-ui (新版 Edge UI)
  • edge-message-processor (訊息處理器)
  • edge-postgres-server (Postgres 伺服器)
  • edge-qpid-server (快速伺服器)
  • edge-router (邊緣路由器)
  • edge-ui (傳統版 UI)
安裝
/opt/apigee/token
客戶
/opt/apigee/customer

判斷符記目前的值

.properties 檔案中為元件設定權杖之前, 您可以先使用以下指令判斷目前的值:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

其中 component_name 是元件名稱,而 token 是要檢查的權杖。

這個指令會搜尋 .properties 檔案階層,以判斷 憑證目前的值

舉例來說,如要檢查 conf_http_HTTPRequest.line.limit 目前的值, 符記:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

輸出內容應如下所示:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

在 .properties 檔案中設定符記

如要覆寫權杖的值:

  1. 編輯元件的 .properties 檔案,設定符記值。如果檔案 並加以建立。
  2. 重新啟動元件。
  3. 請檢查權杖值。

舉例來說,如要設定 Edge Router 的要求行限制:

  1. 編輯 /opt/apigee/customer/application/router.properties 檔案來設定 conf_http_HTTPRequest.line.limit 權杖:
    conf_http_HTTPRequest.line.limit=8k
  2. 重新啟動 Edge 路由器:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. 檢查權杖的值:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

設定可使用多個值的符記

部分符記會取得以半形逗號分隔的值清單。舉例來說, conf_security_rbac.restricted.resources 權杖採用受限的 URI 清單,以便 只有 sysadmin 才能呼叫這些結果如要查看 conf_security_rbac.restricted.resources 的值,請按照下列步驟操作:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

輸出結果會包含以下內容:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

若要設定會使用值清單的符記,請將任何新值附加至 .properties 檔案中的符記。 因此,如要將 URI /myuri/* 新增至 conf_security_rbac.restricted.resources, 按照所示方式編輯 /opt/apigee/customer/application/management-server.properties 檔案 如下:

conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

尋找權杖

在大部分的情況下,本指南會指出需要設定的符記。不過,如果您需要 如要判斷用來覆寫屬性的符記,請在grep 元件的 source 資料夾。

舉例來說,如果您知道在先前版本的 Edge 中 session.maxAge 屬性,並想知道用來設定的符記值,接著 針對 /opt/apigee/edge-ui/source 目錄中的屬性 grep

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

您應該會看到以下格式的結果:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

{T}{/T} 標記之間的字串是指您在 .properties 檔案。

設定目前已註解的權杖

有些權杖在 Edge 設定檔中已加上註解。如果您嘗試設定的符記 註解排除,系統會忽略這項設定。

如要設定註解排除的符記,請採用特殊語法,格式如下:

conf/file.extension+propertyName=propertyValue

舉例來說,您想在「訊息」中設定名為 HTTPClient.proxy.host 的屬性 處理器。接著,為屬性 grep 以決定其符記:

cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *

grep 指令會以包含符記值的形式傳回結果。通知 屬性名稱的註解方式,如 # 前置字元 屬性名稱:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

如要設定屬性,請編輯 /opt/apigee/customer/application/message-processor.properties 將屬性設為:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

請注意,屬性名稱的前置字串是 conf/http.properties+ (位置) 和包含屬性的設定檔名稱,後面加上「+」。

重新啟動訊息處理器後,請檢查檔案 /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

檔案結尾會顯示屬性集,格式如下:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com