我有以下入口定义
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: my-ingress
namespace: kube-system
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/listen-ports: '[{"TCP": 80}, {"TCP": 9093}]' # NLB supports TCP only
alb.ingress.kubernetes.io/backend-protocol: TCP # Use TCP for NLB
service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
spec:
rules:
- host: dev-kafka-web.binary-labs.in # Replace with your domain
http:
paths:
- path: /*
pathType: Prefix
backend:
service:
name: echoserver # Replace with your service name
port:
number: 80
当我使用
kubectl
命令应用此命令时,我看到一条成功消息,但 AWS 控制台中没有配置 NLB。我尝试检查日志中的 aws-load-balancer-controller-XXXX 但没有发现错误。我错过了什么
根据您的注释,我认为您正在尝试使用 AWS 负载均衡器控制器,因此请验证以下内容:
在集群上,检查控制器是否运行没有问题,检查日志以查看它是否无法创建资源,或者甚至没有尝试
检查您的节点是否具有创建 AWS 资源的正确 IAM 权限,如果是这种情况,您可能会在控制器日志中收到错误消息
资源上的标签,控制器需要标记一些资源才能正常工作
欲了解更多详细信息,此处是AWS负载均衡器控制器的部署指南,它指示了运行入口的所有先决条件。