安裝 Edge apigee-setup 公用程式

如要在節點上安裝 Edge,請先安裝 Edge apigee-setup 公用程式。如果您所在的環境下節點沒有外部網際網路連線,您還必須安裝 Apigee 存放區的本機副本。

預設安裝目錄:/opt/apigee

邊緣會安裝 /opt/apigee 目錄中的所有檔案。您無法變更這個目錄。不過,如有需要,您可以建立符號連結,將 /opt/apigee 對應至其他位置。如需更多資訊,請參閱安裝規定

事前準備:停用 SELinux

您必須先停用 SELinux 或將其設為寬鬆模式,才能安裝 Edge apigee-setup 公用程式或任何 Edge 元件。安裝 Edge 後,您可以視需要重新啟用 SELinux。

  • 如要「暫時」將 SELinux 設為寬鬆模式,請執行下列指令:
    • 在 Linux 6.x 作業系統上
      sudo echo 0 > /selinux/enforce

      如何在安裝 Edge 後重新啟用 SELinux:

      sudo echo 1 > /selinux/enforce
    • 在 Linux 7.x 作業系統上
      sudo setenforce 0

      如何在安裝 Edge 後重新啟用 SELinux:

      sudo setenforce 1
  • 如要「永久」停用 SELinux 或將其設為寬鬆模式,請按照下列步驟操作:
    1. 在編輯器中開啟 /etc/sysconfig/selinux
    2. 設定SELINUX=disabledSELINUX=permissive
    3. 儲存修改過的內容。
    4. 重新啟動節點。
    5. 如有需要,請在 Edge 安裝後重複這個程序以設定 SELINUX=enabled,以便重新啟用 SELinux。

事前準備:啟用 EPEL 存放區

您必須啟用 Extra Packages for Enterprise Linux (或 EPEL) 來安裝或更新 Edge,或是建立本機存放區。您使用的指令取決於您的 RedHat/CentOS 版本:

  • 如果是 Red Hat Enterprise Linux (RHEL) 8.0,請參閱 RHEL 8 的必要條件

  • 如為 Red Hat/CentOS/Oracle 7.x:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    sudo rpm -ivh epel-release-latest-7.noarch.rpm
  • 如為 Red Hat/CentOS/Oracle 6.x:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
    sudo rpm -ivh epel-release-latest-6.noarch.rpm
  • 如為 AWS-2:
    sudo amazon-linux-extras install epel -y
    sudo yum-config-manager --enable epel

必備條件:檢查 RedHat 7.4 和 CentOS 7.4 上的 libdb4 程式庫版本

安裝 RedHat 7.4 和 CentOS 7.4 前,請先查看 libdb4 RPM 的版本,Edge 需要 4.8 版,以及某些版本的 RedHat 7.4 和 CentOS 7.4 版本。如果您有較新版本,請解除安裝,Edge 安裝程式隨後會安裝 4.8 版。

您可以使用下列指令來檢查版本:

rpm -qa | grep libdb4

如果您發現 libdb4 RPM 版本低於 4.8,請解除安裝。

RHEL 8 的先決條件

如要在執行 Red Hat Enterprise Linux (RHEL) 8 的伺服器上安裝 Edge,請在執行安裝前執行下列步驟:

  1. 啟用「Extra Packages for Enterprise Linux (EPEL)」
    sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
  2. 停用 Postgres 和 Nginx:
    sudo dnf module disable postgresql
    sudo dnf module disable nginx
  3. 安裝 Python 2:
    sudo dnf install -y python2

在具備外部網際網路連線的節點中安裝 Edge Apigee-setup 公用程式

