<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Resolving API Server Timeout During Pod Deployment (Webhook Issue) in Software - General</title>
    <link>https://community.hpe.com/t5/software-general/resolving-api-server-timeout-during-pod-deployment-webhook-issue/m-p/7252469#M1360</link>
    <description>&lt;P&gt;&lt;STRONG&gt;Resolving API Server Timeout During Pod Deployment (Webhook Issue)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Issue Summary&lt;/STRONG&gt;&lt;BR /&gt;While deploying the OpsRamp server, the pod creation fails with a timeout error from the Kubernetes API server.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Root Cause&lt;/STRONG&gt;&lt;BR /&gt;The timeout is caused by issues in the Webhook configurations, specifically:&lt;BR /&gt;- `ValidatingWebhookConfiguration`&lt;BR /&gt;- `MutatingWebhookConfiguration`&lt;/P&gt;&lt;P&gt;These webhook calls are either unresponsive or unreachable, causing the API server to hang during pod creation.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Solution&lt;/STRONG&gt;&lt;BR /&gt;Temporarily disable the admission webhooks by modifying the API server configuration on all control plane nodes, then restart the API server to allow pod creation to succeed.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Step-by-Step Procedure&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1. Verify the API Server Service**&lt;BR /&gt;On each control plane node, run:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;systemctl cat kube-apiserver&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;2. Edit the API Server Service File**&lt;BR /&gt;Open the service file (typically located at `/usr/lib/systemd/system/kube-apiserver.service`):&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;vi /usr/lib/systemd/system/kube-apiserver.service&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Locate the line that starts with `ExecStart=` and append the following flags to disable the webhook admission plugins:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;--disable-admission-plugins=ValidatingAdmissionWebhook,MutatingAdmissionWebhook&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Repeat this step on all control plane nodes.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;3. Reload Systemd and Restart API Server**&lt;BR /&gt;After editing the service file, run the following commands:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;systemctl daemon-reexec&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;systemctl daemon-reload&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;systemctl restart kube-apiserver&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;4. Retry Pod Deployment**&lt;BR /&gt;Once all control plane API servers are restarted, attempt to deploy the OpsRamp pod again:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;kubectl apply -f &amp;lt;opsramp-pod.yaml&amp;gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Verify that the pod is created successfully.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;5. Re-enable Webhooks After Verification**&lt;BR /&gt;Once the pod deployment is successful:&lt;BR /&gt;- Go back to each control plane node.&lt;BR /&gt;- Remove the `--disable-admission-plugins=...` flag from the `kube-apiserver.service` file.&lt;BR /&gt;- Restart the API server again:&lt;/P&gt;&lt;P&gt;systemctl daemon-reexec&lt;BR /&gt;systemctl daemon-reload&lt;BR /&gt;systemctl restart kube-apiserver&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;Notes&lt;/STRONG&gt;&lt;BR /&gt;- This approach temporarily disables all dynamic admission controllers, which may bypass security or policy checks.&lt;BR /&gt;- It should only be used in controlled or emergency situations.&lt;BR /&gt;- Consider investigating and fixing the underlying webhook service (e.g., DNS issue, service down, TLS error).&lt;/P&gt;</description>
    <pubDate>Thu, 10 Jul 2025 14:16:33 GMT</pubDate>
    <dc:creator>Pramodmadhavan</dc:creator>
    <dc:date>2025-07-10T14:16:33Z</dc:date>
    <item>
      <title>Resolving API Server Timeout During Pod Deployment (Webhook Issue)</title>
      <link>https://community.hpe.com/t5/software-general/resolving-api-server-timeout-during-pod-deployment-webhook-issue/m-p/7252469#M1360</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Resolving API Server Timeout During Pod Deployment (Webhook Issue)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Issue Summary&lt;/STRONG&gt;&lt;BR /&gt;While deploying the OpsRamp server, the pod creation fails with a timeout error from the Kubernetes API server.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Root Cause&lt;/STRONG&gt;&lt;BR /&gt;The timeout is caused by issues in the Webhook configurations, specifically:&lt;BR /&gt;- `ValidatingWebhookConfiguration`&lt;BR /&gt;- `MutatingWebhookConfiguration`&lt;/P&gt;&lt;P&gt;These webhook calls are either unresponsive or unreachable, causing the API server to hang during pod creation.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Solution&lt;/STRONG&gt;&lt;BR /&gt;Temporarily disable the admission webhooks by modifying the API server configuration on all control plane nodes, then restart the API server to allow pod creation to succeed.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Step-by-Step Procedure&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1. Verify the API Server Service**&lt;BR /&gt;On each control plane node, run:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;systemctl cat kube-apiserver&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;2. Edit the API Server Service File**&lt;BR /&gt;Open the service file (typically located at `/usr/lib/systemd/system/kube-apiserver.service`):&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;vi /usr/lib/systemd/system/kube-apiserver.service&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Locate the line that starts with `ExecStart=` and append the following flags to disable the webhook admission plugins:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;--disable-admission-plugins=ValidatingAdmissionWebhook,MutatingAdmissionWebhook&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Repeat this step on all control plane nodes.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;3. Reload Systemd and Restart API Server**&lt;BR /&gt;After editing the service file, run the following commands:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;systemctl daemon-reexec&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;systemctl daemon-reload&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;systemctl restart kube-apiserver&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;4. Retry Pod Deployment**&lt;BR /&gt;Once all control plane API servers are restarted, attempt to deploy the OpsRamp pod again:&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;kubectl apply -f &amp;lt;opsramp-pod.yaml&amp;gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Verify that the pod is created successfully.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;5. Re-enable Webhooks After Verification**&lt;BR /&gt;Once the pod deployment is successful:&lt;BR /&gt;- Go back to each control plane node.&lt;BR /&gt;- Remove the `--disable-admission-plugins=...` flag from the `kube-apiserver.service` file.&lt;BR /&gt;- Restart the API server again:&lt;/P&gt;&lt;P&gt;systemctl daemon-reexec&lt;BR /&gt;systemctl daemon-reload&lt;BR /&gt;systemctl restart kube-apiserver&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;Notes&lt;/STRONG&gt;&lt;BR /&gt;- This approach temporarily disables all dynamic admission controllers, which may bypass security or policy checks.&lt;BR /&gt;- It should only be used in controlled or emergency situations.&lt;BR /&gt;- Consider investigating and fixing the underlying webhook service (e.g., DNS issue, service down, TLS error).&lt;/P&gt;</description>
      <pubDate>Thu, 10 Jul 2025 14:16:33 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-general/resolving-api-server-timeout-during-pod-deployment-webhook-issue/m-p/7252469#M1360</guid>
      <dc:creator>Pramodmadhavan</dc:creator>
      <dc:date>2025-07-10T14:16:33Z</dc:date>
    </item>
  </channel>
</rss>

