Kubernetes 如何在onprem VM上部署kubernertes服务(类型LoadBalancer)?

Kubernetes 如何在onprem VM上部署kubernertes服务(类型LoadBalancer)?,kubernetes,kubernetes-ingress,Kubernetes,Kubernetes Ingress,如何在onprem VM上部署kubernertes服务(类型LoadBalancer)?当我使用type=LoadBalcer时,它会将外部IP显示为“挂起”,但如果我部署在GKS上,使用相同的yaml,一切都可以正常工作。我的问题是-: 如果我在Onprem虚拟机上使用type=LoadBalcer,我们需要负载平衡器吗? 我可以在yaml中手动分配LoadBalncer IP吗?您需要设置metalLB MetalLB钩住Kubernetes集群,并提供网络负载平衡器实现。简而言之,它允许

如何在onprem VM上部署kubernertes服务(类型LoadBalancer)?当我使用type=LoadBalcer时,它会将外部IP显示为“挂起”,但如果我部署在GKS上,使用相同的yaml,一切都可以正常工作。我的问题是-:

如果我在Onprem虚拟机上使用type=LoadBalcer,我们需要负载平衡器吗?
我可以在yaml中手动分配LoadBalncer IP吗?

您需要设置metalLB

MetalLB钩住Kubernetes集群,并提供网络负载平衡器实现。简而言之,它允许您在不在云提供商上运行的集群中创建类型为
负载平衡器
的Kubernetes服务,因此不能简单地连接到付费产品以提供负载平衡器

安装运行

kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.3/manifests/namespace.yaml
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.3/manifests/metallb.yaml

有关详细信息,请单击安装

您需要安装metalLB

MetalLB钩住Kubernetes集群,并提供网络负载平衡器实现。简而言之,它允许您在不在云提供商上运行的集群中创建类型为
负载平衡器
的Kubernetes服务,因此不能简单地连接到付费产品以提供负载平衡器

安装运行

kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.3/manifests/namespace.yaml
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.3/manifests/metallb.yaml

有关更多详细信息,请单击安装

检查“一个简单、安全且功能强大的CNCF认证Kubernetes发行版”平台可能会有所帮助。它被设计用于在裸金属<强节点>上的任何云、VM或<强>上,为私有云提供可扩展和安全的基础。PKE具有云感知能力,包括越来越多的云和平台集成

当我使用type=LoadBalcer时,它会将外部IP显示为“挂起”,但如果我部署在GKS上,使用相同的yaml,一切都可以正常工作

如果您创建负载平衡器服务(例如,尝试公开您自己的基于TCP的服务,或安装入口控制器),云提供商集成将负责创建所需的云资源,并写回您的服务可用的端点。如果您没有用于此目的的云提供商集成或控制器,您的服务资源将保持挂起状态

对于Kubernetes,负载平衡器服务是将集群或网格之外的世界的服务(冗余或非冗余)公开给其他服务、内部用户或internet的最简单和最常见的方法

负载平衡作为一个概念可以发生在OSI网络模型的不同级别上,主要发生在L4(传输层,例如TCP)和L7(应用层,例如HTTP)上。在Kubernetes中,服务是L4的抽象,而入口是L7路由的通用解决方案

您需要设置metalLB

MetalLB是最流行的用于LoadBalancer云集成的prem替代品之一。整个解决方案在Kubernetes集群中运行

主要组件是集群内Kubernetes控制器,它监视LB服务资源,并根据ConfigMap中提供的配置,从专用池为新服务分配和写回IP地址。它为每个服务维护一个引导节点,并根据工作模式,通过BGP或ARP(在发生故障切换时发送未经请求的ARP数据包)进行播发

MetalLB可以通过两种方式运行:要么将所有请求转发到leader节点上的POD,要么使用kubeproxy将请求分发到所有节点

第7层(通常为HTTP/HTTPS)负载平衡器设备,如F5 BIG-IP或基于HAProxy和Nginx的解决方案,可与适用的入口控制器集成。如果您有这样的应用程序,那么在大多数情况下就不需要负载平衡器实现


希望这能为“裸机主机上的负载平衡器”问题提供一些线索

检查“一个简单、安全且功能强大的CNCF认证Kubernetes分发”平台可能会有所帮助。它被设计用于在裸金属<强节点>上的任何云、VM或<强>上,为私有云提供可扩展和安全的基础。PKE具有云感知能力,包括越来越多的云和平台集成

当我使用type=LoadBalcer时,它会将外部IP显示为“挂起”,但如果我部署在GKS上,使用相同的yaml,一切都可以正常工作

如果您创建负载平衡器服务(例如,尝试公开您自己的基于TCP的服务,或安装入口控制器),云提供商集成将负责创建所需的云资源,并写回您的服务可用的端点。如果您没有用于此目的的云提供商集成或控制器,您的服务资源将保持挂起状态

对于Kubernetes,负载平衡器服务是将集群或网格之外的世界的服务(冗余或非冗余)公开给其他服务、内部用户或internet的最简单和最常见的方法

负载平衡作为一个概念可以发生在OSI网络模型的不同级别上,主要发生在L4(传输层,例如TCP)和L7(应用层,例如HTTP)上。在Kubernetes中,服务是L4的抽象,而入口是L7路由的通用解决方案

您需要设置metalLB

MetalLB是最流行的用于LoadBalancer云集成的prem替代品之一。整个解决方案在Kubernetes集群中运行

主要组件是集群内Kubernetes控制器,它监视LB服务资源,并根据ConfigMap中提供的配置,从专用池为新服务分配和写回IP地址。它为每个服务维护一个引导节点,并根据工作模式,通过BGP或ARP(在发生故障切换时发送未经请求的ARP数据包)进行播发

MetalLB可以通过两种方式运行:要么将所有请求转发到leader节点上的POD,要么使用kubepr将请求分发到所有节点