我用kubeadm、法兰绒、ingress nginx(裸金属(在AWS ec2实例(ubuntu 20.04(上。没有EKS.
我想用主节点的公共ip访问我的服务。
我试着用helm和kubectl添加入口nginx
helm install nginx-ingress nginx-stable/nginx-ingress --set rbac.create=true
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.2/deploy/static/provider/baremetal/deploy.yaml
然后,应用了应用程序、服务、入口
之后,"kubectl get ingress" command doesn't show me ADDRESS and "kubectl get svc"
不显示EXTERNAL-IP
所以,我用命令修补了主节点的外部ip
"kubectl patch svc nginx-ingress-nginx-ingress -p '{"spec":{"externalIPs":["<ec2-master-pub-ip>"]}}'"
我查询了那个ip:port,但无法访问。此外,我用worker节点的公共ip修补了外部ip。当查询到worker节点时,我从nginx得到404错误
我想知道解决方案!!
谢谢
添加:ingress.yml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: node
spec:
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: node
port:
number: 3000
要让裸机使用服务类型LoadBalancer,您需要安装一个虚拟负载平衡器解决方案,如metalb-