我是Kubernetes的新手。我跟随Kesley Hightower的Kubernetes the hard way以及this在Azure中设置Kubernetes。现在,所有服务都可以正常运行。但是我无法使用负载均衡器公开流量。我尝试添加类型为Service
的LoadBalancer
对象,但外部IP显示为<pending>
。我需要添加入口以暴露流量。
nginx-service.yaml
apiVersion: v1
kind: Service
metadata:
labels:
app: nginx-service
name: nginx-service
spec:
type: LoadBalancer
externalIPs:
- <ip>
ports:
- name: "80"
port: 80
targetPort: 80
- name: "443"
port: 443
targetPort: 443
selector:
app: nginx-service
谢谢,
最佳答案
默认情况下,Kubernetes The Hard Way提出的解决方案不包括LoadBalancer的解决方案。它永远挂起的事实是预期的行为。您需要为此使用开箱即用的解决方案。一个非常常用的是MetalLB。
MetalLB不会为您分配外部IP,它将在我们的VPC内部分配一个内部IP,您必须创建必要的路由规则才能将流量路由到该IP。
关于nginx - 使用Ingress Kubernetes公开流量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61505347/