12.4. 创建 Skupper 策略 CR


skupper Policy CR 允许集群管理员从集群中控制跨服务网络的通信。

先决条件

  • 使用 cluster-admin 帐户访问集群。
  • Skupper 策略 CRD 已安装在集群中。
流程

通常,您可以创建一个 Skupper 策略 CR,它将以下步骤中的多个元素合并。请参阅 第 12.1 节 “关于 Skupper 策略” 中的一个示例 CR。

12.4.2. 实施策略以允许到特定主机的传出链接

使用 allowedOutgoingLinksHostnames 指定开发人员可以创建链接到的主机。您无法创建 allowedOutgoingLinksHostnames 策略来禁止之前允许的特定主机。

  1. 决定您要将此策略应用到的命名空间。
  2. 创建一个 CR,并将 allowedOutgoingLinksHostnames 设置为允许的主机模式。
  3. 创建并应用 CR。

例如,以下 CR 允许链接到所有命名空间的 example.com 的所有子域:

apiVersion: skupper.io/v1alpha1
kind: SkupperClusterPolicy
metadata:
  name: allowedoutgoinglinkshostnames
spec:
  namespaces:
    - "*"
  allowedOutgoingLinksHostnames: ['.*\.example\.com']

12.4.3. 实施策略以允许特定的服务

使用 allowedServices 指定开发人员可以在服务网络上创建和使用的服务。您无法创建 allowedServices 策略来禁止之前允许的特定服务。

流程

  1. 决定您要将此策略应用到的命名空间。
  2. 创建具有 allowedServices 设置的 CR,以指定服务网络中允许的服务。
  3. 创建并应用 CR。

例如,以下 CR 允许用户公开和使用所有命名空间的前缀 backend- 的服务:

apiVersion: skupper.io/v1alpha1
kind: SkupperClusterPolicy
metadata:
  name: allowedservices
spec:
  namespaces:
    - "*"
  allowedServices: ['^backend-']
注意

在公开服务时,您可以使用 skupper CLI 的 --address <name> 参数来命名服务以匹配您的策略。

12.4.4. 实施策略以允许特定资源

使用 allowedExposedResources 指定开发人员可在服务网络上公开的资源。您无法创建 allowedExposedResources 策略来禁止之前允许的特定资源。

流程

  1. 决定您要将此策略应用到的命名空间。
  2. 创建带有 allowedExposedResources 设置的 CR,以指定开发人员可以在服务网络上公开的资源。
  3. 创建并应用 CR。

例如,以下 CR 允许您为所有命名空间公开 nginx 部署:

apiVersion: skupper.io/v1alpha1
kind: SkupperClusterPolicy
metadata:
  name: allowedexposedresources
spec:
  namespaces:
    - "*"
  allowedExposedResources: ['deployment/nginx']
注意

对于 allowedExposedResources,每个条目都必须符合 type/name 语法。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.