Menu Close

第 4 章 在 Red Hat OpenShift 上运行 APIcast

本教程介绍了如何在 Red Hat OpenShift 中部署 APIcast API 网关。

先决条件

  • 您必须根据 第 3 章 安装 APIcast 在 Red Hat 3scale API 管理门户中配置 APIcast。
  • 确保将 自助管理的网关 选为集成设置中的部署选项。
  • 您应当已将暂存和生产环境都配置为继续操作。

要在 Red Hat OpenShift 上运行 APIcast,请执行以下部分中所述的步骤:

4.1. 设置 Red Hat OpenShift

如果您已经有一个正在运行的 OpenShift 集群,您可以跳过本节。否则,继续阅读:

对于生产环境,您可以按照 OpenShift 安装的说明进行操作

在本教程中,将通过以下命令安装 OpenShift 集群:

  • Red Hat Enterprise Linux (RHEL) 7
  • Docker 容器化环境 v1.10.3
  • OpenShift Origin 命令行界面(CLI)- v1.3.1

使用以下部分来设置 Red Hat OpenShift:

4.1.1. 安装 Docker 容器化环境

红帽提供的 Docker 格式容器镜像作为 RHEL 中的 Extras 频道的一部分发布。要启用附加软件仓库,您可以使用 Subscription Manager 或 yum config Manager。详情请查看 RHEL 产品文档

对于部署在 AWS EC2 实例上的 RHEL 7,您将使用以下说明:

流程

  1. 列出所有软件仓库:

    sudo yum repolist all
  2. 查找并启用 *-extras 存储库:

    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras
  3. 安装 Docker 格式的容器镜像:

    sudo yum install docker docker-registry
  4. 通过在 /etc/sysconfig/docker 文件中添加或取消注释以下行来添加不安全的 registry 172.30.0.0/16

    INSECURE_REGISTRY='--insecure-registry 172.30.0.0/16'
  5. 启动 Docker 服务:

    sudo systemctl start docker
  6. 使用以下命令验证容器服务是否正在运行:

    sudo systemctl status docker

4.1.2. 启动 OpenShift 集群

要启动 OpenShift 集群,请执行以下操作:

流程

  1. OpenShift 发行页面 下载客户端工具的最新稳定版本(openshift-origin-client-tools-VERSION-linux-64bit.tar.gz),并将从存档中提取的 Linux oc 二进制文件放在 PATH 中。

    注意

    docker 命令以 root 用户身份运行,因此您需要使用 root 特权运行任何 oc 或 docker 命令。

  2. 打开终端,该用户有运行 docker 命令的权限并运行:

    oc cluster up

    在输出底部,您可以找到有关部署的集群的信息:

        -- Server Information ...
          OpenShift server started.
          The server is accessible via web console at:
          https://172.30.0.112:8443
    
          You are logged in as:
            User:     developer
            Password: developer
    
          To login as administrator:
            oc login -u system:admin
  3. 注意分配给您的 OpenShift 服务器的 IP 地址。您将在教程中将其指代为 OPENSHIFT-SERVER-IP

4.1.3. 在远程服务器上设置 OpenShift 集群(可选)

如果要在远程服务器上部署 OpenShift 集群,则需要在启动集群时明确指定公共主机名和路由后缀,以便您可以远程访问 OpenShift Web 控制台。

例如,如果您要在 AWS EC2 实例上部署,您应该指定以下选项:

oc cluster up --public-hostname=ec2-54-321-67-89.compute-1.amazonaws.com --routing-suffix=54.321.67.89.xip.io

其中 ec2-54-321-67-89.compute-1.amazonaws.com 是公共域,而 54.321.67.89 是实例的 IP。然后,您将可以访问位于 https://ec2-54-321-67-89.compute-1.amazonaws.com:8443 的 OpenShift Web 控制台。