gpt4 book ai didi

kubernetes NodePort 与 ClusterIP 与 Nginx-Ingress

转载 作者:行者123 更新时间:2023-12-01 21:40:38 27 4
gpt4 key购买 nike

我有自己的微服务,到目前为止,我一直在使用 type: NodePort 以及 nginx-ingress helm chart 将服务公开到我自己的公共(public) IP使用 https;我注意到在我的微服务 helm chart 上运行 linter 时它不安全(使用 NodePort),我应该使用 ClusterIP - 有人可以解释为什么吗?

最佳答案

如果您的集群设置为可以从集群外部直接访问工作节点,那么您设置为 NodePort 类型服务的任何内容也都可以访问。特别是,这意味着 http://any-node.k8s.example.com:32345/ 可以到达您的后端服务,绕过您在入口层设置的任何控件.你通常不希望这样。

这里一个合理的方法(可能是您的 linter 所鼓励的方法)是为您的入口服务使用 NodePort 或 LoadBalancer 类型的服务。任何其他东西都应该向该入口服务注册自己(使用 native Kubernetes Ingress 对象,或 Istio VirtualService,或......)但具有用于集群内访问的 ClusterIP 类型服务。

     +------------+  NP  +---------+ CIP  +-------------+
---> | (any node) | ---> | ingress | ---> | application |
+------------+ +---------+ +-------------+
|__________________________^
a NodePort application service would allow this path
(bypassing the ingress)

关于kubernetes NodePort 与 ClusterIP 与 Nginx-Ingress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61477284/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com