适用于私有云的 Edge v4.18.01
硬件要求
您必须满足以下最低硬件要求,才能获得高可用性 部署在生产级环境中的基础架构。对于 安装拓扑,下表中列出了 对安装组件的最低硬件要求
在以下表格中,除了要用到的磁盘可用空间之外, 操作系统根据您的应用和网络流量,您的安装可能 所需的资源比下面列出的资源要多或少。
安装组件 | 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 建议。 |
下面列出了要安装 API BaaS 的硬件要求:
API BaaS 组件 | RAM | CPU | 硬盘 |
---|---|---|---|
ElasticSearch* | 8 GB | 4 核 | 60-80GB |
API BaaS 堆栈* | 8 GB | 4 核 | 60-80GB |
API BaaS 门户 | 1GB | 2 核 | 20GB |
Cassandra** | 16 GB | 8 核 | 250GB 本地存储空间(含 SSD)或支持 2000 IOPS 的快速 HDD |
* 您可以在同一节点上安装 ElasticSearch 和 API BaaS Stack。如果有, 将 ElasticSearch 配置为使用 4GB 的内存(默认)。如果 ElasticSearch 已安装到 然后使用 6GB 内存。
** 选填;通常,您需要为 Edge 和 API BaaS 使用相同的 Cassandra 集群 服务。
。操作系统和第三方 软件要求
这些安装说明和提供的安装文件已在 操作系统和第三方软件 支持的软件和支持的版本。
创建 apigee 用户
安装过程会创建一个名为“apigee”的 Unix 系统用户。边缘目录和 “apigee”拥有的文件和 Edge 进程均拥有。这意味着 Edge 组件会以 “apigee”用户。如有必要,您可以用其他用户身份运行组件。
安装目录
默认情况下,安装程序会将所有文件写入 /opt/apigee
目录。您
无法更改此目录位置。虽然您无法更改此目录,但可以创建一个
用于将 /opt/apigee
映射到其他位置的符号链接,如下所述。
在本指南的说明中,安装目录的标注为
/opt/apigee
。
从 /opt/apigee 创建符号链接
在创建符号链接之前,您必须先创建一个名为“apigee”的用户和群组。这是 与 Edge 安装程序创建的同一群组和用户相同。
如需创建符号链接,请在下载 bootstrap_4.18.01.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
指向执行
安装。
SELinux
根据您针对 SELinux 的设置,Edge 可能会遇到安装和启动问题 Edge 组件。如有必要,您可以停用 SELinux 或在 然后在安装后重新启用它。如需了解详情,请参阅安装 Edge apigee-setup 实用程序。
网络设置
建议您在安装前检查网络设置。安装程序 希望所有机器都具有固定的 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
边缘路由器和 BaaS 门户节点使用 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
如有必要,您可以提高该上限。例如,如果您有大量临时性 文件。
jsvc
“jsvc”是使用 API BaaS 的前提条件。安装时,系统会同时安装版本 1.0.15-dev API BaaS
网络威胁防护服务 (NSS)
网络威胁防护服务 (NSS) 是一组库,支持开发 启用了安全性的客户端和服务器应用。您应该确保已安装 NSS v3.19 或更高版本。
如需查看当前版本,请按以下步骤操作:
yum info nss
如需更新 NSS,请执行以下操作:
yum update nss
请参阅这篇文章。 了解详情。
在 IPv6 上停用 DNS 查找 使用 NSCD(名称服务缓存守护程序)时
如果您已安装并启用 NSCD(名称服务缓存守护程序),则消息处理器 进行两次 DNS 查找:一次用于 IPv4,另一次用于 IPv6。您应该停用 DNS 查找 IPv6(使用 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
建议使用服务器的次同步。如果尚未配置
ntpdate
实用程序可以用于此目的,
服务器是否进行时间同步。您可以使用 yum install ntp
来安装
实用程序。这在复制 OpenLDAP 设置时特别有用。请注意,您设置了
时区。
openldap 2.4
本地安装需要 OpenLDAP 2.4。如果
您的服务器已连接到互联网,然后会下载并安装 Edge 安装脚本
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
(与
由 VM1 公开)。
物理主机的操作系统可能具有网络防火墙;如果是,该防火墙
必须配置为通过
接口(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 组件的端口要求:
下图中的备注:
- * 仅当您执行以下操作时,路由器上的端口 8082 才需要开放 配置路由器和邮件处理器之间的 TLS/SSL。如果您未配置 TLS/SSL (默认配置),端口 8082 仍必须 在消息处理器上打开以管理组件,但路由器不要求 访问。
- 以“M”为前缀的端口是用于管理组件的端口,必须在 组件,并且必须在组件上打开,以便管理服务器访问。
- 以下组件需要访问管理服务器上的端口 8080:路由器、 消息处理器、界面、Postgres 和 Qpid。
- 消息处理器必须打开端口 4528 作为其管理端口。如果您有多个 它们必须都能够通过端口 4528(用 上图中消息处理器上的端口 4528 的循环箭头)。如果您有多个 数据中心,必须可从所有数据中心内的所有消息处理器访问该端口。
- 您可以在路由器上打开端口 4527,以供任何邮件访问,尽管这不是必需操作 处理器。否则,您可能会在消息处理器日志文件中看到错误消息。
- 路由器必须打开端口 4527 作为其管理端口。如果您有多个路由器 都必须能够通过端口 4527(由 如上图所示,路由器上的端口 4527)。
- Edge 界面需要访问 API 代理公开的端口上的路由器,以支持 跟踪工具中的发送按钮。
- 管理服务器需要访问 Cassandra 上的 JMX 端口 节点。
- 对 JMX 端口的访问可配置为需要用户名/密码。请参阅 如需了解详情,请参阅如何监控。
- 您可以选择为特定连接配置 TLS/SSL 访问, 不同的端口请参阅 TLS/SSL 。
- 如果将两个 Postgres 节点配置为使用主备用复制功能,则必须打开端口 22 进行 SSH 访问您可以选择打开个别节点上的端口,以允许 使用 SSH 连接到 Cloud VPN。
- 您可以将管理服务器和边缘界面配置为通过外部 SMTP 发送电子邮件 服务器。如果这样做,您必须确保管理服务器和 UI 可以访问必要的 SMTP 服务器上的端口对于非 TLS SMTP,端口号通常为 25。对于已启用 TLS SMTP,通常为 465,但请与您的 SMTP 提供商确认。
下表显示了需要在防火墙中按 Edge 组件打开的端口:
组件 | 端口 | 说明 |
---|---|---|
标准 HTTP 端口 | 80、443 | HTTP 以及您用于虚拟主机的任何其他端口 |
管理服务器 | 8080 | 用于调用 Edge Management API 的端口。这些组件要求访问端口 8080, 管理服务器:路由器、消息处理器、UI、Postgres 和 Qpid。 |
1099 | JMX 端口 | |
4526 | 适用于分布式缓存和管理调用 | |
管理界面 | 9000 | 用于通过浏览器访问管理界面的端口 |
消息处理器 | 8998 | 用于从路由器通信的消息处理器端口 |
8082 |
消息处理器的默认管理端口,必须在组件上打开 管理服务器访问的资源。 如果您在路由器和邮件处理器之间配置 TLS/SSL(由路由器使用) 对消息处理器进行健康检查。 |
|
1101 | JMX 端口 | |
4528 | 适用于消息处理器之间的分布式缓存和管理调用,以及 通过路由器和管理服务器进行通信 | |
路由器 | 8081 | 路由器的默认管理端口,必须在组件上打开才能访问 由管理服务器管理 |
4527 | 适用于分布式缓存和管理调用 | |
15999 |
健康检查端口。负载平衡器使用此端口来确定路由器是否 可用。 要获取路由器的状态,负载平衡器会向 路由器: curl -v http://routerIP:15999/v1/servers/self/reachable 如果路由器可以访问,则请求将返回 HTTP 200。 |
|
59001 | apigee-validate 实用程序用于测试 Edge 安装的端口。
该实用程序需要访问路由器上的端口 59001。请参阅
在端口 59001 上测试安装以执行更多操作。 |
|
ZooKeeper | 2181 | 供管理服务器、路由器、消息处理器等其他组件使用 |
2888、3888 | 供 ZooKeeper 在内部用于 ZooKeeper 集群(称为 ZooKeeper 集成学习) 通信 | |
Cassandra | 7000、9042、9160 | Apache Cassandra 端口,用于在 Cassandra 节点之间通信以及 其他 Edge 组件。 |
7199 | JMX 端口。必须开放以供管理服务器访问。 | |
Qpid | 5672 | 用于从路由器和消息处理器到 Qpid 服务器的通信 |
8083 | Qpid 服务器上的默认管理端口,必须在组件上打开 管理服务器访问的资源。 | |
1102 | JMX 端口 | |
4529 | 适用于分布式缓存和管理调用 | |
Postgres | 5432 | 用于从 Qpid/Management 服务器到 Postgres 的通信 |
8084 | Postgres 服务器上的默认管理端口必须在组件上打开才能访问 由管理服务器管理 | |
1103 | JMX 端口 | |
4530 | 适用于分布式缓存和管理调用 | |
22 | 如果要将两个 Postgres 节点配置为使用主备用复制功能,则必须打开 为 SSH 访问各节点上的端口 22。 | |
LDAP | 10389 | OpenLDAP |
SmartDocs | 59002 | 边缘路由器上的端口,用于发送 SmartDocs 页面请求。 |
下表显示了相同的端口(以数字形式列出),其中包含来源和目标 组件:
端口号 | 用途 | 源组件 | 目标组件 |
---|---|---|---|
virtual_host_port | HTTP 以及您用于虚拟主机 API 调用流量的任何其他端口。端口 80 和 443 最常用的类别邮件路由器可以终止 TLS/SSL 连接。 | 外部客户端(或负载平衡器) | 消息路由器上的监听器 |
1099 至 1103 | JMX 管理 | JMX 客户端 | 管理服务器 (1099) 消息处理器 (1101) Qpid 服务器 (1102) Postgres 服务器 (1103) |
2181 | ZooKeeper 客户端通信 | 管理服务器 路由器 消息处理器 Qpid 服务器 Postgres 服务器 |
ZooKeeper |
2888 和 3888 | Zookeeper 节点间管理 | ZooKeeper | ZooKeeper |
4526 | RPC 管理端口 | 管理服务器 | 管理服务器 |
4527 | 用于分布式缓存和管理调用以及通信的 RPC 管理端口 在路由器之间 | 管理服务器 路由器 |
路由器 |
4528 | 适用于消息处理器之间的分布式缓存调用,以及 从路由器 | 管理服务器 路由器 消息处理器 |
消息处理器 |
4529 | 分布式缓存和管理调用的 RPC 管理端口 | 管理服务器 | Qpid 服务器 |
4530 | 分布式缓存和管理调用的 RPC 管理端口 | 管理服务器 | Postgres 服务器 |
5432 | Postgres 客户端 | Qpid 服务器 | Postgres |
5672 |
用于从路由器和消息处理器向 Qpid 发送分析数据 |
路由器 消息处理器 |
Qpid 服务器 |
7000 | Cassandra 节点间通信 | Cassandra | 其他 Cassandra 节点 |
7199 | JMX 管理。必须开放给管理层在 Cassandra 节点上访问 服务器。 | JMX 客户端 | Cassandra |
8080 | Management API 端口 | Management API 客户端 | 管理服务器 |
8081 到 8084 |
组件 API 端口,用于直接向各个组件发出 API 请求。 每个组件会打开不同的端口;所使用的端口取决于具体的配置 但必须在组件上打开,以便管理服务器访问 |
Management API 客户端 | 路由器 (8081) 消息处理器 (8082) Qpid 服务器 (8083) Postgres 服务器 (8084) |
8998 | 路由器和消息处理器之间的通信 | 路由器 | 消息处理器 |
9000 | 默认边缘管理界面端口 | 浏览器 | 管理界面服务器 |
9042 | CQL 原生传输 | 路由器 消息处理器 管理服务器 |
Cassandra |
9160 | Cassandra 旧款客户 | 路由器 消息处理器 管理服务器 |
Cassandra |
10389 | LDAP 端口 | 管理服务器 | OpenLDAP |
15999 | 健康检查端口。负载平衡器使用此端口来确定路由器是否 可用。 | 负载均衡器 | 路由器 |
59001 | apigee-validate 实用程序用于测试 Edge 安装的端口 |
apigee-validate | 路由器 |
59002 | 发送 SmartDocs 页面请求的路由器端口 | SmartDocs | 路由器 |
消息处理器使专用连接池保持对已配置的 Cassandra 开放 永不超时。当消息处理器和 Cassandra 服务器之间有防火墙时, 防火墙可能会使连接超时。但是,消息处理器并非设计为 重新建立与 Cassandra 的连接。
为防止出现这种情况,Apigee 建议将 Cassandra 服务器、消息处理器和 因此这些路由器位于同一子网中,这样在部署这些路由器时无需防火墙 组件。
如果防火墙位于路由器和消息处理器之间,并且设置了空闲的 tcp 超时时间, 我们的建议是:
- 在 Linux 操作系统上的 sysctl 设置中设置
net.ipv4.tcp_keepalive_time = 1800
,其中 1800 应低于防火墙空闲 TCP 超时时间。此设置应该会使 确保防火墙不会断开连接。 - 在所有消息处理器上,修改
/opt/apigee/customer/application/message-processor.properties
以添加以下属性。如果该文件不存在,请创建该文件。conf_system_cassandra.maxconnecttimeinmillis=-1
- 重启消息处理器:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 在所有路由器上,修改
/opt/apigee/customer/application/router.properties
以添加以下属性。如果该文件不存在,请创建该文件。conf_system_cassandra.maxconnecttimeinmillis=-1
- 重启路由器:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
如果您安装含有两个数据中心的 12 个主机集群配置,请确保 两个数据中心内的节点可以通过如下所示的端口进行通信:
API BaaS 端口要求
如果您选择安装 API BaaS,则需要添加 API BaaS 堆栈和 API BaaS 门户组件。 这些组件使用下图所示的端口:
下图中的备注:
- API BaaS 门户绝不会直接向 BaaS Stack 节点发出请求。如果开发者 登录门户后,系统会将该门户应用下载到浏览器。门户应用 然后浏览器向 BaaS 堆栈节点发出请求。
- API BaaS 的生产环境安装在 API BaaS 门户节点之间使用负载平衡器 和 API BaaS 栈节点在配置门户和进行 BaaS API 调用时,您需要 指定负载平衡器的 IP 地址或 DNS 名称,而不是栈节点的 IP 地址或 DNS 名称。
- 所有堆栈节点都必须打开端口 2551,才能从其他堆栈节点(用 上图中堆栈节点上的端口 2551 的循环箭头)。如果您有多个数据 必须可从所有数据中心的所有堆栈节点访问该端口。
- 您必须将所有 Baas Stack 节点配置为通过外部 SMTP 服务器发送电子邮件。对于 不使用 TLS SMTP,则端口号通常为 25。对于启用了 TLS 的 SMTP,该值通常为 465, 与您的 SMTP 提供商相关联。
- Cassandra 节点可以专用于 API BaaS,也可以与 Edge 共享。
下表按组件显示了需要在防火墙中打开的默认端口:
组件 | 端口 | 说明 |
---|---|---|
API BaaS 门户 | 9000 | API BaaS 界面的端口 |
API BaaS 堆栈 | 8080 | 接收 API 请求的端口 |
2551 |
用于所有堆栈节点之间的通信端口。必须可供所有其他堆栈访问 节点。 如果您有多个数据中心,此端口必须可从以下区域的所有堆栈节点访问: 所有数据中心 |
|
ElasticSearch | 9200 至 9400 | 用于与 API BaaS 堆栈通信以及在 ElasticSearch 之间通信 节点 |
许可
每次安装 Edge 时,您都需要从 Apigee 获取唯一的许可文件。您将 在安装管理服务器时需要提供许可文件的路径,例如 /tmp/license.txt.
安装程序会将许可文件复制到
/opt/apigee/customer/conf/license.txt
。
如果许可文件有效,管理服务器会验证许可文件是否过期,并显示允许的消息
处理器 (MP) 数量。如果任何许可设置已过期,您可以在
以下位置:/opt/apigee/var/log/edge-management-server/logs
。
在这种情况下,您可以与 Apigee Edge 支持团队联系,了解迁移详情。
如果您还没有许可,请联系 Apigee 销售团队。