如何在具備外部網際網路連線的節點上安裝 Edge:

  1. 從 Apigee 取得您用來存取 Apigee 存放區的使用者名稱和密碼。如果您已有 Apigee ftp 網站的 username:password,可以使用這些憑證。
  2. 以根權限登入節點,安裝 Edge RPM
  3. 安裝 yum-utilsyum-plugin-priorities
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities
  4. 停用 SELinux
  5. 啟用 EPEL 存放區
  6. 查看您的 libdb4 版本
  7. 如果是在 RHEL 8 上安裝,請按照 RHEL 8 的必要條件中的步驟操作。
  8. 如果是在 Oracle 7.x 上安裝,請執行下列指令:
    sudo yum-config-manager --enable ol7_optional_latest
  9. 如果您在 AWS 上安裝,請執行下列 yum-configure-manager 指令:
    yum update rh-amazon-rhui-client.noarch
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  10. 將 Edge bootstrap_4.52.02.sh 檔案下載至 /tmp/bootstrap_4.52.02.sh
    curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh
  11. 安裝 Edge apigee-service 公用程式和依附元件:
    sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

    其中 uName:pWord 是您從 Apigee 收到的使用者名稱和密碼。如果省略 pWord,系統會提示您輸入。

    根據預設,安裝程式會檢查您是否已安裝 Java 1.8。如未安裝,系統會為您安裝。使用 JAVA_FIX 選項指定處理 Java 安裝的方式。JAVA_FIX 會使用下列值:

    • I:安裝 OpenJDK 1.8 (預設)
    • C:在不安裝 Java 的情況下繼續操作
    • 問:退出。如果採用這個選項,您必須自行安裝 Java。

    安裝 apigee-service 公用程式時,系統會建立用於定義 Apigee 存放區的 /etc/yum.repos.d/apigee.repo 檔案。如要查看定義檔案,請使用下列指令:

    cat /etc/yum.repos.d/apigee.repo

    如要查看存放區內容,請使用下列指令:

    sudo yum -v repolist 'apigee*'
  12. 使用 apigee-service 安裝 apigee-setup 公用程式:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  13. 使用 apigee-setup,在節點上安裝及設定 Edge 元件。詳情請參閱「在節點上安裝 Edge 元件」。

疑難排解

嘗試在具備外部網際網路連線的節點上安裝時,可能會遇到下列一或多項錯誤:

Cannot open: https:// : @ software.apigee.com//apigee-repo-version.rpm

bootstrap.sh: Error: Repo configuration failed

error: package package_name is not installed

下表列出了這類錯誤可能的解決方法:

錯誤類型 可能的解決方法
密碼含有錯誤字元 請勿在 Apigee 密碼中使用特殊字元。
連線問題

執行下列 ncat 指令,測試網路連線:

nc -v software.apigee.com 443

畫面上應會顯示類似以下的訊息:

Connection to software.apigee.com 443 port [tcp/https] succeeded!

如果您未安裝 nc,可以執行下列 telnet 指令:

telnet software.apigee.com 443

如果指令成功,您可以使用 CTRL+C 取消開啟的連線。

如果上述任一指令失敗,就表示網路連線能力有限,或者完全沒有網路連線。請洽詢網路管理員。

憑證不正確

請確認您的使用者名稱和密碼正確無誤。

舉例來說,當您嘗試使用 Apigee 使用者名稱和密碼的下列指令時,系統是否顯示錯誤訊息:

curl -i -u username:password https://software.apigee.com/apigee-repo.rpm
Proxy 問題 本機設定使用輸出 HTTP Proxy,尚未將相同的設定延伸至 yum 套件管理員。檢查環境變數:
echo $http_proxy
echo $https_proxy

針對輸出 HTTP Proxy,您應使用下列其中一個選項:

  • /etc/yum.conf 中新增 HTTP Proxy 設定
  • 在「/etc/environment」中新增全域 HTTP Proxy 設定

在沒有外部網際網路連線的節點中安裝 Edge Apigee-setup 公用程式

如果 Edge 節點位於防火牆後面,或是以其他方式禁止存取網際網路,您就必須建立多個存放區 (或鏡像),其中包含安裝期間所需的檔案。這些鏡像必須可供所有節點存取。建立完成之後,節點就能存取這些本機鏡像來安裝 Edge。

如要在沒有網際網路連線的節點上執行 Apigee Edge 安裝程序,必須存取下列本機存放區:

建立本機 Apigee 存放區

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

建立本機 Apigee 存放區後,您之後必須使用最新的 Edge 發布檔案更新存放區。下列各節說明如何建立本機 Apigee 存放區,以及如何更新存放區。

如何建立本機 Apigee 存放區:

  1. 從 Apigee 取得您用來存取 Apigee 存放區的使用者名稱和密碼。如果您已有 Apigee ftp 網站的使用者名稱:密碼,則可使用這些憑證。
  2. 以根權限登入節點,安裝邊緣 RPM。
  3. 按照上述說明停用 SELinux。
  4. 將 Edge bootstrap_4.52.02.sh 檔案下載至 /tmp/bootstrap_4.52.02.sh
    curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh
  5. 安裝 Edge apigee-service 公用程式和依附元件:
    sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

    其中 uName:pWord 是您從 Apigee 收到的使用者名稱和密碼。如果省略 pWord,系統會提示您輸入。

  6. 在節點上安裝 apigee-mirror 公用程式:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror install
  7. 使用 apigee-mirror 公用程式將 Apigee 存放區同步到 /opt/apigee/data/apigee-mirror/repos/ 目錄。

    如要將存放區大小降到最低,請加入 --only-new-rpms 只下載最新的 RPM 檔案。

  8. (選用) 如果要將 Edge 從本機存放區安裝到代管本機存放區的相同節點上,請先執行下列指令:
    1. 從本機存放區執行 bootstrap_4.52.02.sh,安裝 apigee-service 公用程式:
      sudo bash /opt/apigee/data/apigee-mirror/repos/bootstrap_4.52.02.sh apigeeprotocol="file://" apigeerepobasepath=/opt/apigee/data/apigee-mirror/repos
    2. 使用 apigee-service 安裝 apigee-setup 公用程式:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    3. 請使用 apigee-setup 在節點上安裝及設定 Edge 元件。詳情請參閱「在節點上安裝 Edge 元件」。

