在节点上安装 Edge 组件

Edge for Private Cloud v4.18.01

在节点上安装 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”用户可以访问的节点上的其他位置。

例如,如需安装边缘管理服务器,请运行以下命令:

> /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。

仅安装 OpenLDAP。

ms

安装边缘管理服务器,该服务器还会安装边缘界面和 OpenLDAP。

如果您在配置文件中设置了 USE_LDAP_REMOTE_HOST=y,则会跳过 OpenLDAP 安装,并且管理服务器会使用安装在其他节点上的 OpenLDAP。

r

仅安装边缘路由器。

mp

仅安装 Edge Message Processor。

RMP

安装边缘路由器和消息处理器。

ui

安装 Edge 界面。

qs

仅安装 Qpid 服务器。

ps

仅安装 Postgres Server。

PDB 仅安装 Postgres 数据库 - 仅在安装开发者服务门户时使用。请参阅开发者服务门户安装

萨克斯

安装分析组件,即 Qpid 和 Postgres。

此选项仅适用于开发和测试,不适用于生产环境。

sso 安装 Edge SSO 模块。

安装“创收”部分。

sa

独立安装 Edge,即 Cassandra、ZooKeeper、管理服务器、OpenLDAP、边缘界面、路由器和消息处理器。此选项会忽略 Edge 分析组件:Qpid 和 Postgres。

此选项仅适用于开发和测试,不适用于生产环境。

Aio

在单个节点上安装所有组件。

此选项仅适用于开发和测试,不适用于生产环境。

dp

安装开发者服务门户。

创建配置文件

配置文件包含安装 Edge 所需的所有信息。您通常可以使用同一配置文件在 Edge 安装中安装所有组件。

但是,在以下情况下,您必须使用不同的配置文件或修改配置文件:

  • 您要安装多个 OpenLDAP 服务器,需要在包含 13 个节点的安装过程中配置复制。每个文件的 LDAP_SIDLDAP_PEER 值都需要不同的值。
  • 您将作为 12 节点安装的一部分创建多个数据中心。每个数据中心对 ZK_CLIENT_HOSTSCASS_HOSTS 等属性的要求都不同。

下面介绍的每个安装拓扑都会显示该拓扑的示例配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

无需运行安装即可测试系统要求

Private Cloud 的 Edge 支持 ENABLE_SYSTEM_CHECK=y 属性,以在安装过程中检查机器上的 CPU 和内存要求。但是,在之前的 Edge 版本中,该检查需要您实际执行安装。

现在,您可以使用“-t”标记进行这种检查,而不必执行安装操作。例如,如需检查“aio”安装的系统要求而不实际进行安装,请使用以下命令:

/opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile -t

此命令会在屏幕上显示与系统要求有关的所有错误。

如需查看所有 Edge 组件的系统要求,请参阅安装要求

安装日志文件

默认情况下,setup.sh 实用程序会将关于安装的日志信息写入:

/opt/apigee/var/log/apigee-setup/setup.log

如果运行 setup.sh 实用程序的用户没有该目录的访问权限,它会将日志作为名为 setup.sh 的文件写入 setup.sh 目录。

如果用户无权访问 /tmp,则 setup.sh 实用程序会失败。

安装 Edge 组件

本部分介绍如何为不同的拓扑安装 Edge 组件。组件安装顺序取决于所需拓扑。

下面显示的所有安装示例均假定您正在安装:

  • 停用 Cassandra 身份验证(默认)。如需了解详情,请参阅启用 Cassandra 身份验证
  • 停用 Postgres 主备用复制功能(默认)。如需了解详情,请参阅为 Postgres 设置主备用复制
  • 消息处理器和路由器位于同一节点上。如果您在不同节点上安装消息处理器和路由器,请先安装所有消息处理器,然后安装所有路由器。

一站式安装

  1. 使用以下命令在单个节点上安装所有组件:
    > /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile
  2. 按照测试安装中的说明测试安装情况。
  3. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

# With SMTP
IP1=IPorDNSnameOfNode
HOSTIP=$(hostname -i)
ENABLE_SYSTEM_CHECK=y
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt
MSIP=$IP1
LDAP_TYPE=1
APIGEE_LDAPPW=secret
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>"

双主机独立安装

