在Kubernetes中,Service的type有以下几种:

  1. ClusterIP:此类型创建一个虚拟IP地址,用于在集群内部的Service之间提供访问。它只在集群内部可见,外部无法访问。这是默认的Service类型。

  2. NodePort:此类型在每个节点上打开一个固定的端口,用于外部访问Service。可以通过节点的IP地址和NodePort端口访问Service。NodePort范围是30000-32767之间。

  3. LoadBalancer:此类型在云环境中使用,通过云服务商提供的负载均衡器将外部流量分配到Service。它会创建一个外部负载均衡器,并将其配置为将流量转发到Service的ClusterIP。

  4. ExternalName:此类型允许将Service映射到集群外部的任意DNS名称。它通过返回CNAME记录来实现对外部服务的访问。

区别:

  • ClusterIP类型只在集群内部可见,外部无法直接访问。NodePort和LoadBalancer类型则可以通过节点的IP地址和端口号或者负载均衡器的URL来访问Service。
  • NodePort类型通过在每个节点上打开一个固定的端口来提供外部访问,而LoadBalancer类型通过云服务商提供的负载均衡器来分配外部流量。
  • ExternalName类型用于将Service映射到集群外部的DNS名称。它不会提供负载均衡或者代理流量的功能,只是简单地将Service映射到一个外部DNS名称
kind ServiceapiVersion v1metadata name nginx namespace default annotations kubesphereiocreator gxk kubesphereiodescription nginx guan fangspec selector app nginx type NodePortk8s service

原文地址: http://www.cveoy.top/t/topic/iXu9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录