<p>I wanted to delete a k8s namespace but I get this error back and still didn't realize how to resolve it. Can anyone please help?</p>
<blockquote>
<p>Error from server (InternalError): Internal error occurred: failed
calling webhook &quot;namespace.validators.kubedb.com&quot;: the server is
currently unable to handle the request</p>
</blockquote>

Nesrinehk1
<p>With the info provided in the question, the error is pointing that there is a <code>validation webhook</code> configured in <code>validators</code> namespace and this <code>webhook</code> is not responding or missing.</p>
<blockquote>
<p>Error from server (InternalError): Internal error occurred: <strong>failed
calling webhook &quot;namespace.validators.kubedb.com&quot;: the server is
currently unable to handle the request</strong></p>
</blockquote>
<p>You can check the validation wehbhook by running:</p>
<pre><code>kubectl get validatingwebhookconfigurations.admissionregistration.k8s.io
</code></pre>
<p>From the below output, it is clear that your service do not have any endpoint(pods) to forward the requests.</p>
<pre><code>kubectl get ep -n validators
No resources found in validators namespace.
</code></pre>
<p>To fix this, you need to check the validation webhook and fix or delete it.</p>
<p>As OP provided the output of <code>endpoints</code> in the validator namespace, there is no endpoint associated with the service. In such case, the behavior seems to be expected. To help the OP to debug the issue, here is a simple demo showing the relation of service/pods/endpoints.</p>
<p>// following is the pod that will be exposed by the service.</p>
<pre><code>kubectl get pod my-pod -owide --show-labels
NAME     READY   STATUS    RESTARTS   AGE   IP            NODE            NOMINATED NODE   READINESS GATES   LABELS
my-pod   1/1     Running   0          22s   10.233.72.6   kube-worker-3   &lt;none&gt;           &lt;none&gt;            app=nginx
</code></pre>
<p>// note that, there is no service and endpoint associated with the pod is present</p>
<pre><code>k get svc -l app=nginx
No resources found in default namespace.

k get ep -l app=nginx
No resources found in default namespace.
</code></pre>
<p>// exposing the pod by a service called my-pod-svc</p>
<pre><code>k expose pod my-pod --name my-pod-svc --port 80
service/my-pod-svc exposed
</code></pre>
<p>//now note the service, endpoint and their IPs.</p>
<pre><code>k get svc -l app=nginx
NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
my-pod-svc   ClusterIP   10.233.26.82   &lt;none&gt;        80/TCP    21s
    
k get ep -l app=nginx
NAME         ENDPOINTS        AGE
my-pod-svc   10.233.72.6:80   7s
</code></pre>
<p>// trying to connect to the pod via service(my-pod-svc) IP</p>
<pre><code>kubectl run tmp-shell --restart=Never --rm -i --tty --image busybox -- wget -nv 10.233.26.82 -o -
Connecting to 10.233.26.82 (10.233.26.82:80)
saving to 'index.html'
index.html           100% |********************************|   615  0:00:00 ETA
'index.html' saved
pod &quot;tmp-shell&quot; deleted
</code></pre>
<p>Now deleting the pod(my-pod) that is exposed by the service my-pod-svc. This also means, deleting the endpoint of the service.</p>
<pre><code> k delete  pod my-pod --force --grace-period 0
warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely.
pod &quot;my-pod&quot; force deleted
</code></pre>
<p>Checking the endpoint status now:</p>
<pre><code>k get ep -l app=nginx
NAME         ENDPOINTS   AGE
my-pod-svc   &lt;none&gt;      11m
</code></pre>
<p>Now trying to connect to the my-pod-svc service:</p>
<pre><code>kubectl run tmp-shell --restart=Never --rm -i --tty --image busybox -- wget -nv 10.233.26.82 -o -
If you don't see a command prompt, try pressing enter.
wget: can't connect to remote host (10.233.26.82): Connection refused
pod &quot;tmp-shell&quot; deleted
pod default/tmp-shell terminated (Error)
</code></pre>
