Edge for Private Cloud v. 4.17.05
在节点上安装 Edge apigee-setup 实用程序后,使用 apigee-setup 实用程序在节点上安装一个或多个 Edge 组件。
apigee-setup 实用程序使用以下形式的命令:
> /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile其中,component 是要安装的 Edge 组件,configFile 是包含安装信息的静默配置文件。配置文件必须可供“apigee”用户访问或读取。例如,您可以为文件创建新目录,将其放在 /usr/local 或 /usr/local/share 目录中,或放在“apigee”用户可访问的节点上的任何其他位置。
例如,如需安装 Edge Management Server,请运行以下命令:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f /usr/local/myConfig安装注意事项
在编写配置文件时,请考虑以下选项。
设置 Postgres 主备复制
默认情况下,Edge 会在主节点模式下安装所有 Postgres 节点。不过,在具有多个 Postgres 节点的生产系统中,您必须将其配置为使用主备复制,以便在主节点发生故障时,备用节点可以继续处理流量。
您可以在安装时使用静默配置文件中的属性启用和配置主备复制。或者,您也可以在安装后启用主备复制。如需了解详情,请参阅为 Postgres 设置主备复制。
启用 Cassandra 身份验证
默认情况下,Cassandra 安装时未启用身份验证。这意味着任何人都可以访问 Cassandra。您可以在安装 Edge 后或在安装过程中启用身份验证。
如需了解详情,请参阅启用 Cassandra 身份验证。
创建虚拟主机时使用受保护的端口
如果您要创建将路由器绑定到受保护端口(例如小于 1000 的端口号)的虚拟主机,则必须将路由器配置为以有权访问这些端口的用户身份运行。默认情况下,路由器以用户“apigee”身份运行,该用户无权访问特权端口。
如需了解如何配置虚拟主机和路由器以访问 1000 以下的端口,请参阅设置虚拟主机。
指定要安装的组件
下表列出了您传递给 apigee-service 实用程序的 -p 选项的选项,用于指定要在节点上安装的组件:
|
组件 |
说明 |
|---|---|
|
c |
仅安装 Cassandra。 |
| zk | 仅安装 ZooKeeper。 |
|
ds |
安装 ZooKeeper 和 Cassandra。 |
|
ld |
仅安装 OpenLDAP。 |
|
毫秒 |
安装 Edge Management Server,这也会安装 Edge 界面和 OpenLDAP。 如果您在配置文件中设置了 USE_LDAP_REMOTE_HOST=y,则系统会跳过 OpenLDAP 安装,并且管理服务器会使用安装在其他节点上的 OpenLDAP。 |
|
r |
仅安装 Edge Router。 |
|
mp |
仅安装 Edge 消息处理器。 |
|
rmp |
安装 Edge 路由器和消息处理器。 |
|
ui |
安装 Edge 界面。 |
|
qs |
仅安装 Qpid 服务器。 |
|
ps |
仅安装 Postgres Server。 |
| pdb | 仅安装 Postgres 数据库 - 仅在安装 Developer Services 门户时使用。请参阅开发者服务门户安装。 |
|
sax |
安装分析组件,即 Qpid 和 Postgres。 此选项仅用于开发和测试,不适用于生产环境。 |
|
月 |
安装 Monetization。 |
|
sa |
安装 Edge 独立版,即 Cassandra、ZooKeeper、Management Server、OpenLDAP、Edge 界面、路由器和消息处理器。此选项会省略 Edge 分析组件:Qpid 和 Postgres。 此选项仅用于开发和测试,不适用于生产环境。 |
|
aio |
在单个节点上安装所有组件。 此选项仅用于开发和测试,不适用于生产环境。 |
| dp |
安装 Developer Services 门户。 |
创建配置文件
配置文件包含安装 Edge 所需的所有信息。您通常可以使用同一配置文件来安装 Edge 安装中的所有组件。
不过,在以下情况下,您必须使用不同的配置文件或修改配置文件:
- 您正在安装多个 OpenLDAP 服务器,并且需要配置复制作为 13 节点安装的一部分。每个文件都需要不同的 LDAP_SID 和 LDAP_PEER 值。
- 您正在创建多个数据中心,作为 12 节点安装的一部分。每个数据中心都需要不同的属性设置,例如 ZK_CLIENT_HOSTS 和 CASS_HOSTS。
下面介绍的每个安装拓扑都显示了该拓扑的示例配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
安装日志文件
默认情况下,setup.sh 实用程序会将有关安装的日志信息写入:
/opt/apigee/var/log/apigee-setup/setup.log
如果运行 setup.sh 实用程序的用户无权访问该目录,则会将日志写入 /tmp 目录,文件名为 setup_username.log。
如果用户无权访问 /tmp,setup.sh 实用程序会失败。
安装 Edge 组件
本部分介绍了如何为不同的拓扑安装 Edge 组件。组件安装顺序取决于您所需的拓扑。
下面显示的所有安装示例都假设您要安装:
- 停用 Cassandra 身份验证(默认)。如需了解详情,请参阅启用 Cassandra 身份验证。
- 停用 Postgres 主备复制(默认)。如需了解详情,请参阅为 Postgres 设置主备复制。
- 消息处理器和路由器位于同一节点上。如果您在不同的节点上安装消息处理器和路由器,请先安装所有消息处理器,然后再安装所有路由器。
一体化安装
- 使用以下命令在单个节点上安装所有组件:
> /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
# With SMTP IP1=IPorDNSnameOfNode HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1" ZK_CLIENT_HOSTS="$IP1" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1" # Default is postgres PG_PWD=postgres SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
2 主机独立安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 安装独立网关和节点 1
> /opt/apigee/apigee-setup/bin/setup.sh -p sa -f configFile - 在节点 2 上安装 Analytics:
> /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
# With SMTP IP1=IPorDNSnameOfNode1 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1" ZK_CLIENT_HOSTS="$IP1" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1" # Default is postgres PG_PWD=postgres SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
5 主机集群安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 在节点 1、2 和 3 上安装 Datastore 集群:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在节点 1 上安装 Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在节点 2 和 3 上安装路由器和消息处理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在节点 4 和 5 上安装 Analytics:
> /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres PG_MASTER=$IP4 PG_STANDBY=$IP5 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
9 主机集群安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 在节点 1、2 和 3 上安装数据存储区集群节点:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在节点 1 上安装 Apigee Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在节点 4 和 5 上安装路由器和消息处理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在节点 6 和 7 上安装 Apigee Analytics Qpid 服务器:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在节点 8 和 9 上安装 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres SKIP_SMTP=n PG_MASTER=$IP8 PG_STANDBY=$IP9 SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
13 主机集群式安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 在节点 1、2 和 3 上安装数据存储区集群节点:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在节点 4 和 5 上安装 OpenLDAP:
> /opt/apigee/apigee-setup/bin/setup.sh -p ld -f configFile - 在节点 6 和 7 上安装 Apigee Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在节点 8 和 9 上安装 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 在节点 10 和 11 上安装路由器和消息处理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在节点 12 和 13 上安装 Apigee Analytics Qpid Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
# For all components except OpenLDAP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt # First Management Server on IP6 MSIP=$IP6 USE_LDAP_REMOTE_HOST=y LDAP_HOST=$IP4 LDAP_PORT=10389 # Second Management Server on IP7 # MSIP=$IP7 # USE_LDAP_REMOTE_HOST=y # LDAP_HOST=$IP5 # LDAP_PORT=10389 # Same password for both OpenLDAPs. APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres PG_MASTER=$IP8 PG_STANDBY=$IP9 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
# For OpenLDAP on IP4 and IP5 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 # First OpenLDAP Server on IP4 MSIP=$IP6 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP5 # Second OpenLDAP Server on IP5 # MSIP=$IP7 # USE_LDAP_REMOTE_HOST=n # LDAP_TYPE=2 # LDAP_SID=2 # LDAP_PEER=$IP4 # Set same password for both OpenLDAPs. APIGEE_LDAPPW=secret |
12 主机集群安装
在 12 主机集群拓扑(两个数据中心)上安装 Edge 之前,您必须了解如何在静默配置文件中设置 ZooKeeper 和 Cassandra 属性。
- ZooKeeper
对于两个数据中心的 ZK_HOSTS 属性,请以相同的顺序指定两个数据中心的所有 ZooKeeper 节点的 IP 地址或 DNS 名称,并使用“:observer”修饰符标记所有节点。没有“:observer”修饰符的节点称为“投票者”。您的配置中必须有奇数个“投票者”。
在此拓扑中,主机 9 上的 ZooKeeper 主机是观察者:

