当前位置: 首页 > news >正文

kubernetes网络之网络策略-----Network Policies - Default

默认情况下,如果名称空间中没有配置 NetworkPolicy,则该名称空间中,所有Pod的所有入方向流量和所有出方向流量都是被允许的。

那么如果我们想改变名称空间中默认的网络策略,又该怎么做呢?

默认拒绝所有的入方向流量

在名称空间中创建下面的 NetworkPolicy,该 NetworkPolicy:

  • 选中所有的 Pod
  • 不允许任何入方向的流量
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:name: default-deny
spec:podSelector: {}policyTypes:- Ingress
  1. apiVersion: networking.k8s.io/v1: 这是 Kubernetes API 的版本,指定了该配置文件所使用的网络策略 API 版本。在此例中,它使用的是 networking.k8s.io/v1 版本。
  2. kind: NetworkPolicy: 这表明我们正在定义一个网络策略对象。
  3. metadata: 这是网络策略对象的元数据部分,包含关于该策略的信息,比如名称(name)。
  4. name: default-deny: 这是网络策略对象的名称。在这个例子中,它命名为 “default-deny”。
  5. spec: 这是网络策略对象的规范部分,定义了实际的策略规则。
  6. podSelector: {}: 这是策略的一个重要字段,用于选择要应用该策略的 Pod。在这里,{} 表示选择所有的 Pod,因为它是一个空的标签选择器,没有指定任何特定的标签。这意味着该策略将应用于所有的 Pod。
  7. policyTypes: - Ingress: 这是策略的另一个重要字段,用于指定策略的类型。在这里,它指定了该策略只影响入站(Ingress)流量,也就是控制其他 Pod 访问本 Pod 的流量。

此 NetworkPolicy 将确保名称空间中所有的入方向流量都被限制,同时,不改变出方向的流量.

默认允许所有的入方向流量

在名称空间中创建下面的 NetworkPolicy,该 NetworkPolicy 允许名称空间中所有 Pod 的所有入方向网络流量

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:name: allow-all
spec:podSelector: {}ingress:- {}policyTypes:- Ingress
  1. apiVersion: networking.k8s.io/v1: 这指定了使用的 Kubernetes API 版本,表示该配置文件遵循的网络策略 API 的版本。
  2. kind: NetworkPolicy: 这表明我们正在定义一个网络策略对象。
  3. metadata: 这是网络策略对象的元数据部分,包含关于该策略的信息,比如名称(name)。
  4. name: allow-all: 这是网络策略对象的名称。在这个例子中,它命名为 “allow-all”。
  5. spec: 这是网络策略对象的规范部分,定义了实际的策略规则。
  6. podSelector: {}: 这是策略的一个重要字段,用于选择要应用该策略的 Pod。在这里,{} 表示选择所有的 Pod,因为它是一个空的标签选择器,没有指定任何特定的标签。这意味着该策略将应用于所有的 Pod。
  7. ingress: - {}: 这是策略的另一个重要字段,用于指定入站流量的规则。在这里,{} 表示没有明确指定任何入站规则。空的 ingress 规则表示允许所有的入站流量,因为没有明确指定任何限制条件。
  8. policyTypes: - Ingress: 这是策略的最后一个字段,用于指定策略的类型。在这里,它指定了该策略只影响入站(Ingress)流量,也就是控制其他 Pod 访问本 Pod 的流量。

默认允许所有出方向流量

