gpt4 book ai didi

kubernetes - 外部请求通过Ingress进入k8s pod的确切流程图是什么?

转载 作者:行者123 更新时间:2023-12-02 12:18:22 26 4
gpt4 key购买 nike

所有

  • 我对k8s在服务中的nodePort和ClusterIP类型非常了解。
  • 但是我对Ingress方式非常困惑,因为通过这种Ingress方式,请求将如何进入k8s的Pod中?

  • 假设K8的主IP为 1.2.3.4 ,在Ingress设置之后,并且可以通过端口(例如 9000 )连接到后端服务(例如 myservice )

    现在,如何在外部访问此 myservice:9000 ?即通过 1.2.3.4 吗?由于 1.2.3.4 机器上没有入口。

    许多文档总是说是通过在入口YAML文件中配置的“foo.com”来访问此文件的。但这确实很有趣,因为 xxx.com 肯定需要DNS,让您重新创建自己喜欢的任何 xxx.com 成为真正的网站并可以将 xxx.com 映射到您的计算机上并不是魔术!

    最佳答案

    图片的关键部分是Ingress Controller。它是代理(could be nginx or haproxy or another ingress type)的实例,并在集群内部运行。它充当入口点,使您可以添加更复杂的路由规则。它读取与应用程序一起部署并定义Ingress Resourcesrouting rules。这样,每个应用程序都可以说出Ingress Controller路由到该应用程序需要执行的操作。

    由于 Controller 在集群内部运行,因此需要将其暴露给外界。您可以通过NodePort进行此操作,但是如果您使用的是云提供商,则使用LoadBalancer更为常见。这为您提供了一个到达Ingress Controller 的外部IP和端口,您可以在其中指向DNS条目。如果确实将DNS指向它,那么您可以选择使用基于DNS的路由规则(例如为不同的应用程序使用不同的子域)。

    'Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what?'文章有一些很好的解释和图表-这是Ingress的图表:

    enter image description here

    关于kubernetes - 外部请求通过Ingress进入k8s pod的确切流程图是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53865013/

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