k8s 网络概念与策略控制

一、Kubernetes 基本网络模型

Kubernetes 的容器网络模型可以把它归结为约法三章和四大目标。

1 、约法三章

约法三章确保了Kubernetes容器网络模型的基本特性:

① 任意两个 pod 之间可以直接通信:在Kubernetes中,每个 Pod 都被分配了一个唯一的IP地址,这使得任意两个Pod之间可以直接通信。

② 跨主机通信:在Kubernetes集群中,节点(node)与 Pod 之间可以直接通信,不需要进行明显的地址转换。

③ Pod 的 IP 地址不会变化:Pod 内部使用的 IP 地址与外部看到的 IP 地址是一致的,中间不会经过地址转换。

2 、四大目标

当设计一个Kubernetes系统以向外部世界提供服务时,需要考虑如何实现以下四个目标:

① 外部世界和 service 之间怎么通信:Service 作为一种抽象,代表了一组提供相同功能的 Pod 的访问入口,外部流量通过 Service 来连接到容器内部的应用。

② service 如何与它后端的 pod 通信:Service 与后端的 Pod 之间的通信是通过Kubernetes 的内部 DNS 解析和负载均衡实现的。

③ pod 和 pod 之间通信的:每个 Pod 拥有自己的 IP 地址,因此 Pod 可以直接使用对方的 IP 地址进行通信。

④ pod 内部容器与容器之间的通信:Pod 内部容器之间的通信是通过 localhost 进行的,就像在同一台主机上的多个进程之间通信一样。

3 、基本约束

基本约束是指在设计容器网络时,需要遵循的一些基本规则或限制,以确保网络的正常运行和安全性。分为 Underlay/Overlay 两大派别:

● Underlay网络:通常采用与主机网络相同的网段,将容器网络直接映射到主机网络的一种方案。

● Overlay网络:是在底层网络之上构建的虚拟网络,容器在此虚拟层面上进行通信,不直接与主机网络交互。

Underlay 网络更加与主机网络直接集成,但可能受主机网络的限制 ;而 Overlay 网络更加独立,但需要额外的虚拟化层支持。

二、Network Namespace

1 、介绍

网络命名空间(Network Namespace)用于创建和管理网络虚拟化环境。每个网络命名空间都拥有独立的网络栈,包括独立的附属网络设备(如 lo、eth0 等虚拟设备或者物理网卡)、独立的协议栈、IP地址和路由表、iptables规则等。这样的隔离性使得不同网络命名空间中的网络资源相互独立,从而实现了网络虚拟化。

2 、Pod 与 Netns 的关系

(1) Pod 中的Netns关系:

每个Pod都有自己独立的网络命名空间(Netns),Pod中的每个容器(container)都共享同一个网络命名空间。

(2) Pod 的网络模型:

在Pod中,容器之间通常通过 Loopback 接口(127.0.0.1)进行通信 ;对外服务时,所有容器通过Pod的IP地址对外提供服务,不需要对外暴露各自的IP地址。

(3) 宿主机上的 Root Netns:

宿主机上也存在一个特殊的网络命名空间,称为 Root Netns。Root Netns 的进程 ID(PID)是1,因为它是整个系统的网络命名空间根节点。

三、Network Policy

1 、介绍:

Network Policy 提供了基于策略的网络控制,用于隔离应用并减少攻击面。它使用标签选择器模拟传统的分段网络,并通过策略控制它们之间的流量以及来自外部的流量。

2 、实例:

① 允许 default namespace 中带有 role=frontend 标签的Pod 访问 default namespace 中带有 role=db 标签 Pod的6379 端口。

② 允许带有 project=myprojects 标签的 namespace 中所有 Pod 访问 default namespace 中带有 role=db 标签Pod 的6379 端口。

相关推荐
Cat_Rocky4 分钟前
K8s RBAC认证 简单讲
java·docker·kubernetes
wufeng无峰11 分钟前
docker国内镜像源
运维·docker·容器·镜像
OpenCSG15 分钟前
CSGClaw v0.3.0版本更新
运维·docker·容器
xixixi7777716 分钟前
《从心理诱导突破Claude到AI仿冒直播首张拘留单:AI安全、监管与商用的三重转折点》
大数据·网络·人工智能·安全·ai·大模型·风险
源远流长jerry22 分钟前
TCP 连接队列解析:从 listen () 到 connect ()
linux·服务器·网络·网络协议·tcp/ip
Xpower 1723 分钟前
从PHM到AI Agent-如何用OpenClaw构建设备健康诊断智能体
网络·人工智能·学习·算法
2301_7807896632 分钟前
2025年服务器漏洞生存指南:从应急响应到长效免疫的实战框架
网络·安全·web安全·架构·ddos
xcjbqd037 分钟前
SAP硬件选择详解:服务器、存储与网络的全面解析
运维·服务器·网络
东北甜妹42 分钟前
K8s RBAC 和持久化存储
云原生·容器·kubernetes
IT菜鸟程1 小时前
2026 年 Docker 镜像加速终极方案:告别拉取卡顿,一键提速
运维·docker·容器