Spinnaker 中的错误 运行 Canary 部署

Error running Canary Deployment in Spinnaker

我正在尝试为 AWS eks 启用金丝雀部署,但我的 kayenta pod 没有启动。当我描述 pod 时,我看到了这个错误。有人可以帮忙吗?

  Warning  Unhealthy  12m (x2 over 12m)     kubelet            Readiness probe failed: wget: can't connect to remote host (127.0.0.1): Connection refused
  Warning  Unhealthy  2m56s (x59 over 12m)  kubelet            Readiness probe failed: wget: server returned error: HTTP/1.1 503

这是 pod 的状态:

NAME                               READY   STATUS    RESTARTS   AGE
spin-clouddriver-d796bdc59-tpznw   1/1     Running   0          3h40m
spin-deck-77cc75b57d-w7rfp         1/1     Running   0          3h40m
spin-echo-db954bb9-phfd5           1/1     Running   0          3h40m
spin-front50-7c5684cf9-t7vl8       1/1     Running   0          3h40m
spin-gate-78d6779854-7xqz4         1/1     Running   0          3h40m
spin-kayenta-6d7b5fdfc6-p5tcp      0/1     Running   0          21m
spin-kayenta-869c46bfcf-8t5fh      0/1     Running   0          28m
spin-orca-7ddd66758d-mpnkg         1/1     Running   0          3h40m
spin-redis-5975cfcdc8-rnm9g        1/1     Running   0          45h
spin-rosco-b7dbb577-z4szz          1/1     Running   0          3h40m

我会尝试从 Kubernetes 的角度来解决你的问题。

您遇到的错误:

  Warning  Unhealthy  12m (x2 over 12m)     kubelet            Readiness probe failed: wget: can't connect to remote host (127.0.0.1): Connection refused
  Warning  Unhealthy  2m56s (x59 over 12m)  kubelet            Readiness probe failed: wget: server returned error: HTTP/1.1 503

表示您的ReadinessProbe配置有问题。从部署中删除 ReadinessProbe “修复”了错误,但将来可能会导致更多问题。为避免这种情况,我建议使用 proper configuration:

将其添加回去

Probes have a number of fields that you can use to more precisely control the behavior of liveness and readiness checks:

  • initialDelaySeconds: Number of seconds after the container has started before liveness or readiness probes are initiated. Defaults to 0 seconds. Minimum value is 0.

  • periodSeconds: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.

  • timeoutSeconds: Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1.

  • successThreshold: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1.

  • failureThreshold: When a probe fails, Kubernetes will try failureThreshold times before giving up. Giving up in case of liveness probe means restarting the container. In case of readiness probe the Pod will be marked Unready. Defaults to 3. Minimum value is 1.

您需要根据您的应用程序行为调整探测器的配置(通常通过反复试验)。我推荐的两个资源可以帮助您: