简体   繁体   English

Kube.netes 就绪探测警告没有详细信息

[英]Kubernetes readiness probe warning has no details

I've made a deployment in GKE with a readiness probe.我已经使用就绪探测在 GKE 中进行了部署。 My container is coming up but it seems the readiness probe is having some difficulty.我的容器即将出现,但准备就绪探测似乎遇到了一些困难。 When I try to describe the pod I see that there are many probe warnings but it's not clear what the warning is.当我尝试描述 pod 时,我看到有很多探测警告,但不清楚警告是什么。

Events:
  Type     Reason                   Age                   From                     Message
  ----     ------                   ----                  ----                     -------
  Normal   Scheduled                43m                   default-scheduler        Successfully assigned default/tripvector-7996675758-7vjxf to gke-tripvector2-default-pool-78cf58d9-5dgs
  Normal   LoadBalancerNegNotReady  43m                   neg-readiness-reflector  Waiting for pod to become healthy in at least one of the NEG(s): [k8s1-07274a01-default-tripvector-np-60000-a912870e]
  Normal   Pulling                  43m                   kubelet                  Pulling image "us-west1-docker.pkg.dev/triptastic-1542412229773/tripvector/tripvector"
  Normal   Pulled                   43m                   kubelet                  Successfully pulled image "us-west1-docker.pkg.dev/triptastic-1542412229773/tripvector/tripvector" in 888.583654ms
  Normal   Created                  43m                   kubelet                  Created container tripvector
  Normal   Started                  43m                   kubelet                  Started container tripvector
  Normal   LoadBalancerNegTimeout   32m                   neg-readiness-reflector  Timeout waiting for pod to become healthy in at least one of the NEG(s): [k8s1-07274a01-default-tripvector-np-60000-a912870e]. Marking condition "cloud.google.com/load-balancer-neg-ready" to True.
  Warning  ProbeWarning             3m1s (x238 over 42m)  kubelet                  Readiness probe warning:

I've tried examining events with kubectl get events but that also doesn't provide extra details on the probe warning:我尝试使用kubectl get events检查事件,但也没有提供有关探测警告的额外详细信息:

 ❯❯❯ k get events
LAST SEEN   TYPE      REASON                    OBJECT                             MESSAGE
43m         Normal    LoadBalancerNegNotReady   pod/tripvector-7996675758-7vjxf    Waiting for pod to become healthy in at least one of the NEG(s): [k8s1-07274a01-default-tripvector-np-60000-a912870e]
43m         Normal    Scheduled                 pod/tripvector-7996675758-7vjxf    Successfully assigned default/tripvector-7996675758-7vjxf to gke-tripvector2-default-pool-78cf58d9-5dgs
43m         Normal    Pulling                   pod/tripvector-7996675758-7vjxf    Pulling image "us-west1-docker.pkg.dev/triptastic-1542412229773/tripvector/tripvector"
43m         Normal    Pulled                    pod/tripvector-7996675758-7vjxf    Successfully pulled image "us-west1-docker.pkg.dev/triptastic-1542412229773/tripvector/tripvector" in 888.583654ms
43m         Normal    Created                   pod/tripvector-7996675758-7vjxf    Created container tripvector
43m         Normal    Started                   pod/tripvector-7996675758-7vjxf    Started container tripvector
3m38s       Warning   ProbeWarning              pod/tripvector-7996675758-7vjxf    Readiness probe warning:

How can I get more details on how/why this readiness probe is giving off warnings?我如何才能获得有关此就绪探测器如何/为何发出警告的更多详细信息?

EDIT: the logs of the pod are mostly empty as well ( klf is an alias I have to kubectl logs):编辑:pod 的日志也大部分是空的( klf是我必须对 kubectl 日志使用的别名):

 ❯❯❯ klf tripvector-6f4d4c86c5-dn55c
