边缘安装概览

Edge for Private Cloud v4.18.01

典型的 Edge 安装由分布在多个节点上的 Edge 组件组成。在节点上安装 Edge 后,您需要在节点上安装和配置一个或多个 Edge 组件。

安装流程

在节点上安装 Edge 是一个多步骤过程:

  • 在节点上停用 SELinux 或将其设置为宽容模式。如需了解详情,请参阅安装 Edge apigee-setup 实用程序。
  • 决定是否要启用 Cassandra 身份验证。
  • 决定是否要为 Postgres 设置主备复制。
  • 从推荐的拓扑列表中选择您的 Edge 配置。例如,您可以在单个节点上安装 Edge 进行测试,也可以在 13 个节点上安装 Edge 进行生产。如需了解详情,请参阅安装拓扑。
  • 在所选拓扑中的每个节点上,安装 Edge apigee-setup 实用程序:
    • 将 Edge bootstrap_4.18.01.sh 文件下载到 /tmp/bootstrap_4.18.01.sh。
    • 安装 Edge apigee-service 实用程序和依赖项。
    • 安装 Edge apigee-setup 实用程序和依赖项。

      如需了解详情,请参阅安装 Edge apigee-setup 实用程序。
  • 使用 apigee-setup 实用程序,根据所选拓扑在每个节点上安装一个或多个 Edge 组件。
    请参阅在节点上安装 Edge 组件。
  • 在管理服务器节点上,使用 apigee-setup 实用程序安装 apigee-provision,这是用于创建和管理 Edge 组织的实用程序。
    如需了解详情,请参阅为组织启用。

谁可以执行安装

Apigee Edge 分发文件会作为一组 RPM 和依赖项进行安装。如需安装、卸载和更新 Edge RPM,必须由根用户或具有完整 sudo 访问权限的用户运行这些命令。对于完整的 sudo 访问权限,这意味着用户拥有 sudo 访问权限,可以执行与 root 相同的操作。

任何想要运行以下命令或脚本的用户都必须是 root 用户,或者具有完整 sudo 访问权限的用户:

  • apigee-service 实用程序:
    • apigee-service 命令:install、uninstall、update。
    • apigee-all 命令:install、uninstall、update。
  • setup.sh 脚本,用于安装 Edge 组件(除非您已使用“apigee-service install”安装所需的 RPM。如果不需要,则需要根访问权限或完整 sudo 访问权限。)
  • update.sh 脚本,用于更新 Edge 组件

此外,Edge 安装程序会在您的系统上创建一个名为“apigee”的新用户。许多 Edge 命令都会调用 sudo 以“apigee”用户身份运行。

任何想要运行上述命令以外的所有其他命令的用户都必须是对“apigee”用户具有完整 sudo 访问权限的用户。这些命令包括:

  • apigee-service 实用程序命令,包括:
    • apigee-service 命令,例如 start、stop、restart、configure。
    • apigee-all 命令,例如 start、stop、restart、configure。

创建对“apigee”用户具有完整 sudo 访问权限的用户

如需将用户配置为对“apigee”用户具有完全 sudo 访问权限,请使用“visudo”命令修改 sudoers 文件,以添加:

installUser        ALL=(apigee)      NOPASSWD: ALL

其中,installUser 是使用 Edge 的人员的用户名。

设置配置文件的权限

Edge 命令使用的任何文件或资源都必须可供“apigee”用户访问。这包括 Edge 许可文件和任何配置文件。

创建配置文件时,您可以将其所有者更改为“apigee:apigee”,以确保 Edge 命令可以访问该文件:

  1. 以任意用户身份在编辑器中创建文件。
  2. 将文件的所有者更改为“apigee:apigee”;如果您将运行 Edge 服务的用户从“apigee”用户更改为其他用户,请将文件更改为运行 Edge 服务的用户。

在根用户和非根用户之间分离 Edge 安装任务

