如何进行Network Policy实践

本篇文章给大家分享的是有关如何进行Network Policy实践,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

为了演示 Network Policy,我们先部署一个 httpd 应用,其配置文件 httpd.yaml 为:

如何进行Network Policy实践

httpd 有三个副本,通过 NodePort 类型的 Service 对外提供服务。部署应用:

如何进行Network Policy实践

  • 集群节点可以访问 Service, 也可以 Ping 到副本 Pod。
    如何进行Network Policy实践

  • 现在创建如下 Network Policy:

    如何进行Network Policy实践

    验证 Network Policy 的有效性:

    1. busybox Pod 已经不能访问 Service。
      如何进行Network Policy实践

    2. 集群节点已经不能访问 Service, 也 Ping 不到副本 Pod。
      如何进行Network Policy实践

    如果希望让集群节点和集群外(192.168.56.1)也能够访问到应用,可以对 Network Policy 做如下修改:

    如何进行Network Policy实践

    现在,集群节点和集群外(192.168.56.1)已经能够访问了:

    如何进行Network Policy实践

    除了通过 ingress 限制进入的流量,也可以用 egress 限制外出的流量。大家可以参考官网相关文档和示例,这里就不赘述了。

    Kubernetes 采用的是扁平化的网络模型,每个 Pod 都有自己的 IP,并且可以直接通信。

    CNI 规范使得 Kubernetes 可以灵活选择多种 Plugin 实现集群网络。

    Network Policy 则赋予了 Kubernetes 强大的网络访问控制机制。

    以上就是如何进行Network Policy实践,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。