microsoft / mindaro

Bridge to Kubernetes - for Visual Studio and Visual Studio Code
MIT License
307 stars 106 forks source link

LPK Agent Readiness probe fails (GRPC) #179

Open Nico-VanHaaster opened 3 years ago

Nico-VanHaaster commented 3 years ago

Describe the bug When using non-standard readiness probes (GRPC) the created LPK agent pods do not respond correctly.

To Reproduce The example below shows the command we execute for the readiness checks. The LPK agent wont have the "grpc_health_probe" binary on the agent so causes the probes to fail. readinessProbe: exec: command: ["grpc_health_probe", "-addr=:8100"] initialDelaySeconds: 60 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 2

Expected behavior A clear and concise description of what you expected to happen.

Logs Pod Logs for image: bridgetokubernetes.azurecr.io/lpkremoteagent:0.1.6 Warning Unhealthy 46s (x16 over 3m16s) kubelet, aks-agentpool-27033144-vmss000000 (combined from similar events): Readiness probe errored: rpc error: code = Unknown desc = failed to exec in container: failed to start exec "90a2bc2ec70f8722fa9b528e770868d0a1965514cbaddfec3fbb2e4c16193736": OCI runtime exec failed: exec failed: container_linux.go:370: starting container process caused: exec: "grpc_health_probe": executable file not found in $PATH: unknown

Additional context We use GRPC health probes for our containers instead of standard HTTP probes. Ideally we should be able to remove the rediness probes from the LPK agent.

rakeshvanga commented 3 years ago

@Nico-VanHaaster Thanks for opening the issue and providing the details. I believe that we should handle this case and have created a work item on our side to investigate and fix the issue.