虽然以 root 身份或具有完整 sudo 访问权限的用户身份执行整个 Edge 安装过程最简单,但并非总是可行。您可以将该过程分为由 root 执行的任务和由对“apigee”用户具有完整 sudo 访问权限的用户执行的任务。

  1. 由 root 执行的任务:
    1. 下载并运行 bootstrap_4.18.01.sh 文件:
      > curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
      > sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord


      此步骤会安装 apigee-service 实用程序并创建“apigee”用户。
    2. 按照上述说明,将用户配置为对“apigee”用户拥有完整的 sudo 访问权限。
    3. 安装 apigee-setup 实用程序:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    4. 使用 apigee-setup 实用程序在节点上安装 Edge RPM:
      > /opt/apigee/apigee-service/bin/apigee-service compName install

      您在节点上安装的 Edge RPM 取决于您的拓扑。可用组件列表包括:apigee-provision、apigee-validate、apigee-zookeeper、apigee-cassandra、apigee-openldap、edge-ui、edge-management-server、edge-ui、edge-router、edge-message-processor、apigee-postgresql、apigee-qpidd、edge-postgres-server、edge-qpid-server。
  2. 根用户在节点上安装 Edge RPM 后,对“apigee”用户具有完整 sudo 访问权限的用户将完成配置过程:
    1. 使用 setup.sh 实用程序完成节点上 Edge 组件的配置。命令的形式取决于您在节点上安装的组件。如需查看完整列表,请参阅在节点上安装 Edge 组件。
      例如,如需完成 ZooKeeper 和 Cassandra 的安装,请使用以下命令:
      > /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile

      其中 configFile 是 Edge 配置文件。

      或者,如需执行一体化安装,请使用以下命令:
      > /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile

安装配置文件的位置

您必须向 apigee-setup 实用程序传递一个配置文件,其中包含有关 Edge 安装的信息。静默安装的唯一要求是配置文件必须可供“apigee”用户访问或读取。例如,将文件放在节点上的 /usr/local/var 或 /usr/local/share 目录中,并将其 chown 为“apigee:apigee”。

除了 Edge 系统管理员的密码之外,配置文件中的所有信息都是必需的。如果您省略密码,apigee-setup 实用程序会提示您在命令行中输入密码。

如需了解详情,请参阅在节点上安装 Edge 组件。

处理安装失败

如果在安装 Edge 组件期间发生故障,您可以尝试更正问题,然后再次运行安装程序。安装程序旨在在检测到故障时重复运行,或者在安装后您想要更改或更新组件时重复运行。

联网或不联网安装

如需在节点上安装 Edge,该节点必须能够访问 Apigee 代码库:

  • 具有外部互联网连接的节点

    具有外部互联网连接的节点会访问 Apigee 代码库,以安装 Edge RPM 和依赖项。
  • 没有外部互联网连接的节点

    没有外部互联网连接的节点可以访问您在内部设置的 Apigee 代码库的镜像版本。此代码库包含所有 Edge RPM,但您必须确保内部网络上的代码库中提供了所有其他依赖项。

    注意:Apigee 不会在我们的公共代码库中托管所有第三方依赖项。您必须从可公开访问的代码库下载并安装这些依赖项。

    如需创建内部 Apigee 代码库,您需要一个具有外部互联网访问权限的节点,以便能够下载 Edge RPM 和依赖项。创建内部代码库后,您可以将其移至其他节点,或使该节点可供 Edge 节点访问以进行安装。

使用本地 Edge 代码库维护 Edge 版本

如上一部分所述,使用本地或镜像代码库的原因之一是在没有外部互联网连接的节点上安装 Edge。

解决 RPM 安装依赖项

Apigee Edge 分发文件作为一组 RPM 文件安装,每个文件都可以有自己的安装依赖项链。其中许多依赖项由第三方组件定义,这些组件不受 Apigee 控制,并且可能随时发生变化。因此,文档中未列出每个依赖项的明确版本号。

如果您在可访问互联网的机器上执行安装,则节点可以下载必要的 RPM 和依赖项。但是,如果您是从无法访问互联网的节点进行安装,则通常需要设置一个包含所有必要依赖项的内部代码库。确保本地代码库中包含所有依赖项的唯一方法是尝试安装、识别任何缺失的依赖项,并将其复制到本地代码库,直到安装成功。

常用 Yum 命令

适用于 Linux 的 Edge 安装工具依靠 Yum 来安装和更新组件。您可能需要使用多个 Yum 命令来管理节点上的安装。

  • 清理所有 Yum 缓存:
    sudo yum clean all
  • 如需更新 Edge 组件,请运行以下命令:
    sudo yum update componentName
    例如:
    sudo yum update apigee-setup
    sudo yum update edge-management-server

文件系统结构

Edge 会将所有文件安装在 /opt/apigee 目录中。

在本指南和 Edge 操作指南中,根安装目录表示为:

/opt/apigee

安装过程使用以下文件系统结构来部署 Apigee Edge for Private Cloud。

日志文件

apigee-setup 和 setup.sh 脚本的日志文件会写入 /tmp/setup-root.log。

每个组件的日志文件都包含在 /opt/apigee/var/log 目录中。每个组件都有自己的子目录。例如,Management Server 的日志位于以下目录中:

/opt/apigee/var/log/edge-management-server

下表列出了日志文件的位置:

组件

位置

管理服务器

/opt/apigee/var/log/edge-management-server

路由器

/opt/apigee/var/log/edge-router

边缘路由器是使用 Nginx 实现的。如需查看其他日志,请参阅:

/opt/apigee/var/log/edge-router/nginx

/opt/nginx/logs

消息处理器

/opt/apigee/var/log/edge-message-processor

Apigee Qpid 服务器

/opt/apigee/var/log/edge-qpid-server

Apigee Postgres Server

/opt/apigee/var/log/edge-postgres-server

Edge 界面

/opt/apigee/var/log/edge-ui

ZooKeeper

/opt/apigee/var/log/apigee-zookeeper

OpenLDAP

/opt/apigee/var/log/apigee-openldap

Cassandra

/opt/apigee/var/log/apigee-cassandra

Qpidd

/opt/apigee/var/log/apigee-qpidd

PostgreSQL 数据库

/opt/apigee/var/log/apigee-postgresql

数据

组件

位置

管理服务器

/opt/apigee/data/edge-management-server

路由器

/opt/apigee/data/edge-router

消息处理器

/opt/apigee/data/edge-message-processor

Apigee Qpid 代理

/opt/apigee/data/edge-qpid-server

Apigee Postgres 代理

/opt/apigee/data/edge-postgres-server

ZooKeeper

/opt/apigee/data/apigee-zookeeper

OpenLDAP

/opt/apigee/data/apigee-openldap

Cassandra

/opt/apigee/data/apigee-cassandra/data

Qpidd

/opt/apigee/data/apigee-qpid/data

PostgreSQL 数据库

/opt/apigee/data/apigee-postgres/pgdata

安装后任务

安装完成后,您可以对 Edge 组件执行其他操作。

在安装后配置 Edge 组件

如需在安装后配置 Edge,您需要结合使用 .properties 文件和 Edge 实用程序。例如,如需在 Edge 界面上配置 TLS/SSL,您需要修改 .properties 文件以设置必要的属性。对 .properties 文件的更改需要您重启受影响的 Edge 组件。

.properties 文件位于 /opt/apigee/customer/application 目录中。每个组件在该目录中都有自己的 .properties 文件。例如,router.properties 和 management-server.properties。

如需为组件设置属性,请修改相应的 .properties 文件,然后重启该组件:

> /opt/apigee/apigee-service/bin/apigee-service component restart

例如:

> /opt/apigee/apigee-service/bin/apigee-service edge-router restart

更新 Edge 时,系统会读取 /opt/apigee/customer/application 目录中的 .properties 文件。这意味着,更新会保留您在组件上设置的所有属性。

如需详细了解 Edge 配置,请参阅如何配置 Edge。

在 Edge 组件上调用命令

Edge 会在 /opt/apigee/apigee-service/bin 下安装管理实用程序,您可以使用这些实用程序来管理 Edge 安装。例如,您可以使用 apigee-all 实用程序来启动、停止、重启或确定节点上所有 Edge 组件的状态:

/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version

使用 apigee-service 实用程序控制和配置各个组件。apigee-service 实用程序采用以下形式:

/opt/apigee/apigee-service/bin/apigee-service component action

例如,如需重启 Edge Router,请运行以下命令:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

您可以通过检查 /opt/apigee 目录来确定节点上安装的组件列表。该目录包含节点上安装的每个 Edge 组件的子目录。每个子目录都带有以下前缀:

  • apigee - Edge 使用的第三方组件。例如,apigee-cassandra。
  • edge - Apigee 的 Edge 组件。例如,edge-management-server。
  • edge-mint - 创收组件。例如 edge-mint-management-server。
  • baas - API BaaS 组件。例如 baas-usergrid。

组件的完整操作列表取决于组件本身,但所有组件都支持以下操作:

  • 启动、停止、重启
  • status, version
  • backup, restore
  • install、uninstall