我正在运行一个裸机Kubernetes集群,并尝试使用负载均衡器来公开我的服务。我通常知道负载均衡器是底层公共云的一个功能,但随着最近对Ingress控制器的支持,似乎现在应该可以将nginx用作自托管负载均衡器。
到目前为止,我一直在按照示例here来设置一个nginx Ingress和它背后的一些测试服务。但是,我无法执行步骤6,该步骤显示运行负载平衡器的节点的外部IP,因为我的节点在addresses部分中没有ExternalIP,只有LegacyHostIP和InternalIP。
我尝试通过在服务规范中指定ExternalIP来手动将其分配给我的集群。但是,这似乎被映射为externalID。
如何手动设置节点的ExternalIP地址?
发布于 2018-11-17 03:04:56
我建议你看看MetalLB:https://github.com/google/metallb
它允许使用ARP或BGP的裸机集群中的externalIP地址。它为我们工作得很好,允许你像在云中一样简单地请求LoadBalancer服务。
发布于 2016-10-16 08:10:07
这是为在特定节点上创建的nginx服务测试和工作的东西。
apiVersion: v1
kind: Service
metadata:
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
name: http
- port: 443
protocol: TCP
targetPort: 443
name: https
externalIPs:
- '{{external_ip}}'
selector:
app: nginx假定nginx部署在上游侦听端口80,443。externalIP为节点的公网IP。
https://stackoverflow.com/questions/40058795
复制相似问题