Edge for Private Cloud v4.18.01
如需在节点上安装 Edge,您首先需要安装 Edge apigee-setup 实用程序。如果您所处的环境中节点没有外部互联网连接,则还必须安装 Apigee 代码库的本地副本。
默认安装目录:/opt/apigee
Edge 会将所有文件安装在 /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
- 在 Linux 6.x 操作系统上:
- 如需永久停用 SELinux 或将其设置为宽容模式,请执行以下操作:
- 在编辑器中打开 /etc/sysconfig/selinux。
- 设置 SELINUX=disabled 或 SELINUX=permissive
- 保存修改内容。
- 重启节点。
- 如有必要,请在 Edge 安装后重新启用 SELinux,方法是重复此过程以设置 SELINUX=enabled。
前提条件:启用 EPEL 代码库
您必须启用 Extra Packages for Enterprise Linux(或 EPEL)才能安装或更新 Edge,或创建本地代码库。您使用的命令取决于您的 RedHat/CentOS 版本:
- 对于 RedHat/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 - 对于 RedHat/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
前提条件:检查 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 版,请将其卸载。
在具有外部互联网连接的节点上安装 Edge apigee-setup 实用程序
如需在具有外部互联网连接的节点上安装 Edge,请执行以下操作:
- 从 Apigee 获取用于访问 Apigee 代码库的用户名和密码。 如果您已有 Apigee FTP 网站的用户名和密码,则可以使用这些凭据。
- 以 root 身份登录节点,以安装 Edge RPM
注意:虽然 RPM 安装需要 root 访问权限,但您可以在没有 root 访问权限的情况下执行 Edge 配置。 - 安装 yum-utils 和 yum-plugin-priorities:
> sudo yum install yum-utils
> sudo yum install yum-plugin-priorities - 按照上述说明停用 SELinux。
- 如上所述,启用 EPEL 代码库。
- 按照上述说明检查 libdb4 的版本。
- 如果您在 Oracle 7.x 上安装,请运行以下命令:
> sudo yum-config-manager --enable ol7_optional_latest - 如果您要在 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 - 将 Edge bootstrap_4.18.01.sh 文件下载到 /tmp/bootstrap_4.18.01.sh:
> curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh - 安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord
其中 uName:pWord 是您从 Apigee 收到的用户名和密码。如果您省略 pWord,系统会提示您输入该参数。
默认情况下,安装程序会检查您是否已安装 Java 1.8。如果您没有安装,它会为您安装。使用 JAVA_FIX 选项指定如何处理 Java 安装。JAVA_FIX 采用以下值:
I = 安装 OpenJDK 1.8(默认)
C = 继续,不安装 Java
Q = 退出。对于此选项,您必须自行安装 Java。
安装 apigee-service 实用程序会创建 /etc/yum.repos.d/apigee.repo 文件,该文件定义了 Apigee 代码库。如需查看定义文件,请使用以下命令:
> cat /etc/yum.repos.d/apigee.repo
如需查看代码库内容,请使用以下命令:
> sudo yum -v repolist 'apigee*' - 使用 apigee-service 安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - 使用 apigee-setup 在节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装 Edge 组件。
在没有外部互联网连接的节点上安装 Edge apigee-setup 实用程序
如果您的 Edge 节点位于防火墙后面,或者以其他方式禁止通过互联网访问 Apigee 代码库,则您必须创建 Apigee 代码库的本地代码库或镜像。然后,所有节点都必须能够访问该镜像。创建后,节点便可以访问该本地镜像来安装 Edge。
如需创建内部 Apigee 代码库,您需要一个具有外部互联网访问权限的节点,以便能够下载 Edge RPM 和依赖项。创建内部代码库后,您可以将其移至其他节点,或使该节点可供 Edge 节点访问以进行安装。
注意:Apigee 不会在我们的公共代码库中托管所有第三方依赖项。您必须从可公开访问的代码库下载并安装这些依赖项。
创建本地 Edge 代码库后,您可能需要稍后使用最新的 Edge 版本文件对其进行更新。以下部分介绍了如何创建本地代码库以及如何更新本地代码库。
创建本地 Apigee 代码库
如需创建本地 Apigee 代码库,请执行以下操作:
- 从 Apigee 获取用于访问 Apigee 代码库的用户名和密码。 如果您已有 Apigee FTP 网站的用户名和密码,则可以使用这些凭据。
- 以 root 身份登录节点,以安装 Edge RPM。
注意:虽然 RPM 安装需要根访问权限,但您可以在没有根访问权限的情况下执行 Edge 配置。 - 按照上述说明停用 SELinux。
- 将 Edge bootstrap_4.18.01.sh 文件下载到 /tmp/bootstrap_4.18.01.sh:
> curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh - 安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord
其中 uName:pWord 是您从 Apigee 收到的用户名和密码。如果您省略 pWord,系统会提示您输入该参数。 - 在节点上安装 apigee-mirror 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror install
注意:如果要将现有代码库更新到 4.18.01,则只需更新 apigee-mirror:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror update - 使用 apigee-mirror 实用程序将 Apigee 代码库同步到 /opt/apigee/data/apigee-mirror/repos/ 目录。
如需最大限度地减小代码库的大小,请添加 --only-new-rpms 以仅下载最新的 RPM。您需要大约 1.6 GB 的磁盘可用空间才能下载:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
如果您想下载整个仓库(包括旧版 RPM),请省略 --only-new-rpms。您需要大约 6 GB 的磁盘可用空间才能完成完整下载:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync
您现在拥有 Apigee 仓库的本地副本。下一部分介绍了如何从本地代码库安装 Edge apigee-setup 实用程序。 -
(可选)如果您想将 Edge 从本地代码库安装到托管本地代码库的同一节点上,则需要先运行以下命令:
- 从本地代码库运行 bootstrap_4.18.01.sh 以安装 apigee-service 实用程序:
> sudo bash /opt/apigee/data/apigee-mirror/repos/bootstrap_4.18.01.sh apigeeprotocol="file://" apigeerepobasepath=/opt/apigee/data/apigee-mirror/repos - 使用 apigee-service 安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - 使用 apigee-setup 在节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装 Edge 组件。
- 从本地代码库运行 bootstrap_4.18.01.sh 以安装 apigee-service 实用程序:
从本地代码库在远程节点上安装 apigee-setup
您可以通过两种方式从本地代码库安装 Edge。您可以执行以下任一项操作:
- 创建代码库的 .tar 文件,将 .tar 文件复制到节点,然后从 .tar 文件安装 Edge。
- 在具有本地代码库的节点上安装网络服务器,以便其他节点可以访问该代码库。 Apigee 提供了 Nginx Web 服务器供您使用,您也可以使用自己的 Web 服务器。
通过 .tar 文件安装:
- 在具有本地代码库的节点上,使用以下命令将本地代码库打包到名为 /opt/apigee/data/apigee-mirror/apigee-4.18.01.tar.gz 的单个.tar 文件中:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - 将 .tar 文件复制到要安装 Edge 的节点。例如,将其复制到新节点上的 /tmp 目录。
- 在新节点上,按照上述说明停用 SELinux。
- 在新节点上,按照上述说明启用 EPEL 代码库。
- 在新节点上,确保您已停用所有外部互联网代码库。
运行以下命令时,所有外部代码库都应显示为已停用,但本地 Apigee 代码库和任何内部代码库都应处于启用状态:
> sudo yum repolist - 在新节点上,安装 yum-utils 和 yum-plugin-priorities:
> sudo yum install yum-utils
> sudo yum install yum-plugin-priorities - 在新节点上,按照上述说明检查 libdb4 的版本。
- 如果您要在 Oracle 7.x 上安装,请运行以下命令:
> sudo yum-config-manager --enable ol7_optional_latest - 如果您要在 AWS 上安装,请运行以下 yum-configure-manager 命令:
> sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional - 在新节点上,将文件解压缩到 /tmp 目录:
> tar -xzf apigee-4.18.01.tar.gz
此命令会在包含 .tar 文件的目录中创建一个名为 repos 的新目录。例如 /tmp/repos。 - 从 /tmp/repos 安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/repos/bootstrap_4.18.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
请注意,您在此命令中添加了 repos 目录的路径。 - 使用 apigee-service 安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - 使用 apigee-setup 在节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装 Edge 组件。
使用 Nginx Web 服务器从代码库进行安装:
- 在代码库节点上安装 Nginx Web 服务器:
> opt/apigee/apigee-service/bin/apigee-service apigee-mirror nginxconfig - 默认情况下,Nginx 配置为使用 localhost 作为服务器名称,并使用端口 3939。如需更改这些值,请执行以下操作:
- 在编辑器中打开 /opt/apigee/customer/application/mirror.properties。如果该文件不存在,请创建一个。
- 根据需要设置以下值:
conf_apigee_mirror_listen_port=3939
conf_apigee_mirror_server_name=localhost - 重启 Nginx:
?> /opt/nginx/scripts/apigee-nginx restart
- 默认情况下,代码库需要用户名:密码为 admin:admin。如需更改这些凭据,请设置以下环境变量:
MIRROR_USERNAME=uName
MIRROR_PASSWORD=pWord - 在新节点上,安装 yum-utils 和 yum-plugin-priorities:
> sudo yum install yum-utils
> sudo yum install yum-plugin-priorities - 在新节点上,按照上述说明停用 SELinux。
- 在新节点上,按照上述说明启用 EPEL 代码库。
- 在新节点上,按照上述说明检查 libdb4 的版本。
- 在远程节点上,将 Edge bootstrap_4.18.01.sh 文件下载到 /tmp/bootstrap_4.18.01.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
其中,uName:pWord 是您在上面为代码库设置的用户名和密码,remoteRepo 是代码库节点的 IP 地址或 DNS 名称。 - 在远程节点上,安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/bootstrap_4.18.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
其中,uName:pWord 是代码库用户名和密码。 - 在远程节点上,使用 apigee-service 安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - 使用 apigee-setup 在远程节点上安装和配置 Edge 组件。如需了解详情,请参阅在节点上安装 Edge 组件。
更新本地 Apigee 代码库
如需更新代码库,您必须下载最新的 bootstrap_4.18.01.sh 文件,然后执行新的同步:
- 将 Edge bootstrap_4.18.01.sh 文件下载到 /tmp/bootstrap_4.18.01.sh:
> curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh - 运行 Edge bootstrap_4.18.01.sh 文件:
> sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord
其中 uName:pWord 是您从 Apigee 收到的用户名和密码。如果您省略 pWord,系统会提示您输入。 - 更新 apigee-mirror:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror update - 执行同步:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms - 如果您想镜像整个代码库:
> /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.18.01 代码库中添加或更新 Edge 4.16.0x/4.17.0x
如果您必须在 4.18.01 代码库中维护 Edge 4.16.0x 或 4.17.0x 的安装,则可以维护包含所有版本的代码库。然后,您可以从该代码库安装任何版本的 Edge。
如需将 4.16.0x/4.17.0x 添加到 4.18.01 代码库,请执行以下操作:
- 确保您已安装 4.18.01 版本的 apigee-mirror 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror version
您应该会看到以下形式的结果,其中 xyz 是 build 号:
apigee-mirror-4.18.01-0.0.xyz - 使用 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 代码库。 - 检查 /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.shbootstrap_4.17.01.sh bootstrap_4.17.05.sh bootstrap_4.17.09.sh bootstrap_4.18.01.sh thirdparty
请注意,您有一个适用于所有 Edge 版本的引导文件。apigee 目录还包含每个 Edge 版本的单独目录。 - 如需将代码库打包到 .tar 文件中,请使用以下命令:
> apigeereleasever=4.17.01 /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
此命令会将所有 4.17.0x 和 4.16.0x 代码库打包到同一个 .tar 文件中。您不能仅打包部分代码库。
如需从本地代码库或 .tar 文件安装 Edge,只需使用以下命令之一运行正确的引导文件即可。此示例会安装 Edge 4.17.01:
- 如果从 .tar 文件安装,请从代码库运行正确的引导文件:
> sudo bash /tmp/repos/bootstrap_4.17.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
如需完成安装,请按照上述“从 .tar 文件安装”中的其余步骤操作。 - 如果使用 Nginx Web 服务器进行安装,请从代码库下载并运行正确的引导文件:
> /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 Web 服务器从代码库安装”中的其余步骤操作。