大家好,我想要一些帮助的问题:我正在使用rancher提供给我的kubernetes集群(所以我没有配置它)
但是它有一个nginx入口控制器:
kubectl -n ingress-nginx get all -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pod/default-http-backend-598b7d7dbd-fgpns 1/1 Running 3 48d 192.168.121.64 pr-k8s-fe-fastdata-worker-02 <none> <none>
pod/nginx-ingress-controller-72d8s 1/1 Running 0 6d 172.34.10.123 pr-k8s-fe-fastdata-worker-03 <none> <none>
pod/nginx-ingress-controller-rn4fw 1/1 Running 0 6d 172.34.10.192 pr-k8s-fe-fastdata-worker-01 <none> <none>
pod/nginx-ingress-controller-v2m8b 1/1 Running 0 6d 172.34.10.173 pr-k8s-fe-fastdata-worker-02 <none> <none>
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
service/default-http-backend ClusterIP 192.168.33.89 <none> 80/TCP 48d app=default-http-backend
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE CONTAINERS IMAGES SELECTOR
daemonset.apps/nginx-ingress-controller 3 3 3 3 3 <none> 48d nginx-ingress-controller rancher/nginx-ingress-controller:nginx-0.35.0-rancher1 app=ingress-nginx
NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTOR
deployment.apps/default-http-backend 1/1 1 1 48d default-http-backend rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1 app=default-http-backend
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
replicaset.apps/default-http-backend-598b7d7dbd 1 1 1 48d default-http-backend rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1 app=default-http-backend,pod-template-hash=598b7d7dbd
,当我正在观看视频教程([Kube 59.1] Nginx Ingress in Kubernetes Revisited)我注意到,当他在Ingress命名空间中显示所有像我一样的默认backen svc时,他也有一个类型为load balancer的入口控制器svc;而我没有,那么我该如何纠正呢?谢谢你的帮助。
Nginx Ingress in Kubernetes Revisited 3:25 ->他说LoadBalancer
型的nginx-ingress-controller
来自Metallb。这意味着他运行的是本地集群,而不是云。您可以使用kubeadm
来安装它。MetalLB使LoadBalancer服务:https://metallb.universe.tf/
Kubernetes不提供网络负载均衡器的实现裸金属集群(LoadBalancer类型服务)。的Kubernetes附带的所有网络负载均衡实现将代码粘合到不同的IaaS平台(GCP、AWS、Azure…)。如果你没有运行在受支持的IaaS平台上(GCP、AWS、Azure…),loadbalancer将无限期地保持在" pending "状态创建。
裸机集群运营商只能使用两种较小的工具用户流量进入它们的集群,"NodePort"one_answers"externip"服务。这两种选择都有明显的缺点生产用途,这使得裸金属集群二等公民在Kubernetes生态系统中。
MetalLB旨在通过提供网络LB来纠正这种不平衡实现与标准网络设备集成,因此裸机集群上的外部服务也可以"正常工作"越好。
所以我设法使它工作,我的牧场主上的nginx是从牧场主应用程序目录中部署的,并且字段"部署一个服务"。设置为false,所以我升级了它并将字段设置为true,它为我部署了负载平衡服务,所以现在它工作得很好。谢谢你