安装 Edge apigee-setup 实用程序

如需在节点上安装 Edge,您需要先安装 Edge apigee-setup 实用程序。如果您所在的环境节点没有外部互联网连接,则还必须安装 Apigee 代码库的本地副本。

默认安装目录:/opt/apigee

Edge 会在 /opt/apigee 目录中安装所有文件。您无法更改此目录。不过,如果需要,您可以创建符号链接,将 /opt/apigee 映射到其他位置。如需了解详情,请参阅安装要求

前提条件:停用 SELinux

您必须先停用 SELinux 或将其设为宽容模式,然后才能安装 Edge apigee-setup 实用程序或任何 Edge 组件。如有必要,您可以在安装 Edge 后重新启用 SELinux。

  • 如需永久停用 SELinux 或将其设置为宽容模式,请执行以下操作:
    1. 在编辑器中打开 /etc/sysconfig/selinux
    2. 设置 SELINUX=disabledSELINUX=permissive
    3. 保存所做的修改。
    4. 重启节点。
    5. 如有必要,在安装 Edge 后,通过重复此过程设置 SELINUX=enabled 以重新启用 SELinux。
  • 前提条件:启用 EPEL 仓库

    您必须启用适用于企业 Linux(或 EPEL)的额外软件包才能安装或更新 Edge,或创建本地代码库。您使用的命令取决于您的 RedHat/CentOS 版本:

    • 对于 Red Hat/CentOS/Oracle 8.x:
      wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
      sudo rpm -ivh epel-release-latest-8.noarch.rpm
    • 对于 Red Hat/CentOS/Oracle 9.x:
      wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
      sudo rpm -ivh epel-release-latest-9.noarch.rpm
    • RHEL 8/Rocky 8/Oracle 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

      RHEL 9/Rocky 9/Oracle 9 的先决条件

      如果您要在运行 Red Hat Enterprise Linux (RHEL) 9、Rocky 9 或 Oracle 9 的服务器上安装 Edge,请先完成以下步骤,然后再执行安装:

      1. 启用 Extra Packages for Enterprise Linux (EPEL)
        sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
      2. 停用 Postgres 和 Nginx:
        sudo dnf module disable postgresql
        sudo dnf module disable nginx

      如需了解 PostgreSQL 和 LDAP 的安装前更改,请分别参阅 PostgreSQL 数据库安装前要求OpenLDAP 2.4 安装前更改

      在具有外部互联网连接的节点上安装 Edge apigee-setup 实用程序

      如需在具有外部互联网连接的节点上安装 Edge,请执行以下操作:

      1. 从 Apigee 获取您用于访问 Apigee 代码库的用户名和密码。 如果您已有 Apigee FTP 网站的 username:password,则可以使用这些凭据。
      2. 以 root 身份登录节点以安装 Edge RPM
      3. 停用 SELinux
      4. 启用 EPEL 代码库
      5. 如果您是在 RHEL 9/Rocky 9/Oracle 9 上进行安装,请按照 RHEL 9/Rocky 9/Oracle 9 的前提条件中的步骤操作。
      6. 将 Edge bootstrap_4.53.00.sh 文件下载到 /tmp/bootstrap_4.53.00.sh
        curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh
      7. 安装 Edge apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.53.00.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*'
      8. 使用 apigee-service 安装 apigee-setup 实用程序:
        /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
      9. 使用 apigee-setup 在节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装边缘组件

      问题排查

      在尝试在具有外部互联网连接的节点上安装时,您可能会遇到以下一个或多个错误:

      Cannot open: https://username@software.apigee.com/apigee-repo-4.53.00.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
      代理问题 您的本地配置使用出站 HTTP 代理,但您尚未将相同的配置扩展到 yum 软件包管理器。检查您的环境变量:
      echo $http_proxy
      echo $https_proxy

      对于出站 HTTP 代理,您应使用以下选项之一:

      • /etc/yum.conf 中添加 HTTP 代理配置
      • /etc/environment 中添加全局 HTTP 代理配置

      在没有外部互联网连接的节点上安装 Edge apigee-setup 实用程序

      如果您的边缘节点位于防火墙后面,或者以其他方式被禁止访问互联网,则您必须创建多个包含安装过程中所需文件的代码库或镜像。然后,所有节点都必须能够访问这些镜像。创建完成后,节点可以访问这些本地镜像以安装 Edge。

      没有互联网连接的节点的 Apigee Edge 安装过程需要访问以下本地代码库:

      创建本地 Apigee 代码库

      如需创建内部 Apigee 代码库,您需要有一个具有外部互联网访问权限的节点,才能下载 Edge RPM 和依赖项。创建内部代码库后,您可以将其移动到另一个节点,或使 Edge 节点可以访问该节点以进行安装。

      创建本地 Apigee 代码库后,您可能需要稍后使用最新的 Edge 版本文件对其进行更新。以下部分介绍了如何创建本地 Apigee 代码库以及如何对其进行更新。

      如需创建本地 Apigee 代码库,请执行以下操作

      1. 从 Apigee 获取您用于访问 Apigee 代码库的用户名和密码。 如果您已有 Apigee FTP 网站的用户名和密码,则可以使用这些凭据。
      2. 以 root 用户身份登录节点,以安装 Edge RPM。
      3. 按照上述说明停用 SELinux。
      4. 将 Edge bootstrap_4.53.00.sh 文件下载到 /tmp/bootstrap_4.53.00.sh
        curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh
      5. 安装 Edge apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.53.00.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.53.00.sh 以安装 apigee-service 实用程序:
          sudo bash /opt/apigee/data/apigee-mirror/repos/bootstrap_4.53.00.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 组件。如需了解详情,请参阅在节点上安装边缘组件

      从本地代码库在远程节点上安装 apigee-setup

      您可以通过两种方式从本地代码库安装 Edge。您可以执行以下任一项操作:

      • 创建代码库的 .tar 文件,将 .tar 文件复制到节点,然后从 .tar 文件安装 Edge。
      • 在包含本地代码库的节点上安装 Web 服务器,以便其他节点可以访问该代码库。 Apigee 提供了 Nginx Web 服务器供您使用,您也可以使用自己的 Web 服务器。

      从 .tar 文件安装

      如需通过 .tar 文件进行安装,请执行以下操作

      1. 在具有本地代码库的节点上,使用以下命令将本地代码库打包到一个名为 /opt/apigee/data/apigee-mirror/apigee-4.53.00.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. 使用 apigee-service 安装 apigee-setup 实用程序:
        /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
      7. 使用 apigee-setup 在节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装边缘组件

      使用 Nginx Web 服务器从代码库安装

      如需使用 Nginx Web 服务器从代码库安装,请执行以下操作

      1. 在代码库节点上安装 Nginx Web 服务器:
        /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。如需更改这些凭据,请设置以下环境变量:
        MIRROR_USERNAME=uName
        MIRROR_PASSWORD=pWord
      4. 在新节点上,确保在本地启用了 EPEL 代码库。
      5. 在新节点上,按照上述说明检查您的 libdb4 版本。
      6. 在远程节点上,安装 Edge apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.53.00.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        其中 uName:pWord 是代码库用户名和密码。

      7. 在远程节点上,使用 apigee-service 安装 apigee-setup 实用程序:
        /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
      8. 使用 apigee-setup 在远程节点上安装和配置 Edge 组件。 如需了解详情,请参阅在节点上安装边缘组件

      更新本地 Apigee 代码库

      如需更新代码库,您必须下载最新的 bootstrap_4.53.00.sh 文件,然后执行新的同步。

      如需更新代码库,请执行以下操作

      1. 将 Edge bootstrap_4.53.00.sh 文件下载到 /tmp/bootstrap_4.53.00.sh
        curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh
      2. 运行 Edge bootstrap_4.53.00.sh 文件:
        sudo bash/tmp/bootstrap_4.53.00.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