從本機存放區在遠端節點中安裝 apigee-setup

您可以從本機存放區安裝 Edge 的方法有兩種。你可以採取下列其中一種做法:

  • 建立存放區的 .tar 檔案,將 .tar 檔案複製到節點,然後從 .tar 檔案安裝 Edge。
  • 在含有本機存放區的節點中安裝網路伺服器,以便其他節點存取。Apigee 提供 Nginx 網路伺服器供您使用,您也可以使用自己的網路伺服器。

從 .tar 檔案安裝

如何從 .tar 檔案安裝:

  1. 在含有本機存放區的節點上,使用下列指令將本機存放區封裝到名為 /opt/apigee/data/apigee-mirror/apigee-4.52.02.tar.gz 的單一 .tar 檔案:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
  2. 將 .tar 檔案複製到要安裝 Edge 的節點。例如,將檔案複製到新節點的 /tmp 目錄。
  3. 在新節點上,按照上述說明停用 SELinux。
  4. 請務必在新的節點上存取本機 Yum 公用程式存放區和 EPEL 存放區。
  5. 請再次確認所有外部網際網路存放區是否已停用 (由於是在沒有網際網路連線的機器中進行安裝,因此情況應如下所示):
    sudo yum repolist

    您應停用所有外部存放區,但本機 Apigee 存放區和您的內部存放區應啟用。

  6. 在新節點上,從本機存放區安裝 yum-utilsyum-plugin-priorities
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities

    您的營運團隊或貴機構中的其他群組必須設定本機存放區,您才能安裝 Yum 工具。

  7. 在新節點上,按照上述說明檢查 libdb4 版本。
  8. 如果是在 Oracle 7.x 上安裝,請執行下列指令:
    sudo yum-config-manager --enable ol7_optional_latest
  9. 如果您是在 AWS 上安裝,請執行以下 yum-configure-manager 指令:
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  10. 在新節點上,將檔案解壓縮至 /tmp 目錄:
    tar -xzf apigee-4.52.02.tar.gz

    這個指令會在包含 .tar 檔案的目錄中建立名為存放區的新目錄。例如 /tmp/repos.

  11. /tmp/repos 安裝 Edge apigee-service 公用程式和依附元件:
    sudo bash /tmp/repos/bootstrap_4.52.02.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

    請注意,您會在這個指令中加入存放區目錄的路徑。

  12. 使用 apigee-service 安裝 apigee-setup 公用程式:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  13. 請使用 apigee-setup 在節點上安裝及設定 Edge 元件。詳情請參閱「在節點上安裝 Edge 元件」。

使用 Nginx 網路伺服器從存放區安裝

如何使用 Nginx 網路伺服器從存放區安裝:

  1. 在存放區節點中安裝 Nginx 網路伺服器:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror nginxconfig
  2. 根據預設,Nginx 會設定為使用 localhost 做為伺服器名稱和通訊埠 3939。如何變更這些值:
    1. 在編輯器中開啟 /opt/apigee/customer/application/mirror.properties。如果檔案不存在,請建立該檔案。
    2. 視需要設定下列值:
      conf_apigee_mirror_listen_port=3939
      conf_apigee_mirror_server_name=localhost
    3. 重新啟動 Nginx:
      /opt/nginx/scripts/apigee-nginx restart
  3. 根據預設,存放區需要有 admin:admin 的使用者名稱:password。如要變更這些憑證,請設定下列環境變數:
    MIRROR_USERNAME=uName
    MIRROR_PASSWORD=pWord
  4. 在新節點上安裝 yum-utilsyum-plugin-priorities
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities
  5. 在新節點上,按照上述說明停用 SELinux。
  6. 在新節點上,確認本機 EPEL 存放區已啟用。
  7. 在新節點上,按照上述說明檢查 libdb4 版本。
  8. 在遠端節點上,將 Edge bootstrap_4.52.02.sh 檔案下載至 /tmp/bootstrap_4.52.02.sh
    curl http://uName:pWord@remoteRepo:3939/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh

    其中 uName:pWord 是您為存放區設定的使用者名稱和密碼,remoteRepo 則是存放區節點的 IP 位址或 DNS 名稱。

  9. 在遠端節點上,安裝 Edge apigee-service 公用程式和依附元件:
    sudo bash /tmp/bootstrap_4.52.02.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

    其中 uName:pWord 是存放區使用者名稱和密碼。

  10. 在遠端節點上,使用 apigee-service 安裝 apigee-setup 公用程式:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  11. 使用 apigee-setup 在遠端節點中安裝及設定 Edge 元件。詳情請參閱「在節點上安裝 Edge 元件」。

