Kubernetes kunernetes服务和入口之间的区别
我想为4个http服务器吊舱创建一个负载平衡器 我也有一个mysql豆荚 一切正常,我为http创建了一个loadbalancer服务,为mysql创建了另一个服务 我读过,我也应该创建一个入口。但我不明白什么是入口,因为一切都与服务一起工作 入口的增值是什么Kubernetes kunernetes服务和入口之间的区别,kubernetes,Kubernetes,我想为4个http服务器吊舱创建一个负载平衡器 我也有一个mysql豆荚 一切正常,我为http创建了一个loadbalancer服务,为mysql创建了另一个服务 我读过,我也应该创建一个入口。但我不明白什么是入口,因为一切都与服务一起工作 入口的增值是什么 谢谢因为您有单一服务服务http,所以您当前使用LoadBalancer服务类型的解决方案运行良好。假设您有多个基于http的服务,希望在不同的路由上对外提供这些服务。您必须为它们中的每一个创建一个LoadBalancer服务,默认情况下
谢谢因为您有单一服务服务http,所以您当前使用LoadBalancer服务类型的解决方案运行良好。假设您有多个基于http的服务,希望在不同的路由上对外提供这些服务。您必须为它们中的每一个创建一个LoadBalancer服务,默认情况下,您将为它们中的每一个获得不同的IP地址。相反,您可以使用入口,它位于这些服务的前面并执行路由 入口清单示例:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: test-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /cart
backend:
serviceName: cart
servicePort: 80
- path: /payment
backend:
serviceName: payment
servicePort: 80
在这里,您有两个不同的HTTP服务,它们由单个IP地址上的入口公开。使用入口时,每个服务不需要负载平衡器 由于您有一个服务于http的服务,因此当前使用LoadBalancer服务类型的解决方案运行良好。假设您有多个基于http的服务,希望在不同的路由上对外提供这些服务。您必须为它们中的每一个创建一个LoadBalancer服务,默认情况下,您将为它们中的每一个获得不同的IP地址。相反,您可以使用入口,它位于这些服务的前面并执行路由 入口清单示例:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: test-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /cart
backend:
serviceName: cart
servicePort: 80
- path: /payment
backend:
serviceName: payment
servicePort: 80
在这里,您有两个不同的HTTP服务,它们由单个IP地址上的入口公开。使用入口时,每个服务不需要负载平衡器 LoadBalancer类型的服务依赖于某个地方的第三方LoadBalancer和IP供应,该服务处理将第3层流量IP从外部传输到某个高编号节点端口上的节点 入口依赖于第三方入口控制器来接受第3层流量,将其开放至第7层,例如,终止TLS,并通过http fqdn/路径进行特定于协议的路由,例如到集群内可能属于ClusterIP类型的其他服务 如果您的所有服务都应该明确地公开,而没有任何进一步的过滤或其他选项,那么负载平衡器和无入口可能是正确的选择……但是负载平衡器本身并没有做很多事情……它们只是将服务公开给外部世界……在流量计费、a/B测试等方面很少
但是,如果您想在一个IP/VIP/证书后面放置多个服务,或者您想以一些奇怪的方式来引导流量,例如基于头:、客户端类型、百分比权重等,您可能需要一个入口,该入口本身将由LoadBalancer服务公开LoadBalancer类型的服务依赖于第三方LoadBalancer和IP供应,该服务在某个地方处理从外部到某个高编号节点端口上的节点的第3层流量IP 入口依赖于第三方入口控制器来接受第3层流量,将其开放至第7层,例如,终止TLS,并通过http fqdn/路径进行特定于协议的路由,例如到集群内可能属于ClusterIP类型的其他服务 如果您的所有服务都应该明确地公开,而没有任何进一步的过滤或其他选项,那么负载平衡器和无入口可能是正确的选择……但是负载平衡器本身并没有做很多事情……它们只是将服务公开给外部世界……在流量计费、a/B测试等方面很少 然而,如果您想在一个IP/VIP/证书后面放置多个服务,或者您想以一些奇怪的方式(如基于头:、客户端类型、百分比权重等)来引导流量,那么您可能需要一个入口,它本身将由LoadBalancer服务公开