在名称空间中创建下面的 NetworkPolicy,该 NetworkPolicy 允许名称空间中所有 Pod 的所有出方向网络流量

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:name: allow-all
spec:podSelector: {}egress:- {}policyTypes:- Egress
  1. apiVersion: networking.k8s.io/v1: 这指定了使用的 Kubernetes API 版本,表示该配置文件遵循的网络策略 API 的版本。
  2. kind: NetworkPolicy: 这表明我们正在定义一个网络策略对象。
  3. metadata: 这是网络策略对象的元数据部分,包含关于该策略的信息,比如名称(name)。
  4. name: allow-all: 这是网络策略对象的名称。在这个例子中,它命名为 “allow-all”。
  5. spec: 这是网络策略对象的规范部分,定义了实际的策略规则。
  6. podSelector: {}: 这是策略的一个重要字段,用于选择要应用该策略的 Pod。在这里,{} 表示选择所有的 Pod,因为它是一个空的标签选择器,没有指定任何特定的标签。这意味着该策略将应用于所有的 Pod。
  7. egress: - {}: 这是策略的另一个重要字段,用于指定出站流量的规则。在这里,{} 表示没有明确指定任何出站规则。空的 egress 规则表示允许所有的出站流量,因为没有明确指定任何限制条件。
  8. policyTypes: - Egress: 这是策略的最后一个字段,用于指定策略的类型。在这里,它指定了该策略只影响出站(Egress)流量,也就是控制本 Pod 访问其他 Pod 的流量。

默认拒绝所有入方向和出方向的网络流量

在名称空间中创建下面的 NetworkPolicy,该 NetworkPolicy 禁止名称空间中所有 Pod 的所有入方向流量和所有出方向流量

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:name: default-deny
spec:podSelector: {}policyTypes:- Ingress- Egress
  1. apiVersion: networking.k8s.io/v1: 这指定了使用的 Kubernetes API 版本,表示该配置文件遵循的网络策略 API 的版本。
  2. kind: NetworkPolicy: 这表明我们正在定义一个网络策略对象。
  3. metadata: 这是网络策略对象的元数据部分,包含关于该策略的信息,比如名称(name)。
  4. name: default-deny: 这是网络策略对象的名称。在这个例子中,它命名为 “default-deny”。
  5. spec: 这是网络策略对象的规范部分,定义了实际的策略规则。
  6. podSelector: {}: 这是策略的一个重要字段,用于选择要应用该策略的 Pod。在这里,{} 表示选择所有的 Pod,因为它是一个空的标签选择器,没有指定任何特定的标签。这意味着该策略将应用于所有的 Pod。
  7. policyTypes: - Ingress - Egress: 这是策略的另一个重要字段,用于指定策略的类型。在这里,它指定了该策略同时影响入站(Ingress)和出站(Egress)流量,也就是控制其他 Pod 访问本 Pod 的流量以及本 Pod 访问其他 Pod 的流量。
http://www.lryc.cn/news/110813.html

相关文章:

  • 奥威BI系统|秒分析,更适合分析大数据
  • 安全作业-Race竞争型漏洞、原型链污染
  • 对微服务网关的一些总结
  • 该选择WPF 还是 Winform?
  • 概念解析 | ChatGPT技术概览
  • 用Rust实现23种设计模式之 代理模式
  • 【nlp pytorch】基于标注信息从句子中提取命名实体内容
  • 图为科技加入深圳市智能交通行业协会 ,打 …
  • 大模型排行榜及相关基础技术
  • Python入门【​try和except结构、常见异常、with上下文管理 、traceback模块和生成异常日志、自定义异常类】(十八)
  • windows脚本获取管理员权限修改host
  • Flask简介与基础入门
  • Stable Diffusion 硬核生存指南:WebUI 中的 GFPGAN
  • IO模型-信号驱动IO
  • 每日一题——回文链表
  • OPENCV C++(一) 二进制和灰度原理 处理每个像素点值的方法
  • Python GUI编程(Tkinter)
  • K8S简介
  • 策略模式——算法的封装与切换
  • c++转换构造,拷贝构造,operator=
  • 支付宝蜻蜓设备abs调试
  • 论memset的时间代价
  • linux下绑定进程到指定CPU的操作方法
  • springboot+maven插件调用mybatis generator自动生成对应的mybatis.xml文件和java类
  • C# 根据前台传入实体名称,动态查询数据
  • Netty入门学习
  • 代客泊车对HUT功能交互规范
  • mysql的update_time
  • 避免安装这5种软件,手机广告频繁弹窗且性能下降
  • kafka-事务