1.20.5. 应用 3scale 外部 ServiceEntry 对象

要让 threescale-wasm-auth 模块授权针对 3scale 的请求,该模块必须有权访问 3scale 服务。您可以通过应用外部 ServiceEntry 对象在 Red Hat OpenShift Service Mesh 和 Istio 中完成此操作。

自定义资源设置服务条目,以便从 Service Mesh 内部访问 3scale Hosted(SaaS),用于服务管理 API 和帐户管理 API 的后端和系统组件。Service Management API 接收每个请求的授权状态查询。帐户管理 API 为您的服务提供 API 管理配置设置。

流程

  • 将以下外部 ServiceEntry 自定义资源应用到集群:

    3scale Hosted 后端的自定义资源

    apiVersion: networking.istio.io/v1beta1
    kind: ServiceEntry
    metadata:
      name: threescale-saas-backend
    spec:
      hosts:
      - su1.3scale.net
      ports:
      - number: 443
        name: https
        protocol: HTTPS
      location: MESH_EXTERNAL
      resolution: DNS

    3scale Hosted 系统的自定义资源

    apiVersion: networking.istio.io/v1beta1
    kind: ServiceEntry
    metadata:
      name: threescale-saas-system
    spec:
      hosts:
      - multitenant.3scale.net
      ports:
      - number: 443
        name: https
        protocol: HTTPS
      location: MESH_EXTERNAL
      resolution: DNS

    您可以使用 oc apply 命令及以下任一方法应用对象:

    • 将对象保存到一个或多个文件中,然后使用以下语法:

      $ oc apply -f <filename.yml>
    • 要在不首先将其保存到文件中应用对象,请使用以下命令:

      $ echo -n "<filename.yml>" | oc apply -f -

或者,您可以部署一个mesh 3scale 服务。为此,请在自定义资源中更改这些服务的位置。

其他资源