Edge 安裝作業總覽

Edge for Private Cloud 4.18.01 版

一般 Edge 安裝作業包含分散在多個節點的 Edge 元件。在節點上安裝 Edge 後,您可以在節點上安裝及設定一或多個 Edge 元件。

安裝程序

在節點上安裝 Edge 的程序包含多個步驟:

  • 在節點上停用 SELinux,或將其設為寬鬆模式。詳情請參閱「安裝 Edge apigee-setup 公用程式」。
  • 決定是否要啟用 Cassandra 驗證。
  • 決定是否要為 Postgres 設定主從式複製。
  • 從建議的拓撲清單中選取 Edge 設定。舉例來說,您可以將 Edge 安裝在單一節點上進行測試,或安裝在 13 個節點上用於正式環境。詳情請參閱「安裝拓撲」。
  • 在所選拓撲中的每個節點上,安裝 Edge apigee-setup 公用程式:
    • 將 Edge bootstrap_4.18.01.sh 檔案下載至 /tmp/bootstrap_4.18.01.sh。
    • 安裝 Edge apigee-service 公用程式和依附元件。
    • 安裝 Edge apigee-setup 公用程式和依附元件。

      詳情請參閱「安裝 Edge apigee-setup 公用程式」。
  • 使用 apigee-setup 公用程式,根據所選拓撲在每個節點上安裝一或多個 Edge 元件。
    請參閱「在節點上安裝 Edge 元件」。
  • 在管理伺服器節點上,使用 apigee-setup 公用程式安裝 apigee-provision,這是用於建立及管理 Edge 組織的公用程式。
    詳情請參閱「將組織加入平台」。

誰可以執行安裝作業

Apigee Edge 發行版本檔案會以一組 RPM 和依附元件的形式安裝。如要安裝、解除安裝及更新 Edge RPM,必須由超級使用者或具備完整 sudo 存取權的使用者執行指令。如果使用者具備完整 sudo 存取權,代表他們可以執行與 root 相同的作業。

如要執行下列指令或指令碼,使用者必須是 root,或具備完整 sudo 存取權:

  • apigee-service 公用程式:
    • apigee-service 指令:install、uninstall、update。
    • apigee-all 指令:install、uninstall、update。
  • setup.sh 指令碼安裝 Edge 元件 (除非您已使用「apigee-service install」安裝必要的 RPM。如果不需要,則為 root 或完整 sudo 存取權)。
  • update.sh 指令碼:用於更新 Edge 元件

此外,Edge 安裝程式會在系統中建立名為「apigee」的新使用者。許多 Edge 指令會叫用 sudo,以「apigee」使用者身分執行。

如要執行上述指令以外的所有其他指令,使用者必須具備「apigee」使用者的完整 sudo 存取權。這些指令包括:

  • apigee-service 公用程式指令,包括:
    • apigee-service 指令,例如 start、stop、restart、configure。
    • apigee-all 指令,例如 start、stop、restart、configure。

建立對「apigee」使用者具備完整 sudo 存取權的使用者

如要設定使用者,讓他們具備「apigee」使用者的完整 sudo 存取權,請使用「visudo」指令編輯 sudoers 檔案,並新增:

installUser        ALL=(apigee)      NOPASSWD: ALL

其中 installUser 是使用 Edge 的使用者名稱。

設定設定檔的權限

Edge 指令使用的任何檔案或資源都必須可供「apigee」使用者存取。包括 Edge 授權檔案和任何設定檔。

建立設定檔時,您可以將擁有者變更為「apigee:apigee」,確保 Edge 指令可以存取該檔案:

  1. 以任何使用者身分在編輯器中建立檔案。
  2. 將檔案擁有者變更為「apigee:apigee」,或者如果您已將執行 Edge 服務的使用者從「apigee」使用者變更,請將檔案變更為執行 Edge 服務的使用者。

區分超級使用者和非超級使用者的 Edge 安裝工作