对于每个数据中心的 ZK_CLIENT_HOSTS 属性,请仅指定数据中心内 ZooKeeper 节点的 IP 地址或 DNS 名称,并按相同顺序指定数据中心内的所有 ZooKeeper 节点。在下面显示的示例配置文件中,节点 9 带有“:observer”修饰符,因此您有五个投票者:节点 1、2、3、7 和 8。 - Cassandra
所有数据中心都必须具有相同数量的 Cassandra 节点。
对于每个数据中心的 CASS_HOSTS,请确保为两个数据中心指定所有 Cassandra IP 地址(而非 DNS 名称)。对于数据中心 1,请先列出该数据中心内的 Cassandra 节点。对于数据中心 2,请先列出该数据中心内的 Cassandra 节点。对于数据中心内的所有 Cassandra 节点,请按相同顺序列出 Cassandra 节点。
所有 Cassandra 节点都必须具有后缀“:<d>,<r>”,例如“<ip>:1,1 = 数据中心 1 和机架/可用区 1,以及“<ip>:2,1 = 数据中心 2 和机架/可用区 1。
例如,“192.168.124.201:1,1 192.168.124.202:1,1 192.168.124.203:1,1 192.168.124.204:2,1 192.168.124.205:2,1 192.168.124.206:2,1”
每个数据中心的机架/可用区 1 中的第一个节点将用作种子服务器。
在此部署模型中,Cassandra 设置如下所示:

