Preliminary diagnostic data for Kubernetes troubleshooting
This document explains how to gather preliminary diagnostic data for troubleshooting Swimlane Platform deployments that include Kubernetes clusters. To get detailed information about the overall health of your cluster, you can run:
Nodes:
- Check if all the nodes are all registered correctly.
- Verify that all of the expected nodes are present and that they are all in the Ready state.
- Describe each node that doesn’t have STATUS equal Ready.
- Confirm that both the kubelet and docker services are running:
If either of the services are inactive, capture the last 3 hours of log:
Pods: Most importantly, collect information about the health of the pods within the cluster.
- Run to capture all recent events.
Note: By default, the amount of time to retain events is 1h.
- Run and capture its output.
- For each pod that’s shown in the get pods output to be in any state other than running/completed:
- Run capture its output.
- Run capture its output.
- Since the output from these several commands can be voluminous, copy each command's output into a text file and attach these files to your Support Portal ticket.
To minimize the amount of copying and pasting when formulating the above commands, try the following:
Support Bundle
If your Swimlane deployment includes an Admin console/dashboard then follow the steps below to generate and submit a Support Bundle:
- Visit https://<load-balancer-ip>:8800
- Browse to the Support/Troubleshoot section.
- Download the Support Bundle to your workstation.
- Attach the Support Bundle to your Support ticket.
Troubleshooting kubectl:
If the first attempt to invoke kubectl results in this error, The connection to the server localhost:8080 was refused…, then run:
If the output thereof is empty then:
If that works then add this export command to your Linux user profile within the Master nodes so that it’s invoked whenever you begin an SSH session.
Thank you for helping us to gather this diagnostic data!