适用于私有云的 Edge v4.18.05
硬件要求
您必须满足以下最低硬件要求,才能获得高可用性 部署在生产级环境中的基础架构。
以下视频为您提供了安装时的总体尺寸调整指南:
对于 安装拓扑,下表中列出了 对安装组件的最低硬件要求
在以下表格中,除了要用到的磁盘可用空间之外, 操作系统根据您的应用和网络流量,您的安装可能 所需的资源比下面列出的资源要多或少。
安装组件 | RAM | CPU | 最小硬盘 |
---|---|---|---|
Cassandra | 16 GB | 8 核 | 250GB 本地存储空间(含 SSD)或支持 2000 IOPS 的快速 HDD |
同一机器上有消息处理器/路由器 | 16 GB | 8 核 | 100GB |
Google Analytics- 同一服务器上的 Postgres/Qpid | 16GB* | 8 核* | 500GB - 1TB** 网络存储空间***,最好带 SSD 后端, 支持 1000 IOPS 或更高* |
Google Analytics- Postgres 独立式 | 16GB* | 8 核* | 500GB - 1TB** 网络存储空间***,最好带 SSD 后端, 支持 1000 IOPS 或更高* |
Google Analytics- Qpid 独立式 | 8 GB | 4 核 | 30GB - 50GB 本地存储空间(含 SSD 或快速 HDD)
如果安装时间超过 250 TPS,本地存储支持 1000 IOPS 的 HDD 建议。 默认 Qpid 队列大小为 20 GB。如果您需要添加更多容量,请添加更多容量, Qpid 节点。 |
其他(OpenLDAP、界面、管理服务器) | 4GB | 2 核 | 60 GB |
* 根据吞吐量调整 Postgres 系统要求:
- 低于 250 TPS:可在托管网络中考虑使用 8GB 四核处理器 存储空间***,支持 1000 IOPS 或更高
- 高于 250 TPS:16GB、8 核、托管式网络存储空间*** 支持 1000 IOPS 或更高
- 高于 1000 TPS:16GB、8 核、托管式网络存储空间*** 支持 2000 IOPS 或更高
- 高于 2000 TPS:32GB、16 核、托管式网络存储空间*** 支持 2000 IOPS 或更高
- 高于 4000 TPS:64GB、32 核、托管式网络存储空间*** 支持 4000 IOPS 或更高
** Postgres 硬盘值基于 Edge 捕获的开箱即用分析结果。 如果您向分析数据添加自定义值,则应增加这些值 。使用以下公式估算所需存储空间:
bytes of storage needed =
(# bytes of analytics data/request) *
(requests/second) *
(seconds/hour) *
(hours of peak usage/day) *
(days/month) *
(months of data retention)
例如:
(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)
= 1,194,393,600,000 bytes or 1194.4 GB
*** 建议为 Postgresql 数据库使用 Network Storage,因为:
- 它能够在以下情况下动态增加存储空间大小: 必填字段。
- 在当今的大部分 环境/存储/网络子系统。
- 可以在备份和恢复过程中启用存储级快照 解决方案。
此外,下面还列出了要安装 变现服务:
支持创收功能的组件 | RAM | CPU | 硬盘 |
---|---|---|---|
管理服务器(含变现服务) | 8 GB | 4 核 | 60 GB |
Google Analytics- 同一服务器上的 Postgres/Qpid | 16 GB | 8 核 | 500GB - 1TB 网络存储空间,最好带 SSD 后端,支持 1000 IOPS 或 或使用上表中的规则。 |
Google Analytics- Postgres 独立式 | 16 GB | 8 核 | 500GB - 1TB 网络存储空间,最好带 SSD 后端,支持 1000 IOPS 或 或使用上表中的规则。 |
Google Analytics- Qpid 独立式 | 8 GB | 4 核 | 40GB - 500GB 本地存储空间(含 SSD 或快速 HDD)
如果安装时间超过 250 TPS,本地存储支持 1000 IOPS 的 HDD 建议。 |
操作系统和第三方 软件要求
这些安装说明和提供的安装文件已在 操作系统和第三方软件 支持的软件和支持的版本。
创建“apigee”用户
安装过程会创建一个名为“apigee”的 Unix 系统用户。边缘目录和 “apigee”拥有的文件和 Edge 进程均拥有。这意味着 Edge 组件会以 “apigee”用户。如有必要,您可以用其他用户身份运行组件。
安装目录
默认情况下,安装程序会将所有文件写入 /opt/apigee
目录。您
无法更改此目录位置。虽然您无法更改此目录,但可以创建一个
用于将 /opt/apigee
映射到其他位置的符号链接,如
从 /opt/apigee 创建符号链接。
在本指南的说明中,安装目录的标注为
/opt/apigee
。
从 /opt/apigee 创建符号链接
在创建符号链接之前,您必须先创建一个名为“apigee”的用户和群组。这是 与 Edge 安装程序创建的同一群组和用户相同。
如需创建符号链接,请在下载 bootstrap_4.18.05.sh 文件之前执行以下步骤。 您必须以根用户身份执行所有这些步骤:
- 创建“apigee”用户和群组:
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- 创建从
/opt/apigee
到所需安装根目录的符号链接:ln -Ts /srv/myInstallDir /opt/apigee
其中 /srv/myInstallDir 是 Edge 文件所需的位置。
- 将安装根目录和符号链接的所有权更改为“apigee”用户:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Java
您需要在安装前在每台计算机上安装受支持的 Java 1.8 版本。 支持的 JDK 列在 支持的软件和支持的版本。
确保 JAVA_HOME
环境变量指向 JDK 的根目录
执行安装的用户操作
SELinux
根据您针对 SELinux 的设置,Edge 可能会遇到安装和启动问题 Edge 组件。如有必要,您可以停用 SELinux 或在 然后在安装后重新启用它。如需了解详情,请参阅安装 Edge apigee-setup 实用程序。
投放网络设置
Apigee 建议您在安装前检查网络设置。安装程序 希望所有机器都具有固定的 IP 地址。使用以下命令验证 设置:
hostname
会返回机器的名称hostname -i
返回可通过该地址访问的主机名的 IP 地址 其他机器。
根据您的操作系统类型和版本,您可能需要修改
/etc/hosts
和 /etc/sysconfig/network
(如果主机名不是)
设置正确。如需了解详情,请参阅具体操作系统的文档。
如果服务器有多张接口卡,“主机名 -i”命令会返回以空格分隔的 IP 地址列表。默认情况下,Edge 安装程序使用返回的第一个 IP 地址, 并不一定在所有情况下都正确。作为替代方案,您可以在 安装配置文件:
ENABLE_DYNAMIC_HOSTIP=y
将该属性设置为“y”后,安装程序会提示您选择要用作 IP 地址的 IP 地址。 部分。默认值为“n”。请参阅 如需了解详情,请参阅 Edge 配置文件参考。
TCP 封装容器
TCP 封装容器可以阻止某些端口的通信,并可能影响 OpenLDAP、Postgres 和
Cassandra 安装。在这些节点上,检查 /etc/hosts.allow
和
/etc/hosts.deny
,用于确保对所需
OpenLDAP、Postgres 和 Cassandra 端口。
iptables
验证是否没有 iptables 政策阻止了上 所需的边缘端口如有必要,您可以使用 命令:
sudo/etc/init.d/iptables stop
在 CentOS 7.x 上:
systemctl stop firewalld
确保边缘路由器可以 访问 /etc/rc.d/init.d/functions
边缘路由器使用 Nginx 路由器,并且需要读取访问权限
发送至 /etc/rc.d/init.d/functions
。
如果您的安全流程要求您针对
/etc/rc.d/init.d/functions
,请不要将其设为 700,否则路由器将无法运行
start 的值。权限可设置为 744,以允许对
/etc/rc.d/init.d/functions
。
卡桑德拉
所有 Cassandra 节点都必须连接到一个环。Cassandra 将数据副本存储在 以确保可靠性和容错能力每个 Pod 的复制策略 边缘键空间决定了副本所在的 Cassandra 节点。有关详情,请参阅 关于 Cassandra 复制因子和一致性级别。
Cassandra 会根据可用内存自动调整其 Java 堆大小。有关详情,请参阅 微调 Java 资源。
安装适用于私有云的 Edge 后,您可以检查 Cassandra 是否已配置
检查 /opt/apigee/apigee-cassandra/conf/cassandra.yaml
文件。例如,确保适用于私有云的 Edge 安装脚本设置了以下
属性:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
PostgreSQL 数据库
安装 Edge 后,您可以根据 系统上的可用 RAM 容量:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
如需设置这些值,请执行以下操作:
- 修改 postgresql.properties 文件:
vi /opt/apigee/customer/application/postgresql.properties
如果该文件不存在,请创建该文件。
- 设置上面列出的属性。
- 保存所做的修改。
- 重启 PostgreSQL 数据库:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
系统限制
确保您已在 Cassandra 和消息处理器上设置以下系统限制 节点:
- 在 Cassandra 节点上,针对
/etc/security/limits.d/90-apigee-edge-limits.conf
中的安装用户(默认值为“apigee”) 如下所示:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited
- 在消息处理器节点上,将打开文件描述符的最大数量设置为 64K
在
/etc/security/limits.d/90-apigee-edge-limits.conf
中,如下所示:apigee soft nofile 32768 apigee hard nofile 65536
如有必要,您可以提高该上限。例如,如果您有大量 临时文件。
网络威胁防护服务 (NSS)
网络威胁防护服务 (NSS) 是一组库,支持开发 启用了安全性的客户端和服务器应用。您应该确保已安装 NSS v3.19 或更高版本。
如需查看当前版本,请按以下步骤操作:
yum info nss
如需更新 NSS,请执行以下操作:
yum update nss
请参阅这篇文章。 了解详情。
在 IPv6 上停用 DNS 查找 使用 NSCD(名称服务缓存守护程序)时
如果已安装并启用 NSCD(名称服务缓存守护程序),则消息处理器 进行两次 DNS 查找:一次用于 IPv4,另一次用于 IPv6。出现以下情况时,您应该停用 IPv6 上的 DNS 查找: 使用 NSCD 处理。
要在 IPv6 上停用 DNS 查找功能,请执行以下操作:
- 在每个消息处理器节点上,修改
/etc/nscd.conf
- 设置以下属性:
enable-cache hosts no
在 Google Cloud 上停用 IPv6 适用于 RedHat/CentOS 7 的平台
如果您要在 Google Cloud Platform 上的 RedHat 7 或 CentOS 7 上安装 Edge,则需要 必须在所有 Qpid 节点上停用 IPv6。
有关说明,请参阅您具体操作系统版本的 RedHat 或 CentOS 文档。 停用 IPv6。例如,您可以:
- 在编辑器中打开
/etc/hosts
。 - 插入“#”字符,以将其注释掉:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- 保存文件。
AWS AMI
如果要在适用于 Red Hat Enterprise Linux 的 AWS Amazon 机器映像 (AMI) 上安装 Edge 您必须先运行以下命令:
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
工具
安装程序在 EL5 提供的标准版中使用以下 UNIX 工具,或者 EL6。
awk |
表达式 |
libxslt |
每分钟转数 |
unzip |
基名 |
grep |
lua-socket |
rpm2cpio |
添加 |
bash |
主机名 |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
利巴约 |
perl(来自 procps) |
tar |
谢尔塞斯-C |
Cyrus-Sasl | libdb4 | pgrep(来自 procps) | tr | 美味 |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | 附言 | pwd | uname | |
echo | librdmacm | Python |
ntpdate
Apigee 建议您将服务器的时间是否同步。如果尚未配置
ntpdate
实用程序可以用于此目的,
服务器是否进行时间同步。您可以使用 yum install ntp
来安装
实用程序。这在复制 OpenLDAP 设置时特别有用。请注意,您设置了
时区。
openldap 2.4
本地安装需要 OpenLDAP 2.4。如果您的服务器已连接到互联网,
然后下载并安装
OpenLDAP.如果您的服务器未连接到互联网,请务必确保 OpenLDAP 已
。在 RHEL/CentOS 上,你可以
yum install openldap-clients openldap-servers
安装 OpenLDAP。
对于 13 台主机安装以及具有 2 个数据中心的 12 台主机安装:OpenLDAP 需要进行复制,因为有多个托管 OpenLDAP 的节点。
防火墙和虚拟主机
术语 virtual
在 IT 领域经常被大量使用,因此它是一个
适用于私有云部署和虚拟主机的 Apigee Edge。需要说明的是
“virtual
”一词的使用:
- 虚拟机 (VM):不是必需的,但部分部署会使用虚拟机技术 为 Apigee 组件创建独立的服务器。虚拟机主机(如物理主机)可以 网络接口和防火墙
- 虚拟主机:网络端点,类似于 Apache 虚拟主机。
虚拟机中的路由器可以公开多个虚拟主机(只要这些主机在 其主机别名或接口端口中)。
举个命名示例,单个物理服务器 A
可能运行两个虚拟机,
名为“VM1”和“VM2”假设“VM1”公开了一个虚拟以太网接口,该接口名为
“eth0”由虚拟机内部的 IP 地址 111.111.111.111
分配
虚拟化机器或网络 DHCP 服务器;然后假设 VM2 公开了
以太网接口,也称为“eth0”系统会为它分配一个 IP 地址
111.111.111.222
。
两个虚拟机中可能都运行了一个 Apigee 路由器。路由器会公开虚拟主机 如以下假设示例所示:
VM1 中的 Apigee 路由器在其 eth0 接口(有一些
特定 IP 地址)、api.mycompany.com:80
、api.mycompany.com:443
和
test.mycompany.com:80
。
VM2 中的路由器公开了 api.mycompany.com:80
(与
虚拟机 1)。
物理主机的操作系统可能具有网络防火墙;如果是,该防火墙
必须配置为通过
接口(111.111.111.111:{80, 443}
和 111.111.111.222:80
)。在
此外,每个虚拟机的操作系统可能在其 eth0 接口上提供自己的防火墙,
还必须允许端口 80 和 443 流量进行连接。
基本路径是将 API 调用路由到不同 API 代理所涉及的第三个组成部分
您可能已部署的资源如果 API 代理软件包具有不同的端点,则可以共享一个端点
基本路径。例如,可以将一个基本路径定义为 http://api.mycompany.com:80/
另一个定义为 http://api.mycompany.com:80/salesdemo
。
在这种情况下,您需要通过某种类型的负载平衡器或 Traffic Director 来拆分
http://api.mycompany.com:80/ 两个 IP 地址之间的流量
(在 VM1 上为 111.111.111.111
,在 VM2 上为 111.111.111.222
)。此函数
特定于您的安装,并由本地网络组进行配置。
基本路径是在部署 API 时设置的。在上面的示例中,您可以部署两个 API,
mycompany
和testmycompany
(对组织)
将 mycompany-org
替换为具有主机别名为
api.mycompany.com
,端口设置为 80
。如果您没有声明
基本路径,则路由器不知道要发送传入请求的 API
目标。
不过,如果您使用以下基准网址部署 API testmycompany
:
/salesdemo
,则用户可通过如下方式访问该 API:
http://api.mycompany.com:80/salesdemo
。如果您将 API mycompany 部署为
基本网址为 /
,则您的用户通过该网址访问 API
http://api.mycompany.com:80/
。
许可
每次安装 Edge 时,您都需要从 Apigee 获取唯一的许可文件。您将 在安装管理服务器时需要提供许可文件的路径,例如 /tmp/license.txt.
安装程序会将许可文件复制到
/opt/apigee/customer/conf/license.txt
。
如果许可文件有效,管理服务器会验证许可文件是否过期,并显示允许的消息
处理器 (MP) 数量。如果任何许可设置已过期,您可以在
以下位置:/opt/apigee/var/log/edge-management-server/logs
。
在这种情况下,您可以与 Apigee Edge 支持团队联系,了解迁移详情。
如果您还没有许可,请联系 Apigee 销售团队。