在ns01命名空间里创建一个名为network01的L4 CiliumNetworkPolicy网络策略,并按照如下方式配置它: 1. 允许命名空间ingress-nginx-controller的Pods,访问Deployment aaa的Pods 2. 需要双向认证
时间: 2024-10-22 14:22:02 浏览: 7
在Cilium中,要创建一个名为`network01`的L4 `CiliumNetworkPolicy`网络策略,并按照您的描述配置,可以使用Cilium的命令行工具或者通过API来操作。这里是一个简单的例子,假设您使用的是CLI,以下是步骤:
首先,确保你已经登录到包含`ingress-nginx-controller`和`aaa` Deployment的ns01命名空间中。然后,您可以运行以下命令创建网络策略:
```yaml
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: network01
spec:
endpoints:
- selector: "namespace=ingress-nginx-controller"
toPorts:
- port: "80" # 或者根据Deployment的端口配置
protocol: TCP
egress:
- toEndpointsSelector:
matchLabels:
app: aaa
fromEndpointsSelector:
matchLabels:
namespace: ns01
ports:
- port: "80" # 同上,匹配部署的端口
protocol: TCP
encryption:
enabled: true
mutualTLS:
mtlsRequired: true
```
这个策略定义了两个规则:
1. 允许`ingress-nginx-controller`命名空间内的Pods访问`aaa` Deployment的服务,允许TCP协议的80端口流量。
2. 要求双向认证,即从`ns01`命名空间发出的流量到`aaa`的流量需要经过加密并启用MTLS。
阅读全文