我在EKS
上建立了一个AWS
集群,我希望保护Kuberentes集群中的所有数据(以及EKS和外部系统之间的数据,但这样做超出了范围)。
在Kubernetes中,不同的豆荚之间使用不同的协议,主要是Rest/HTTP
,但microservice-pods with a KafkaBroker
(Zalando Postgres)之间的microservice-pods and database pods
和JDBC之间的通信,filebeat-pod and elasticsearch
之间,......
我看到了几个选项,但我不喜欢它们中的任何一个。
还有更好的选择吗?你会推荐这些选项吗?
一种可能的解决方案是在所有pod上使用nginx sidecar reverse proxy来捕获所有出站流量,并结合nginx的proxy_protocol指令与ELB和其他负载均衡器一起运行。
您可以通过修改iptables(或您在设置中选择使用的任何SDN /模式)来强制执行此操作,以强制所有出站流量进入反向代理,而不是将其发送到Internet。然后使用反向代理定义的证书将proxy_protocol
中的指令用于force all upstream TCP connections to use SSL以进行加密。
这应该适用于您定义的协议,因为它们都基于TCP。