更新本機 Apigee 存放區

如要更新存放區,您必須下載最新的 Bootstrap_4.52.02.sh 檔案,然後執行新的同步處理作業。

如何更新存放區:

  1. 將 Edge bootstrap_4.52.02.sh 檔案下載至 /tmp/bootstrap_4.52.02.sh
    curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh
  2. 執行 Edge bootstrap_4.52.02.sh 檔案:
    sudo bash/tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

    其中 uName:pWord 是您從 Apigee 收到的使用者名稱和密碼。如果省略 pWord,系統會提示您輸入。

  3. 更新 apigee-mirror
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror update
  4. 執行同步處理作業:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
  5. 如果您想整個存放區:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync

清除本機 Apigee 存放區

清理本機存放區會刪除 /opt/apigee/data/apigee-Mirror 和 /var/tmp/yum-apigee-*。

如要清理本機存放區,請使用:

/opt/apigee/apigee-service/bin/apigee-service apigee-mirror clean

在 4.52.02 存放區中新增或更新 Edge 4.16.0x/4.17.0x

如果您必須繼續在 4.52.02 存放區中為 Edge 4.16.0x 或 4.17.0x 安裝,您可以維護包含所有版本的存放區。然後從該存放區安裝任何版本的 Edge。

如何將 4.16.0x/4.17.0x 新增到 4.52.02 存放區:

  1. 確認已安裝 4.52.02 版本的 apigee-mirror 公用程式:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror version

    結果應如下所示,其中 xyz 是版本編號:

    apigee-mirror-4.52.02-0.0.xyz
  2. 使用 apigee-mirror 公用程式將 Edge 4.16.0x/4.17.0x 下載至存放區。請留意在指令前面加上所需版本的方式:
    apigeereleasever=4.17.01 /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms

    稍後您可以使用相同的指令來指定必要的版本號碼,以更新 4.16.0x/4.17.0x 存放區。

  3. 檢查 /opt/apigee/data/apigee-mirror/repos 目錄,瞭解檔案結構:
    ls /opt/apigee/data/apigee-mirror/repos

    畫面上應會顯示下列檔案和目錄:

    apigee
    apigee-repo-1.0-6.x86_64.rpm
    bootstrap_4.16.01.sh
    bootstrap_4.16.05.sh
    bootstrap_4.17.01.sh
    bootstrap_4.17.05.sh
    bootstrap_4.17.09.sh
    bootstrap_4.18.01.sh
    bootstrap_4.18.05.sh
    bootstrap_4.19.01.sh
    thirdparty

    請注意,您如何為所有 Edge 版本建立 Bootstrap 檔案。apigee 目錄也包含每個 Edge 版本的獨立目錄。

  4. 如要將存放區封裝為 .tar 檔案,請使用下列指令:
    apigeereleasever=4.17.01 /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package

    這個指令會將所有 4.17.0x 和 4.16.0x 存放區封裝到同一個 .tar 檔案。您無法只封裝部分存放區。

如要從本機存放區或 .tar 檔案安裝 Edge,請務必使用下列任一指令執行正確的 Bootstrap 檔案。這個範例安裝 Edge 4.17.01:

  • 如果是從 .tar 檔案安裝,請從存放區執行正確的 Bootstrap 檔案:
    sudo bash /tmp/repos/bootstrap_4.17.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

    如要完成安裝程序,請按照上方「從 .tar 檔案進行安裝」一節中的步驟操作。

  • 如果是使用 Nginx webserver 安裝,請從存放區下載並執行正確的 Bootstrap 檔案:
    /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.01.sh -o /tmp/bootstrap_4.17.01.sh
    sudo bash /tmp/bootstrap_4.17.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

    如要完成安裝程序,請按照上方「使用 Nginx 網路伺服器從存放區安裝」一節中的步驟操作。