Kubernetes 网络策略指南
有了网络策略,你也做得到!
这里包含一系列的 Kubernetes 网络策略的相关用例以及相关的 YAML 文件。想要知道如何在 Kubernetes 中对某一应用的流量进行阻拦或者限制,请继续阅读。
尝试网络策略的最简单方法就是创建一个新的 Google Container Engine 集群。在现有集群上应用网络策略,可能会造成网络中断。在成文期间,多数云供应商尚未提供内置的网络策略支持。
如果你对网络策略一窍不通,建议首先阅读我的文章:Securing Kubernetes Cluster Networking。
开始之前
- 创建集群
基础
- 拦截到一个应用的所有流量
- 限制到一个应用的流量
- 允许所有目标为某个应用的流量
命名空间
- 拦截当前命名空间中,所有白名单之外的流量
- 拦截所有来自于其他命名空间的流量
- 允许来自所有命名空间的,目标为某应用的流量
- 允许所有来自于某命名空间的流量
- 允许来自某命名空间某些 Pod 的流量
- 限制当前命名空间内到某应用的流量
控制外部客户端流量
- 允许外部客户端的流量
进阶
- 只允许目标为指定端口的流量
- 用多个选择器选择允许通过的流量
控制外发流量(Egress)
- 拦截来自某应用的外发流量
- 拦截命名空间内所有白名单之外的 Egress 流量
- 限制来从指定应用到某些 Pod 的 egress 流量。
- 只允许目标是命名空间内某 Pod 的流量。
- 拦截外部的 egress 流量
作者
Ahmet Alp Balkan (@ahmetb).
Copyright 2017, Google Inc. Distributed under Apache License Version 2.0 ,see LICENSE for details.
声明: 这并非 Google 官方文档。