如需查看边缘拓扑和节点号列表,请参阅安装拓扑

  1. 安装独立网关和节点 1
    > /opt/apigee/apigee-setup/bin/setup.sh -p sa -f configFile
  2. 在节点 2 上安装 Analytics:
    > /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile
  3. 按照测试安装中的说明测试安装情况。
  4. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

# With SMTP
IP1=IPorDNSnameOfNode1
HOSTIP=$(hostname -i)
ENABLE_SYSTEM_CHECK=y
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt
MSIP=$IP1
LDAP_TYPE=1
APIGEE_LDAPPW=secret
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 主机集群安装

如需查看边缘拓扑和节点号列表,请参阅安装拓扑

  1. 在节点 1、2 和 3 上安装 Datastore 集群:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile
  2. 在节点 1 上安装管理服务器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile
  3. 在节点 2 和 3 上安装路由器和消息处理器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile
  4. 在节点 4 和 5 上安装 Analytics:
    > /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile
  5. 按照测试安装中的说明测试安装情况。
  6. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

# With SMTP
IP1=IPorDNSnameOfNode1
IP2=IPorDNSnameOfNode2
IP3=IPorDNSnameOfNode3
IP4=IPorDNSnameOfNode4
IP5=IPorDNSnameOfNode5
?HOSTIP=$(hostname -i)
ENABLE_SYSTEM_CHECK=y
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 
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 个主机的集群安装

如需查看边缘拓扑和节点号列表,请参阅安装拓扑

  1. 在节点 1、2 和 3 上安装 Datastore 集群节点:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile
  2. 在节点 1 上安装 Apigee Management Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile
  3. 在节点 4 和 5 上安装路由器和消息处理器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile
  4. 在节点 6 和 7 上安装 Apigee Analytics Qpid Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  5. 在节点 8 和 9 上安装 Apigee Analytics Postgres Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
  6. 按照测试安装中的说明测试安装情况。
  7. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

# With SMTP
IP1=IPorDNSnameOfNode1
IP2=IPorDNSnameOfNode2
IP3=IPorDNSnameOfNode3
IP8=IPorDNSnameOfNode8
IP9=IPorDNSnameOfNode9
HOSTIP=$(hostname -i)
ENABLE_SYSTEM_CHECK=y
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 
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 个主机的集群安装

如需查看边缘拓扑和节点号列表,请参阅安装拓扑

  1. 在节点 1、2 和 3 上安装 Datastore 集群节点:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile
  2. 在节点 4 和 5 上安装 OpenLDAP:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ld -f configFile
  3. 在节点 6 和 7 上安装 Apigee Management Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile
  4. 在节点 8 和 9 上安装 Apigee Analytics Postgres Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
  5. 在节点 10 和 11 上安装路由器和消息处理器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile
  6. 在节点 12 和 13 上安装 Apigee Analytics Qpid Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  7. 按照测试安装中的说明测试安装情况。
  8. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

# 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)
ENABLE_SYSTEM_CHECK=y
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 
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)
ENABLE_SYSTEM_CHECK=y
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 节点,仅指定数据中心内 ZooKeeper 节点的 IP 地址或 DNS 名称。在如下所示的示例配置文件中,节点 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.4.168.1 中使用该节点的各节点。



    在此部署模型中,Cassandra 设置将如下所示:

如需查看边缘拓扑和节点号列表,请参阅安装拓扑

  1. 在节点 1、2、3、7、8 和 9 上安装 Datastore 集群节点:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile
  2. 在节点 1 和 7 上安装具有 OpenLDAP 复制的 Apigee Management Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile
  3. 在节点 2、3、8 和 9 上安装路由器和消息处理器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile
  4. 在节点 4、5、10 和 11 上安装 Apigee Analytics Qpid Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  5. 在节点 6 和 12 上安装 Apigee Analytics Postgres Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
  6. 按照测试安装中的说明测试安装情况。
  7. 按照对组织进行初始配置中的说明对组织进行初始配置。

下面显示了此拓扑的静默配置文件。请注意此配置文件。如需查看配置文件的完整参考,请参阅边缘配置文件参考

  • 通过在两个 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
ENABLE_SYSTEM_CHECK=y
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
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
ENABLE_SYSTEM_CHECK=y
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
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>"