Edge 安裝作業總覽

私有雲的邊緣 4.17.05 版

一般的 Edge 安裝作業是由分散在多個節點的 Edge 元件組成。 在節點上安裝 Edge 後,即可在節點中安裝及設定一或多個 Edge 元件。

安裝程序

在節點上安裝 Edge 分為多個步驟:

  • 在節點上停用 SELinux,或將其設為寬鬆模式。詳情請參閱「安裝 Edge apigee-setup 公用程式」。
  • 決定是否要啟用 Cassandra 驗證。
  • 決定是否要為 Postgres 設定主要執行個體待命複製。
  • 從建議的拓撲清單中選取您的 Edge 設定。例如在 13 個節點上安裝 Edge 以進行測試,也可以將 Edge 安裝在 13 個節點上。詳情請參閱安裝拓撲
  • 在所選拓撲中的每個節點上,安裝 Edge apigee-setup 公用程式:
    • 將 Edge bootstrap_4.17.05.sh 檔案下載至 /tmp/bootstrap_4.17.05.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 存取權,這表示使用者擁有 sudo 存取權,可與 root 執行相同的作業。

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

  • apigee-service 公用程式:
    • apigee-service 指令:安裝、解除安裝、更新
    • apigee-all 指令:安裝、解除安裝、更新
  • 用來安裝 Edge 元件的 setup.sh 指令碼 (除非您已使用「apigee-service install」安裝必要的 RPM)。然後再要求根層級或完整的 sudo 存取權)。
  • 用於更新 Edge 元件的 update.sh 指令碼

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

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

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

建立對「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 服務的使用者。

區隔根使用者和非超級使用者之間的 Edge 安裝工作

雖然以 Root 權限或具備完整 sudo 存取權的使用者執行整個 Edge 安裝程序是最簡單的方式,但實際上並非如此。不過,您可以將程序分離為具備「apigee」使用者完整 sudo 存取權的使用者執行的工作。

  1. 由根層級執行的工作:
    1. 下載並執行 bootstrap_4.17.05.sh 檔案:
      > curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
      > sudo bash /tmp/bootstrap_4.17.0. bootstrap_4.17.05.sh


      uName
    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 安裝

      要在節點上安裝的邊緣每千次觀看收益取決於拓撲。可用元件清單包括: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-postgres-server、edge-qpid。
  2. 超級使用者在節點中安裝 Edge RPM 後,具備「apigee」權限的使用者即可完成設定程序:
    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

安裝設定檔的位置

您必須將設定檔傳送至含有 Edge 安裝相關資訊的 apigee-setup 公用程式。如要採用無訊息安裝,唯一的要求是「apigee」使用者必須存取或讀取設定檔。例如,將檔案放在節點的 /usr/local/var/usr/local/share 目錄,並設為「apigee:apigee」。

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

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

處理安裝失敗

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

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

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

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

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

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

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

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

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

不過,使用本機存放區還有一個優點,即使節點具有外部網際網路連線也不成問題。從 Apigee 公開存放區安裝 Edge 時,一律會安裝最新的 Edge RPM。因此,如要下載及儲存特定 Edge 版本的 Edge RPM,請先為該 Edge 版本建立本機存放區。接著,您可以使用該本機存放區為任何邊緣版本執行安裝作業。

舉例來說,您可以先使用本機存放區安裝 Edge 開發環境。接著,當您準備好移至實際執行環境時,請再次安裝本機存放區中的 Edge。透過本機存放區安裝,您就能確保開發與實際工作環境相符。

鏡像存放區非常具有彈性。舉例來說,您可以從最新的 Edge RPM 或特定 Edge 版本建立鏡像存放區。建立存放區後,您也可以更新存放區,以便新增不同 Edge 版本的 RPM。詳情請參閱「安裝 Edge apigee-setup 公用程式」。

解決 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 目錄中的所有檔案。

在本指南和「邊緣作業指南」中,根目錄安裝目錄註明為:

/opt/apigee

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

記錄檔

apigee-setupsetup.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 Router 使用 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

克皮德

/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

克皮德

/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.propertiesmanagement-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

例如,如要重新啟動邊緣路由器:

/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

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

  • 啟動、停止、重新啟動
  • 狀態、版本
  • 備份、還原
  • 安裝、解除安裝