首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取502个坏网关的eks aws-alb入口

获取502个坏网关的eks aws-alb入口
EN

Stack Overflow用户
提问于 2022-01-13 10:47:41
回答 1查看 1.6K关注 0票数 0

我在AWS中通过Terraform创建了一个EKS集群,使用terraform-aws-模块/ek/aws作为模块。这个集群有一个pod (golang应用程序),使用nodeport作为服务和入口。我遇到的问题是,当我到达端点时,我会得到502个坏网关。

我的配置:

部署:

代码语言:javascript
运行
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: golang-deployment
  labels:
    app: golang-app
spec:
  replicas: 1
  selector:
    matchLabels:
      name: golang-app
  template:
    metadata:
      labels:
        name: golang-app
    spec:
      containers:
      - name: golang-app
        image: 019496914213.dkr.ecr.eu-north-1.amazonaws.com/goland:1.0
        ports:
          - containerPort: 9000

服务:

代码语言:javascript
运行
复制
kind: Service
apiVersion: v1
metadata:
  name: golang-service
spec:
  type: NodePort
  selector:
    app: golang-app
  ports:
    - protocol: TCP
      port: 9000
      targetPort: 9000

信息:

代码语言:javascript
运行
复制
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: app
  annotations:
    alb.ingress.kubernetes.io/scheme: internet-facing
    kubernetes.io/ingress.class: alb
  labels:
    app: app
spec:
  rules:
    - http:
        paths:
          - path: /api/v2
            pathType: ImplementationSpecific
            backend:
              service:
                name: golang-service
                port:
                  number: 9000



kubectl get service
golang-service    NodePort    172.20.44.34     <none>        9000:32184/TCP   106m

集群和节点的安全组是由terraform-aws/ek/aws模块创建的。

我查了几件东西:

代码语言:javascript
运行
复制
kubectl port-forward golang-deployment-5894d8d6fc-ktmmb 9000:9000

工作!我可以在我的计算机上看到使用localhost:9000的golang应用程序

代码语言:javascript
运行
复制
kubectl exec curl -i --tty nslookup golang-app

Server:    172.20.0.10
Address 1: 172.20.0.10 kube-dns.kube-system.svc.cluster.local

Name:      golang-app
Address 1: 172.20.130.130 golang-app.default.svc.cluster.local

工作!

代码语言:javascript
运行
复制
kubectl exec curl -i --tty curl golang-app:9000

curl: (7) Failed to connect to golang-app port 9000: Connection refused

不工作

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2022-01-13 11:01:07

您应该调用服务而不是部署。

golang-service是svc名称而不是部署名。

代码语言:javascript
运行
复制
kubectl exec curl -i --tty curl golang-service:9000
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70695291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档