2.2. 扩展内部 3scale API 管理


随着 APIcast 部署的增长,您可能需要增加可用的存储量。如何扩展存储取决于您用于持久性存储的文件系统类型。

如果使用网络文件系统(NFS),使用以下命令扩展持久性卷(PV):

$ oc edit pv <pv_name>

如果使用任何其他存储方法,则必须使用以下部分中列出的方法之一手动扩展持久性卷。

2.2.1. 方法 1:备份和恢复持久性卷

流程

  1. 备份现有持久性卷中的数据。
  2. 创建并附加一个目标持久性卷,按照您的新大小要求扩展。
  3. 创建一个预绑定的持久性卷声明,使用 volumeName 字段指定新的 PVC (PersistentVolumeClaim) 和持久性卷名称的大小。
  4. 将备份中的数据恢复到新创建的 PV。
  5. 使用新 PV 的名称修改部署配置:

    $ oc edit dc/system-app
  6. 验证您的新 PV 已配置且正常工作。
  7. 删除您之前的 PVC 以释放其声明的资源。

2.2.2. 方法 2:备份和恢复 3scale API 管理

流程

  1. 备份现有持久性卷中的数据。
  2. 关闭 3scale pod。
  3. 创建并附加一个目标持久性卷,按照您的新大小要求扩展。
  4. 将备份中的数据恢复到新创建的 PV。
  5. 创建预绑定持久性卷声明。指定:

    1. 新 PVC 的大小
    2. 使用 volumeName 字段的持久性卷名称。
  6. 部署您的 amp.yml
  7. 验证您的新 PV 已配置且正常工作。
  8. 删除您之前的 PVC 以释放其声明的资源。

2.2.3. 配置 3scale API 管理内部部署

为 3scale 扩展的关键部署配置有:

  • APIcast 生产
  • 后端监听程序
  • 后端 worker

2.2.3.1. 通过 OCP 扩展

使用 APIManager CR 通过 OpenShift Container Platform (OCP),您可以扩展或缩减部署配置。

要扩展特定的部署配置,请使用:

  • 使用以下 APIManager CR 扩展 APIcast 生产部署配置:

    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata:
      name: example-apimanager
    spec:
      apicast:
        productionSpec:
          replicas: X
  • 使用以下 APIManager CR 扩展部署配置的后端监听程序、后端 worker 和后端 cron 组件:

    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata:
      name: example-apimanager
    spec:
      backend:
        listenerSpec:
          replicas: X
        workerSpec:
          replicas: Y
        cronSpec:
          replicas: Z
  • 将适当的环境变量设置为每个 pod 所需的进程数量。

    • 用于 backend-listener pod 的 PUMA_WORKERS

      $ oc set env dc/backend-listener --overwrite PUMA_WORKERS=<number_of_processes>
    • 用于 system-app pod 的 UNICORN_WORKERS

      $ oc set env dc/system-app --overwrite UNICORN_WORKERS=<number_of_processes>

2.2.3.2. 垂直和横向硬件扩展

您可以通过添加资源来提高 OpenShift 上 3scale 部署的性能。您可以将更多计算节点作为 pod 添加到 OpenShift 集群,作为横向扩展,或者以垂直扩展形式将更多资源分配给现有计算节点。

横向扩展

您可以将更多计算节点作为容器集添加到 OpenShift 中。如果额外的计算节点与集群中的现有节点匹配,则不必重新配置任何环境变量。

垂直扩展

您可以为现有计算节点分配更多资源。如果分配更多资源,您必须在 pod 中添加额外的进程来提高性能。

注意

在 3scale 部署中避免使用具有不同规格和配置的计算节点。

2.2.3.3. 扩展路由器

随着流量的增加,确保您的红帽 OCP 路由器可以正确处理请求。如果您的路由器正在限制请求的吞吐量,您必须扩展路由器节点。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.