雖然以 root 身分或由具備完整 sudo 存取權的使用者執行整個 Edge 安裝程序最簡單,但並非總是可行。您可以改為將程序分成由 root 執行的工作,以及由具備「apigee」使用者完整 sudo 存取權的使用者執行的工作。

  1. root 執行的工作:
    1. 下載並執行 bootstrap_4.18.01.sh 檔案:
      > curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
      > sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord


      這個步驟會安裝 apigee-service 公用程式,並建立「apigee」使用者。
    2. 按照上述說明,設定使用者具備「apigee」使用者的完整 sudo 存取權。
    3. 安裝 apigee-setup 公用程式:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    4. 使用 apigee-setup 公用程式在節點上安裝 Edge RPM:
      > /opt/apigee/apigee-service/bin/apigee-service compName install

      您在節點上安裝的 Edge RPM 取決於拓撲。可用的元件清單包括:apigee-provision、apigee-validate、apigee-zookeeper、apigee-cassandra、apigee-openldap、edge-ui、edge-management-server、edge-ui、edge-router、edge-message-processor、apigee-postgresql、apigee-qpidd、edge-postgres-server、edge-qpid-server。
  2. 超級使用者在節點上安裝 Edge RPM 後,對「apigee」使用者具備完整 sudo 存取權的使用者會完成設定程序:
    1. 使用 setup.sh 公用程式,完成節點上的 Edge 元件設定。指令的形式取決於您在節點上安裝的元件。如需完整清單,請參閱「在節點上安裝 Edge 元件」。
      舉例來說,如要完成 ZooKeeper 和 Cassandra 的安裝作業,請使用下列指令:
      > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile

      ?其中 configFile 是 Edge 設定檔。

      或者,如要執行多合一安裝,請使用下列指令:
      > /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile

安裝設定檔的位置

您必須將設定檔傳遞至 apigee-setup 公用程式,其中包含 Edge 安裝作業的相關資訊。無訊息安裝的唯一要求是「apigee」使用者必須能存取或讀取設定檔。舉例來說,將檔案放在節點上的 /usr/local/var 或 /usr/local/share 目錄中,並將其 chown 設為「apigee:apigee」。

除了 Edge 系統管理員的密碼外,設定檔中的所有資訊都是必要資訊。如果省略密碼,apigee-setup 公用程式會提示您在指令列輸入密碼。

詳情請參閱「在節點上安裝 Edge 元件」。

處理安裝失敗

如果 Edge 元件安裝失敗,您可以嘗試修正問題,然後再次執行安裝程式。如果偵測到失敗,或您想在安裝後變更或更新元件,安裝程式會重複執行。

網際網路或非網際網路安裝

如要在節點上安裝 Edge,節點必須能夠存取 Apigee 存放區:

  • 具有外部網際網路連線的節點

    具有外部網際網路連線的節點會存取 Apigee 存放區,安裝 Edge RPM 和依附元件。
  • 沒有外部網際網路連線的節點

    沒有外部網際網路連線的節點,可以存取您在內部設定的 Apigee 存放區鏡像版本。這個存放區包含所有 Edge RPM,但您必須確保內部網路上的存放區提供所有其他依附元件。

    注意:Apigee 不會在公開存放區中託管所有第三方依附元件。您必須從可公開存取的存放區下載並安裝這些依附元件。

    如要建立內部 Apigee 存放區,您必須使用具備外部網際網路存取權的節點,才能下載 Edge RPM 和依附元件。建立內部存放區後,您可以將其移至其他節點,或讓 Edge 節點可存取該節點以進行安裝。

使用本機 Edge 存放區維護 Edge 版本

使用本機或鏡像存放區的其中一個原因,是在沒有外部網際網路連線的節點上安裝 Edge,如上一節所述。

解決 RPM 安裝依附元件

Apigee Edge 發布檔案會以一組 RPM 檔案的形式安裝,每個檔案都有自己的安裝依附元件鏈。其中許多依附元件是由 Apigee 無法控制的第三方元件定義,且隨時可能變更。因此,說明文件不會列出各項依附元件的明確版本號碼。

如果您在具備網路連線能力的機器上執行安裝作業,節點可以下載必要的 RPM 和依附元件。不過,如果您是從無法存取網際網路的節點進行安裝,通常會設定包含所有必要依附元件的內部存放區。如要確保本機存放區包含所有依附元件,唯一的方法是嘗試安裝、找出缺少的依附元件,然後將這些元件複製到本機存放區,直到安裝成功為止。

常見 Yum 指令

Linux 適用的 Edge 安裝工具會使用 Yum 安裝及更新元件。您可能需要使用多個 Yum 指令,才能管理節點上的安裝作業。

  • 清除所有 Yum 快取:
    sudo yum clean all
  • 更新 Edge 元件:
    sudo yum update componentName
    例如:
    sudo yum update apigee-setup
    sudo yum update edge-management-server

檔案系統結構

