check CM

To verify if the CAPT Controller Manager was deployed correctly in your management Kubernetes cluster, you can follow these steps:

1. Check the Deployment Status

First, check the status of the CAPT Controller Manager deployment:

kubectl get deployments -n capt-system

This command lists all deployments in the capt-system namespace. You should see the deployment for the CAPT Controller Manager. The output should look something like this:

NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
capt-controller-manager     1/1     1            1           5m
  • READY: Should show 1/1, indicating that one pod is running and ready.
  • UP-TO-DATE: Should also show 1, indicating that the deployment is up to date.
  • AVAILABLE: Should show 1, meaning that the pod is available and serving requests.

2. Check the Pod Status

Next, check the status of the pods associated with the CAPT Controller Manager:

kubectl get pods -n capt-system

You should see a pod with a name like capt-controller-manager-xxxxxxxxx-xxxxx. The output should indicate that the pod is running:

NAME                                         READY   STATUS    RESTARTS   AGE
capt-controller-manager-xxxxxxxxx-xxxxx      1/1     Running   0          5m
  • STATUS: Should be Running.
  • RESTARTS: Should ideally be 0, indicating that the pod has not crashed or restarted.

3. Check Pod Logs

To ensure that the CAPT Controller Manager is functioning properly, you can check the logs of the running pod:

kubectl logs -n capt-system <pod-name>

Replace <pod-name> with the name of the CAPT Controller Manager pod (e.g., capt-controller-manager-xxxxxxxxx-xxxxx).

Review the logs for any errors or warnings. The logs should show normal operations such as reconciliations of cluster resources without any errors.

4. Check the CAPT Controller Manager’s Health

To ensure that the CAPT Controller Manager is healthy and operating as expected, you can use the following command to describe the deployment and look for any issues:

kubectl describe deployment capt-controller-manager -n capt-system

This command provides detailed information about the deployment, including events that may indicate if there were any issues during the deployment or if the pods are experiencing problems.

5. Verify Custom Resource Definitions (CRDs)

Finally, ensure that the CAPT-specific Custom Resource Definitions (CRDs) are installed correctly, as the controller manager relies on these:

kubectl get crds | grep capt

You should see CRDs related to CAPT, such as:

tinkerbellclusters.infrastructure.cluster.x-k8s.io
tinkerbellmachines.infrastructure.cluster.x-k8s.io
tinkerbellmachinetemplates.infrastructure.cluster.x-k8s.io

If these CRDs are present and the previous checks indicate that the deployment and pods are running correctly, the CAPT Controller Manager is successfully deployed and operational.

Summary

By following these steps—checking the deployment status, pod status, logs, and CRDs—you can confirm that the CAPT Controller Manager has been deployed correctly in your Kubernetes management cluster.