Debugging
- Check on the KKP-pods by issuing a
kubectl get pod -n kubermatic
- If any of them is not running, execute
kubectl logs -n kubermatic $PODNAME
to find out the issue
The individual components and their purpose are:
kubermatic-ui
: Provides the UIkubermatic-api
: Provides the APImaster-controller
: Sets up access for users to projects and clusterscontroller-manager
: Creates all the components required for a cluster control plane
Check for Problems With an Individual User Cluster
- Find the cluster-id by selecting going to the details view of your cluster in the UI. The URL looks something like this, the cluster id is the last part:
https://kubermatic/projects/project-id/dc/dc-name/clusters/cluster-id
- Get the
kubeconfig
for your seed cluster - Check if there are any errors in the events for the cluster in question by issuing a
kubectl describe cluster cluster-id
- Check if all pods for the cluster are running by executing
kubectl get pods -n cluster-$CLUSTER_ID
- If that is not the case, check the log of the pod in question by issuing a
kubectl logs -n cluster-$CLUSTER_ID $PODNAME
- If you want to play around with flags or other settings for a pod, you can make KKP stop managing the cluster by running
kubectl edit cluster $CLUSTER_ID
and setting .spec.pause
to true
- If you want more detailed logs from KKP, you can edit one of its deployments, e.G.
kubectl edit deployment kubermatic-controller-manager-v1 -n kubermatic
, and set the verbosity by adjusting the default of -v=2
to e.G. -v=4
Check for Problems With Machines for an Individual User Cluster
- Get the
kubeconfig
to your cluster via the UI - Configure
kubectl
to use it by running export KUBECONFIG=$DOWNLOADED_KUBECONFIG_FILE
- Get the machines via
kubectl get machine -n kube-system
- Check the events for the machines by running
kubectl describe machine -n kube-system $MACHINE_NAME