美国VPS上K8S集群网络策略修改实战
文章分类:售后支持 /
创建时间:2025-12-23
美国VPS上K8S集群网络策略修改实战
在通过美国VPS搭建的K8S(Kubernetes,容器编排系统)集群中,网络策略的合理配置相当于为集群搭建“流量门卫”,直接决定哪些数据可以流入或流出各个容器(Pod)。本文将详细演示如何在这一环境下完成网络策略的修改与配置。
前期准备
正式操作前需完成三项准备:一是确保美国VPS上的K8S集群已稳定运行;二是掌握K8S集群管理工具(kubectl)的基础命令,这是操作集群的核心工具;三是理解网络策略的基本逻辑(控制Pod间流量的规则集)及YAML文件的编写规范,这是配置修改的基础语言。
查看现有网络策略
首先用kubectl命令查看当前策略。执行“kubectl get networkpolicies”后,终端会列出所有已创建的网络策略名称、作用对象及策略类型,类似查看小区现有的门禁规则清单,帮助快速掌握当前流量控制逻辑。
创建示例网络策略
为演示修改过程,先创建一个基础策略。以下是示例YAML文件:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: example-policy
spec:
podSelector:
matchLabels:
role: db
policyTypes:
- Ingress
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
该策略中,spec.podSelector定义目标Pod(标签为role: db的数据库Pod),policyTypes指定控制入站流量(Ingress),ingress.from则限定仅允许标签为role: frontend的前端Pod访问。通过“kubectl apply -f example-policy.yaml”完成创建,相当于为数据库Pod设置“仅允许前端Pod访问”的门禁规则。
修改网络策略
假设需要新增允许特定IP段访问数据库Pod的规则,按以下步骤操作。
编辑网络策略YAML文件
执行“kubectl edit networkpolicy example-policy”命令,系统会自动打开默认编辑器(如Vi)。在ingress.from部分新增ipBlock规则:
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
- ipBlock:
cidr: 192.168.1.0/24
其中,192.168.1.0/24表示IP范围从192.168.1.0到192.168.1.255的设备。这一修改意味着,除前端Pod外,该IP段内的流量也可访问数据库Pod,如同在门禁系统中新增“特定区域访客可进入”的规则。
保存并应用修改
在编辑器中保存修改并退出,kubectl会自动应用新策略。可通过“kubectl describe networkpolicy example-policy”查看详细规则,确认修改已生效。
验证修改效果
修改完成后需验证规则是否正确执行,可通过两种方式操作。
使用Pod进行测试
创建临时测试Pod:“kubectl run test-pod --image=busybox --rm -it -- sh”,分别从前端Pod(标签role: frontend)、192.168.1.0/24段内IP(如192.168.1.10)及其他IP尝试连接数据库Pod的服务端口(如3306)。若仅前两者能成功连接,说明策略生效。
查看日志和监控数据
通过“kubectl logs
通过上述步骤,可在美国VPS搭建的K8S集群中灵活调整网络策略。合理配置的网络策略能精准控制流量走向,既保障集群安全性,又避免不必要的资源消耗,为应用稳定运行提供关键支撑。
上一篇: 香港VPS网站运营常见问题FAQ解析
工信部备案:苏ICP备2025168537号-1