【问题标题】:Kubernetes AWS EKS load balancer not provisioningKubernetes AWS EKS 负载均衡器未配置
【发布时间】:2021-03-28 22:58:42
【问题描述】:

了解 Kubernetes AWS EKS 的世界,很高兴获得支持。

我正在尝试部署节点应用程序。我在 EKS 上的 IAM 角色上附加了正确的 IAM 策略,我还在私有子网和公共子网上设置了正确的标签。

我的 Kubernetes yml 看起来像这样。

kind: Deployment
metadata:
  name: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
        - name: test
          image: test:latest
          ports:
            - containerPort: 3000
          imagePullPolicy: Always
---
kind: Service
apiVersion: v1
metadata:
  name: test
spec:
  type: LoadBalancer
  selector:
    app: test
  ports:
  - protocol: TCP
    port: 80
    targetPort: 9376

服务启动,但外部 ip 只是一直说挂起,并且没有配置负载均衡器。

谢谢

【问题讨论】:

    标签: amazon-web-services kubernetes load-balancing amazon-eks


    【解决方案1】:

    要解决此问题,您可以在 AWS EKS 集群控制平面日志下找到相关的故障日志。请参阅 AWS 的 this 文档,其中包含查看 AWS EKS 集群控制平面日志的步骤,以及启用控制平面日志的步骤。

    如果您有可用的 AWS EKS 集群控制平面日志,则可以在 CloudWatch Logs Insights 中执行以下查询。有关执行 AWS CloudWatch Logs Insights 查询的信息,请参阅来自 AWS 的 this 文档。查询完成后,查看responseObject.reason字段的值,也可以展开消息查看详情。

    fields @timestamp, @message, requestObject.kind, requestObject.metadata.name,requestObject.spec.type,responseObject.status,responseObject.message,responseObject.reason,requestObject.spec.selector.app
    | filter requestObject.spec.type='LoadBalancer' 
    | sort @timestamp desc
    

    【讨论】:

      【解决方案2】:

      如果您使用的是 Mnikube

      minikube tunnel
      

      这会对你有所帮助。

      此命令可以公开 LoadBalancer 类型的服务。

      这是参考https://minikube.sigs.k8s.io/docs/commands/tunnel/

      【讨论】:

      • 这个问题与 minikube 无关,甚至与本地开发无关。不是一个相关的答案。
      猜你喜欢
      • 1970-01-01
      • 2021-09-22
      • 2018-11-05
      • 2021-12-04
      • 2020-06-28
      • 1970-01-01
      • 2019-05-27
      • 2014-12-18
      • 2020-03-24
      相关资源
      最近更新 更多