(node:1) [DEP0131] DeprecationWarning: The legacy HTTP parser is deprecated.
{"line":"87","file":"percolate_synced-cron.js","message":"SyncedCron: Scheduled \"Refetch expired Google Places\" next run @Tue Mar 22 2022 17:47:53 GMT+0000 (Coordinated Universal Time)","time":{"$date":1647971273653},"level":"info"}

Regarding the error in the logs “DeprecationWarning: The legacy HTTP parser is deprecated.”关于日志中的错误“DeprecationWarning:旧版 HTTP 解析器已弃用。” , it is due to the legacy HTTP parser being deprecated with the pending End-of-Life of Node.js 10.x . ,这是由于遗留的 HTTP 解析器被弃用,Node.js 10.x 的生命周期即将结束 It will now warn on use, but otherwise continue to function and may be removed in a future Node.js 12.x release.它现在会在使用时发出警告,但在其他方面会继续到 function,并且可能会在未来的Node.js 12.x版本中删除。 Use this URL for more reference Node v12.22.0 (LTS) .使用此 URL 获取更多参考节点 v12.22.0 (LTS)

On the other hand, about the kubelet 's “ProbeWarning” reason in the warning events on your container, Health check (liveness & readiness) probes using an HTTPGetAction will no longer follow redirects to different host-names from the original probe request.另一方面,关于容器警告事件中kubelet“ProbeWarning”原因,使用HTTPGetAction健康检查(活动性和就绪性)探测将不再遵循与原始探测请求不同的主机名的重定向。 Instead, these non-local redirects will be treated as a Success (the documented behavior).相反,这些非本地重定向将被视为成功(记录的行为)。 In this case an event with reason "ProbeWarning" will be generated, indicating that the redirect was ignored.在这种情况下,将生成原因为“ProbeWarning”的事件,指示重定向被忽略。 If you were previously relying on the redirect to run health checks against different endpoints, you will need to perform the healthcheck logic outside the Kubelet , for instance by proxying the external endpoint rather than redirecting to it.如果您之前依赖重定向对不同的端点运行健康检查,您将需要在Kubelet外部执行健康检查逻辑,例如通过代理外部端点而不是重定向到它。 You can verify the detailed root cause of this in the following Kube.netes 1.14 release notes .您可以在以下Kube.netes 1.14 发行说明中验证详细的根本原因。 There is no way to see more detailed information about the “ProbeWarning” in the Events' table.无法在事件表中查看有关“ProbeWarning”的更多详细信息。 Use the following URLs as a reference too Kube.netes emitting ProbeWarning , Confusing/incomplete readiness probe warning and Add probe warning message body .也使用以下 URL 作为参考Kube.netes emitting ProbeWarning ,Confusing /incomplete readiness probe warningAdd probe warning message body

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 移除 Kubernetes 就绪探针 - Remove Kubernetes Readiness Probe Kubernetes mongodb 就绪探测失败 - Kubernetes mongodb readiness probe failure 状态集的就绪探测,而不是单个 pod/容器 - Readiness probe for statefulset, not individual pod/container AKS AGIC:就绪探测失败:获取“http://192.168.0.12:8123/health/ready”:超出上下文截止日期 - AKS AGIC: Readiness probe failed: Get "http://192.168.0.12:8123/health/ready": context deadline exceeded 有没有办法检索 kube.netes 容器的临时存储使用详细信息? - Is there a way to retrieve kubernetes container's ephemeral-storage usage details? 谷歌云运行准备检查 - 如何? - readiness check for google cloud run - how? 在 Apigee HealthMonitor 中检查就绪端点 state - Check readiness endpoint state in Apigee HealthMonitor 即使节点有 memory 可用,也不会安排 Kube.netes pod - Kubernetes pods are not scheduled even when nodes has memory available Helm - 无法访问 Kube.netes 集群:服务器已要求客户端提供凭据 - Helm - Kubernetes cluster unreachable: the server has asked for the client to provide credentials Google Cloud Run Liveness Probe with Terraform - Google Cloud Run Liveness Probe with Terraform
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM