<p>I am looking for an option to remove pod from deployment/replication without deleting it. I found a good solution by 
<a href="https://www.ianlewis.org/en/performing-maintenance-pods" rel="nofollow noreferrer">using selector and labels here</a>, but it's impossible in my case since I am not a pod/service creator so I can't force selector creation. My application just manipulates pods of existing services.</p>

<p>Many thanks for a help</p>

<p>You could use a readiness probe on the pod. Then find your own way to make that probe fail. As soon as a service detects a pod is not ready, it is removed from the set of pods a service will forward connections to. This doesn't kill the pod, nor cause it to restart (liveness probe does that). It also does not disconnect current clients. You may want to wait for those connected clients to drain away if your plan is to eventually restart the pod. </p>

<p>One idea for doing this: use jmx or a rest call on the specific pod's ip and make the implementation of that tell the application to return not-ready for the readiness implementation. Same trick to switch it back to ready, or delay readiness on startup until you manually trigger that pod (e.g. if you are having the pod do some expensive startup like a DB scan/update).</p>
