首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GCP负载均衡器后端状态未知

GCP负载均衡器后端状态未知
EN

Stack Overflow用户
提问于 2018-08-24 05:29:00
回答 5查看 11.7K关注 0票数 19

我大吃一惊。

我有一个试运行和生产环境。这两个环境具有相同的部署、服务、入口、防火墙规则,并且都在/上提供200服务。

但是,在打开转移环境并调配相同的入口后,转移服务将失败,并返回Some backend services are in UNKNOWN state。生产仍在进行中。

前端和后端pods在GKE上都准备好了。我手动测试了运行状况检查,当我访问/时,它们都通过了。

我在日志或gcp文档中看不到任何指向正确方向的东西。我可能弄坏了什么?

ingress.yaml

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: fanout-ingress
  annotations:
    kubernetes.io/ingress.global-static-ip-name: "STATIC-IP"
spec:
  backend:
    serviceName: frontend
    servicePort: 8080
  tls:
  - hosts:
    - <DOMAIN>
    secretName: staging-tls
  rules:
  - host: <DOMAIN>
    http:
      paths:
      - path: /*
        backend:
          serviceName: frontend
          servicePort: 8080
      - path: /backend/*
        backend:
          serviceName: backend
          servicePort: 8080

frontend.yaml

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  labels:
    app: frontend
  name: frontend
  namespace: default
spec:
  ports:
  - nodePort: 30664
    port: 8080
    protocol: TCP
    targetPort: 8080
  selector:
    app: frontend
  type: NodePort
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  generation: 15
  labels:
    app: frontend
  name: frontend
  namespace: default
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  selector:
    matchLabels:
      app: frontend
  minReadySeconds: 5
  template:
    metadata:
      labels:
        app: frontend
    spec:
      containers:
      - image: <our-image>
        name: frontend
        ports:
        - containerPort: 8080
          protocol: TCP
        readinessProbe:
          httpGet:
            path: /
            port: 8080
          initialDelaySeconds: 60
          periodSeconds: 30
          timeoutSeconds: 3
        livenessProbe:
          httpGet:
            path: /
            port: 8080
          initialDelaySeconds: 60
          periodSeconds: 30
          timeoutSeconds: 3
EN

回答 5

Stack Overflow用户

发布于 2018-08-24 14:54:47

昨天就连这本指南https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer

没有起作用。不知道发生了什么,但即使等待了30分钟以上,入口仍报告后端的未知状态。

24小时后,情况似乎好多了。L7 http入口可以工作,但在报告健康的后端时会有很大的延迟。

票数 7
EN

Stack Overflow用户

发布于 2018-08-24 08:43:14

我想这是个bug。我创建了一个新的集群,无法复制。如果有人再次点击这个,我建议尝试一个新的集群。

票数 2
EN

Stack Overflow用户

发布于 2018-08-27 22:53:26

您是否仍然遇到此问题?

我尝试复制以下谷歌公共文档:Setting up HTTP Load Balancing with Ingressto deploy:

使用示例web应用程序容器镜像的web应用程序,在端口8080上侦听HTTP服务器:

然而,它现在似乎起作用了。因此,如果您仍然有这个问题,请考虑使用Google issue-tracking tool向kubernetes/ingress gce提交public issue。包括尽可能多的细节,包括重现的步骤,以便此问题可以获得更好的可见性以及更多的采样。

请注意:

问题跟踪器User Content and Conduct Policy详细说明了不适合提交给问题跟踪器的信息类型,其中包括敏感的个人信息和垃圾邮件。请不要在问题跟踪器中提交不适当的内容。

存储库输出$ kubectl describe ing

代码语言:javascript
复制
sunny@test-dev:~$ kubectl describe ing basic-ingress
Name:             basic-ingress
Namespace:        default
Address:          xx.xxx.xxx.228
Default backend:  web:8080 (10.8.2.6:8080)
Rules:
Host  Path  Backends
----  ----  --------
*     *     web:8080 (10.8.2.6:8080)
Annotations:
target-proxy:     k8s-tp-default-basic-ingress--f5636f071d87exxx
url-map:          k8s-um-default-basic-ingress--f5636f071d87exxx
backends:         {"k8s-be-31544--f5636f071d87exxx":"HEALTHY"}
forwarding-rule:  k8s-fw-default-basic-ingress--f5636f071d87exxx
Events:
Type    Reason   Age                From                     Message
----    ------   ----               ----                     -------
Normal  Service  7m (x376 over 2d)  loadbalancer-controller  default backend set to web:31544
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51994508

复制
相关文章

相似问题

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