How long is "too long" for probes to return an exit code?

Hello,

I’m using a python script for liveness and readiness probes and this script can take up to 10 minutes before returning an exit code of either 0 or 1. I have a few questions around this design:

  1. Is this a safe design or will it cause a “backlog” of probes with kube-scheduler?
  2. Will this design cause kube-scheduler to exhaust all available threads? (I’m not sure if kube-scheduler spawns a new thread for each probe that needs to run in the k8s cluster)
  3. What amount of time should be the maximum time taken to return a probe result?

Cluster information:

Kubernetes version: 1.15
Cloud being used: bare-metal