To keep things simple, I think its better to just check the TCP port for liveness and readiness in kubernetes as it doesn't require knowledge of health-check endpoint (HTTP path) but just the port number. Any guide on the disadvantages of just relying on the TCP port for service health-check is greatly appreciated, please assume that the pods are not proxy for some other service and all the business-logic is in the pods itself.
Choosing between TCP probe and HTTP probe for liveness and readiness in kubernetes
3.5k Views Asked by wings At
1
There are 1 best solutions below
Related Questions in HTTP
- My get request for http is very slow
- Angular multiple http requests chrome android
- HttpRequestContext vs HttpContext
- Converting curl command to iOS
- getting google contacts using shuttlecloud
- Node.js http.get example
- How can hide url value in php
- Symfony2 - handle HTTP/Entity user access restrictions
- Angular http interceptor responseError doesn't have statusText
- Which of the following hostnames are valid?
- Send Http request at specific time
- Rails - read file from POST request / octet-stream
- Python - Cookies & BeautifulSoup
- Npm requests stopped by home router
- POST Android json data
Related Questions in KUBERNETES
- How to know a Pod's own IP address from inside a container in the Pod?
- Who will decide the "specified number of pods" for replication controller in kubernetes?
- Access other containers of a pod in Kubernetes
- Kubernetes cluster using Vagrant not working after restart
- kubectl not installed with gcloud SDK
- How do I access the Kubernetes api from within a pod container?
- Exposing several services with Vagrant and Kubernetes on my own server
- Does Kubernetes provision new VMs for pods on my cloud platform?
- Any suggestion for running Aerospike on Kubernetes on CoreOS on GCE?
- Kubernetes - kubectl exec bash - session drop and line width
- Google Container Engine (GKE): "Hello Wordpress" tutorial not working (ERR_CONNECTION_REFUSED)
- Kubernetes Pod Creation Speed
- How can i set max count of pods for replication-controller per node?
- Is there a way to tell kubernetes to update your containers?
- Postgres with Kubernetes and persistentDisk
Related Questions in TCP
- having spring integration tcpserver to manage clients and send them messages
- psuedo TCP multicast with os.dup2() in python?
- Retrieve Data From EOC(Eithernet Over coxial) device
- Connecting a web client to a c++ server with TCP
- ECONNRESET on node.js RabbitMQ consumer in Azure
- how to respond from plain tcp client to MessagingTemplate's sendAndReceive
- Java Socket - how does the read() method know if the end of stream has been reached?
- Scala - TCP Packet frame using Akka
- Re-transmission concept in TCP
- Issues regarding multiplayer networking: input
- Getting and Sending Data between a Server and Client
- Jamod Slave Example, can not connect to slave
- Android Phone not sending data over TCP/ip
- Lot of TIME_WAIT connections while using RestTemplate?
- How do I use the windows service and WCF to update some record in database?
Related Questions in READINESSPROBE
- How to check the readiness probes on Services Bus?
- Choosing between TCP probe and HTTP probe for liveness and readiness in kubernetes
- What should a kubernetes readiness check check
- Does Kubernetes Liveness and Readiness check if python is running?
- how to quickly fail the Kubernetes Readiness probe?
- Can K8S pods marked as "Not ready" still receive direct requests?
- kubernetes' readinessProbe prevents inter-pod communication during startup
- Spring boot default Liveness and Readiness probes
- How can you specify an exec command with arguments in k8s deployment yaml?
- Liveness and Readiness probes failing in Kubernetes cluster- istio proxy sidecar injection is enabled in application
- Kubernetes: How to write livenessprobe and readinessprobe with Exec having pipe
- Kubernetes Probes in deployment template
- Liveness and readiness probe connection refused
- Is it possible for a readiness probe failure can mark the pod as unhealthy?
- S3 - Kubernetes probe
Related Questions in LIVENESSPROBE
- Choosing between TCP probe and HTTP probe for liveness and readiness in kubernetes
- Liveness probe failing but the endpoint is accessible from different pods
- Does Kubernetes Liveness and Readiness check if python is running?
- How to use secret in probes authorization header on kubernetes?
- initialDelaySeconds value from configMap
- What's the difference between Pod lifecycle and liveness?
- Any way to use k8s exec liveness probes in a distroless container image?
- Spring boot default Liveness and Readiness probes
- How can you specify an exec command with arguments in k8s deployment yaml?
- Spring Boot 2.3 Liveness Probe feature fails in graceful shutdown
- Kubernetes liveness probe restarted container keeps failing to access some resources
- How to add Kubernetes livenessprob and readinessprob to my .net core console application?
- Are Kubernetes liveness probe failures voluntary or involuntary disruptions?
- Liveness and Readiness probes failing in Kubernetes cluster- istio proxy sidecar injection is enabled in application
- Kubernetes Probes in deployment template
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
In my experience HTTP is chosen over TCP when you have a reverse-proxy sidecar in front of your app in the same pod, e.g. nginx. In this case, nginx will always accept TCP even when the app is not ready yet. Thus you'd want HTTP.
Otherwise:
/health(like check db connection)If all of the above is true - just use TCP.
TIP You don't even need to know the port number for TCP, you can use named port: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#use-a-named-port