为什么ALB在成功创建ingress后没有启动

问题描述 投票:0回答:1

我正在尝试在 AWS EKS 上启动应用程序负载均衡器 (ALB)。我已经在集群中成功安装了应用程序负载均衡器控制器。我遵循的教程告诉我,在创建入口并应用它之后,我应该看到在我的 AWS 中创建了一个 ALB,但我没有看到。可能是什么原因?我是不是错过了什么?

我已经创建并启动了苹果服务和香蕉服务以及它们的 pod。

这是入口 YAML。我也可以成功应用此入口,但 ALB 未启动。

我正在使用 EKS k8s 版本 1.22

kubectl -n kube-system get deployment
NAME                           READY   UP-TO-DATE   AVAILABLE   AGE
aws-load-balancer-controller   2/2     2            2           19m
coredns                        2/2     2            2           38m

kubectl get ingress
NAME                     CLASS    HOSTS             ADDRESS   PORTS   AGE
my-awesome-app-ingress   <none>   testingkarlo.ml             80      14m
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-awesome-app-ingress
  labels:
    app: my-awesome-app
  annotations:
    kubernetes.io/ingress.class: alb
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/target-type: ip
spec:
  rules:
  - host: testingkarlo.ml
    http:
      paths:
        - path: /apple
          pathType: Prefix
          backend:
            service:
              name: apple-service
              port:
                number: 5678
        - path: /banana
          pathType: Prefix
          backend:
            service:
              name: banana-service
              port:
                number: 5678

apple.yaml

kind: Pod
apiVersion: v1
metadata:
  name: apple-app
  labels:
    app: apple
spec:
  containers:
    - name: apple-app
      image: hashicorp/http-echo
      args:
        - "-text=apple"

---

kind: Service
apiVersion: v1
metadata:
  name: apple-service
spec:
  selector:
    app: apple
  ports:
    - port: 5678 # Default port for image
      targetPort: 5678
  type: LoadBalancer

banana.yaml 与上面类似。

应用了apple.yaml和banana.yaml之后,两个经典的负载均衡器在AWS中上线了。

amazon-web-services kubernetes kubernetes-ingress amazon-eks aws-application-load-balancer
1个回答
0
投票

在 yaml 文件中缺少类,默认情况下它会显示经典负载均衡器。

如果没有负载均衡器出现,另一种可能是:

如果 IAM 在整个集群中看起来正常,则问题也可能是由于 VPC 链接造成的。

我们在删除 ALB 之前遇到的错误是: 由于 RequestError 导致部署模型失败:发送请求失败,原因是:发布“https://elasticloadbalancing.ap-south-1.amazonaws.com/”:拨打 tcp 172.20.4.51:443:i/o 超时

这导致删除入口和重新创建,但重新创建时,入口在 EKS 中正常运行,没有任何错误,但在 AWS 负载均衡器控制台中却没有出现

罪魁祸首是我们为API网关创建的VPC enpoint,删除VPC链接解决了问题。

© www.soinside.com 2019 - 2024. All rights reserved.