7.3.3. 插件服务代理


如果您需要从插件向集群服务发出 HTTP 请求,您可以使用 spec.proxy 数组字段在 ConsolePlugin 资源中声明服务代理。控制台后端公开 /api/proxy/plugin/<plugin-name>/<proxy-alias>/<request-path>?<optional-query-parameters> 端点来代理插件和服务之间的通信。代理请求默认使用 服务 CA 捆绑包。服务必须使用 HTTPS。

注意

该插件必须使用 consolefetch API 从 JavaScript 代码发出请求,或者一些请求可能会失败。如需更多信息,请参阅 "Dynamic plugin API"。

对于每个条目,您必须分别在 endpointalias 字段中指定代理的端点和别名。对于 Service 代理类型,您必须将端点 type 字段设置为 Serviceservice 必须包含 name, namespace, 和 port 字段的值。例如,/api/proxy/plugin/helm/helm-charts/releases?limit=10 是代理请求路径,它来自带有一个 helm-charts 服务的 helm 插件,列出 10 个 helm release。

服务代理示例

apiVersion: console.openshift.io/v1
kind: ConsolePlugin
metadata:
  name:<plugin-name>
spec:
  proxy:
  - alias: helm-charts 
1

    authorization: UserToken 
2

    caCertificate: '-----BEGIN CERTIFICATE-----\nMIID....'en 
3

    endpoint: 
4

      service:
        name: <service-name>
        namespace: <service-namespace>
        port: <service-port>
      type: Service

1
代理的别名。
2
如果服务代理请求必须包含登录用户的 OpenShift Container Platform 访问令牌,您必须将 authorization 字段设置为 UserToken
注意

如果服务代理请求不包含登录用户的 OpenShift Container Platform 访问令牌,请将 authorization 字段设置为 None

3
如果服务使用自定义服务 CA,caCertificate 字段必须包含证书捆绑包。
4
代理的端点。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部