• svc和ingress的关系


    在Kubernetes中,SVC有三种类型,分别是ClusterIP、NodePort和LoadBalancer。而Ingress则是一种服务类型的扩展,它主要用于处理HTTP和HTTPS流量,并提供了对集群内部服务的路由和负载均衡功能。

    下面简要介绍SVC的三种类型和Ingress之间的关系:

    • ClusterIP:这种类型的SVC只能在其所在的集群内部访问,它通过虚拟IP地址(VIP)提供服务。当请求到达时,Kubernetes会根据SVC的负载均衡策略将请求转发到后端的一个Pod实例上。由于ClusterIP类型的SVC只能在集群内部访问,因此它与Ingress之间没有直接关系。
    • NodePort:这种类型的SVC在每个Node上开放一个端口,使得用户可以在任何Node的特定端口上访问SVC暴露的服务。NodePort类型的SVC通常用于将集群内部的服务暴露到集群外部,使得外部能够访问集群内部的服务。NodePort与Ingress可以结合使用,通过Ingress将外部请求路由到NodePort类型的SVC。
    • LoadBalancer:这种类型的SVC在云平台或Kubernetes集群外部提供负载均衡服务。它通常与NodePort或ClusterIP类型的SVC结合使用,将请求路由到后端的SVC或Pod实例上。与Ingress类似,LoadBalancer类型的SVC也提供了对外部请求的负载均衡和路由功能。然而,它们的使用场景略有不同。LoadBalancer通常用于在多个Kubernetes集群之间提供负载均衡和服务发现功能,而Ingress则主要用于处理HTTP和HTTPS流量,并根据路由规则将请求转发到后端的SVC。

    总之,SVC的三种类型(ClusterIP、NodePort和LoadBalancer)和Ingress之间存在一定的关系。其中,ClusterIP类型的SVC只能在集群内部访问,因此与Ingress没有直接关系;NodePort类型的SVC可以与Ingress结合使用,将外部请求路由到后端的SVC;LoadBalancer类型的SVC则通常用于在多个Kubernetes集群之间提供负载均衡和服务发现功能。

    NodePort与Ingress可以结合使用,通过Ingress将外部请求路由到NodePort类型的SVC。这个过程是怎么的:

    当NodePort与Ingress结合使用时,外部请求可以通过Ingress路由到NodePort类型的SVC。这个过程可以按照以下步骤进行:

    1. 创建一个NodePort类型的SVC,该SVC将集群内部的服务暴露到集群外部。在SVC的配置中,可以指定在每个Node上开放哪个端口来转发请求。
    2. 创建一个Ingress资源,该资源包含路由规则和后端服务的信息。在Ingress资源的配置中,可以指定将外部请求路由到NodePort类型的SVC的地址和端口。
    3. Ingress控制器会监听Kubernetes集群中的Ingress资源更新。当Ingress资源更新时,Ingress控制器会获取新的路由规则并实时更新其内部的路由表。
    4. 当外部请求到达时,Ingress控制器会根据请求的URL路径和查询参数等信息来匹配Ingress资源中定义的规则。如果匹配成功,则将请求转发到后端的SVC;如果匹配失败,则将请求返回给客户端。
    5. Ingress控制器会将请求转发到NodePort类型的SVC的地址和端口上。SVC会接收到请求并将其转发到后端的一个Pod实例上进行处理。

    通过这种方式,外部请求可以通过Ingress路由到NodePort类型的SVC,从而实现将集群内部的服务暴露给外部访问的目的。需要注意的是,具体实现过程可能因不同的云平台和Kubernetes发行版而有所差异,上述步骤仅提供了一个基本的参考流程。

  • 相关阅读:
    ansible自动化运维工具
    PasswordPusher:能通过URL安全传递密码
    详解vue3的ref和reactive
    短视频创作有什么建议吗,如何把视频变成爆款?
    【Mybatis-Plus在SpringBoot项目中的使用(自动代码生成,太方便了!)】
    基于SpringBoot+Vue的旅游管理系统
    网站制作定制标准有哪些?什么是网站制作定制?
    Python办公自动化之Word
    shell 判断语句
    Wireshark TS | 应用传输缓慢问题
  • 原文地址:https://blog.csdn.net/weixin_40838333/article/details/134250755