如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 在节点 1、2、3、7、8 和 9 上安装数据存储区集群节点:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在节点 1 和 7 上安装具有 OpenLDAP 复制功能的 Apigee Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在节点 2、3、8 和 9 上安装路由器和消息处理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在节点 4、5、10 和 11 上安装 Apigee Analytics Qpid Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在节点 6 和 12 上安装 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照测试安装中的说明测试安装。
- 按照为组织进行初始配置中的说明为组织进行初始配置。
下面显示了此拓扑的静默配置文件。请注意,此配置文件如需查看配置文件的完整参考文档,请参阅 Edge 配置文件参考文档。
- 配置 OpenLDAP,使其在两个 OpenLDAP 节点之间进行复制。
- 在一个 ZooKeeper 节点上指定“:observer”修饰符。在单个数据中心安装中,请省略该修饰符。
# Datacenter 1 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 IP12=IPorDNSnameOfNode12 HOSTIP=$(hostname -i) MSIP=$IP1 ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP7 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway-1 REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1 $IP7:2,1 $IP8:2,1 $IP9:2,1" # Default is postgres PG_PWD=postgres PG_MASTER=$IP6 PG_STANDBY=$IP12 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
# Datacenter 2 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 IP12=IPorDNSnameOfNode12 HOSTIP=$(hostname -i) MSIP=$IP7 ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=2 LDAP_PEER=$IP1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway-2 REGION=dc-2 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP7:2,1 $IP8:2,1 $IP9:2,1 $IP1:1,1 $IP2:1,1 $IP3:1,1" # Default is postgres PG_PWD=postgres PG_MASTER=$IP6 PG_STANDBY=$IP12 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |