28.6. Network Policy


作为具有 admin 角色的用户,您可以为 netobserv 命名空间创建网络策略。

28.6.1. 为 Network Observability 创建网络策略

您可能需要创建一个网络策略来保护到 netobserv 命名空间的入口流量。在 Web 控制台中,您可以使用表单视图创建网络策略。

流程

  1. 进入到 Networking NetworkPolicies
  2. Project 下拉菜单中选择 netobserv 项目。
  3. 为策略命名。在本例中,策略名为 allow-ingress
  4. Add ingress rule 三次来创建三个入站规则。
  5. 指定以下内容:

    1. 对第一个 Ingress 规则设置以下规格:

      1. Add allowed source 下拉菜单中选择 Allow pods
    2. 为第二个 Ingress 规则设置以下规格 :

      1. Add allowed source 下拉菜单中选择 Allow pods
      2. + Add namespace selector
      3. 添加标签 kubernetes.io/metadata.name,以及选择器 openshift-console
    3. 为第三个 Ingress 规则设置以下规格 :

      1. Add allowed source 下拉菜单中选择 Allow pods
      2. + Add namespace selector
      3. 添加标签 kubernetes.io/metadata.name,和选择器 openshift-monitoring

验证

  1. 进入到 Observe Network Traffic
  2. 查看 Traffic Flows 选项卡,或任何标签页,以验证是否显示数据。
  3. 进入到 Observe Dashboards。在 NetObserv/Health 选择中,验证流是否嵌套并发送到 Loki,这在第一个图形中表示。

28.6.2. 网络策略示例

以下注解了 netobserv 命名空间的 NetworkPolicy 对象示例:

网络策略示例

kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: allow-ingress
  namespace: netobserv
spec:
  podSelector: {}            1
  ingress:
    - from:
        - podSelector: {}    2
          namespaceSelector: 3
            matchLabels:
              kubernetes.io/metadata.name: openshift-console
        - podSelector: {}
          namespaceSelector:
            matchLabels:
              kubernetes.io/metadata.name: openshift-monitoring
  policyTypes:
    - Ingress
status: {}

1
描述策略应用到的 pod 的选择器。策略对象只能选择定义 NetworkPolicy 对象的项目中的 pod。在本文档中,它是安装 Network Observability Operator 的项目,即 netobserv 项目。
2
与策略对象允许从中入口流量的 pod 匹配的选择器。默认为选择器与 NetworkPolicy 相同的命名空间中的 pod 匹配。
3
当指定 namespaceSelector 时,选择器与指定命名空间中的 pod 匹配。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.