Edge 會將所有檔案安裝在 /opt/apigee 目錄中。

在本指南和《Edge 作業指南》中,根安裝目錄會標示為:

/opt/apigee

安裝作業會使用下列檔案系統結構,部署 Apigee Edge for Private Cloud。

記錄檔

apigee-setup 和 setup.sh 指令碼的記錄檔會寫入 /tmp/setup-root.log。

每個元件的記錄檔都位於 /opt/apigee/var/log 目錄中。每個元件都有自己的子目錄。舉例來說,管理伺服器的記錄檔位於以下目錄:

/opt/apigee/var/log/edge-management-server

下表列出記錄檔的位置:

元件

位置

管理伺服器

/opt/apigee/var/log/edge-management-server

路由器

/opt/apigee/var/log/edge-router

Edge 路由器是使用 Nginx 實作。如需其他記錄,請參閱:

/opt/apigee/var/log/edge-router/nginx

/opt/nginx/logs

訊息處理器

/opt/apigee/var/log/edge-message-processor

Apigee Qpid 伺服器

/opt/apigee/var/log/edge-qpid-server

Apigee Postgres 伺服器

/opt/apigee/var/log/edge-postgres-server

Edge UI

/opt/apigee/var/log/edge-ui

ZooKeeper

/opt/apigee/var/log/apigee-zookeeper

OpenLDAP

/opt/apigee/var/log/apigee-openldap

Cassandra

/opt/apigee/var/log/apigee-cassandra

Qpidd

/opt/apigee/var/log/apigee-qpidd

PostgreSQL 資料庫

/opt/apigee/var/log/apigee-postgresql

資料

元件

位置

管理伺服器

/opt/apigee/data/edge-management-server

路由器

/opt/apigee/data/edge-router

訊息處理器

/opt/apigee/data/edge-message-processor

Apigee Qpid 代理程式

/opt/apigee/data/edge-qpid-server

Apigee Postgres 代理

/opt/apigee/data/edge-postgres-server

ZooKeeper

/opt/apigee/data/apigee-zookeeper

OpenLDAP

/opt/apigee/data/apigee-openldap

Cassandra

/opt/apigee/data/apigee-cassandra/data

Qpidd

/opt/apigee/data/apigee-qpid/data

PostgreSQL 資料庫

/opt/apigee/data/apigee-postgres/pgdata

安裝後工作

安裝完成後,您可以對 Edge 元件執行其他動作。

安裝後設定 Edge 元件

如要在安裝後設定 Edge,請搭配使用 .properties 檔案和 Edge 公用程式。舉例來說,如要在 Edge UI 上設定 TLS/SSL,請編輯 .properties 檔案,設定必要屬性。變更 .properties 檔案後,您必須重新啟動受影響的 Edge 元件。

.properties 檔案位於 /opt/apigee/customer/application 目錄中。每個元件在該目錄中都有自己的 .properties 檔案。例如 router.properties 和 management-server.properties。

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

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

例如:

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

更新 Edge 時,系統會讀取 /opt/apigee/customer/application 目錄中的 .properties 檔案。也就是說,更新會保留您在元件上設定的所有屬性。

如要進一步瞭解 Edge 設定,請參閱「如何設定 Edge」。

在 Edge 元件上叫用指令

Edge 會在 /opt/apigee/apigee-service/bin 下安裝管理公用程式,您可以使用這些公用程式管理 Edge 安裝作業。舉例來說,您可以使用 apigee-all 公用程式啟動、停止、重新啟動或判斷節點上所有 Edge 元件的狀態:

/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version

使用 apigee-service 公用程式控制及設定個別元件。apigee-service 公用程式的格式如下:

/opt/apigee/apigee-service/bin/apigee-service component action

舉例來說,如要重新啟動 Edge Router,請按照下列步驟操作:

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

您可以檢查 /opt/apigee 目錄,判斷節點上安裝的元件清單。該目錄包含節點上安裝的每個 Edge 元件的子目錄。每個子目錄的前置字元如下:

  • apigee:Edge 使用的第三方元件。例如 apigee-cassandra。
  • edge:Apigee 的 Edge 元件。例如 edge-management-server。
  • edge-mint:營利元件。例如 edge-mint-management-server。
  • baas:API BaaS 元件。例如 baas-usergrid。

元件的完整動作清單取決於元件本身,但所有元件都支援下列動作:

  • start、stop、restart
  • status, version
  • 備份、還原
  • 安裝、解除安裝