网络隔离
在 kubernetes 中 pod 之间网络是互通的。 CLaaS 平台提供网络隔离方案,使应用之间网络隔离。
添加网络隔离
在开启网络隔离之前先创建了两个分区:分区 1,分区 2。然后都在上面部署了 golang
应用服务(部署帮助请查看快速启航),然后开启分区 1 的网络隔离功能。
然后查看部署的 golang
pod 的 ip 地址:
然后在分区 2 的 golang
中去 curl 分区 1 golang
提供的服务。可以看到这个时候网络已经不通。
root@my-golang-956995099-rjfxk:/go# curl 192.168.70.31
curl: (7) Failed to connect to 192.168.70.31 port 80: No route to host
添加白名单
有的时候并不希望所有的分区下的应用都不能访问该分区。这时可以添加白名单,让个别分区下的应用可以访问该分区。这里在分区 1 中将分区 2 添加到白名单。在分区中的 golang
中去 curl 分区 1 的 golang
提供的服务。这时发现网络又连通了。
root@my-golang-1140495900-rjfxk:/go# curl 192.168.71.31:80
hello, world!