Add link to BMH states documentation
[icn.git] / doc / troubleshooting.md
index 60c131e..dbc089b 100644 (file)
@@ -27,6 +27,10 @@ Examining the BareMetalHost resource of the failing machine and the
 logs of Bare Metal Operator and Ironic Pods may also provide a
 description of why the provisioning is failing.
 
+A description of the BareMetalHost states can be found in the [Bare
+Metal Operator
+documentation](https://github.com/metal3-io/baremetal-operator/blob/main/docs/baremetalhost-states.md).
+
 ### openstack baremetal
 
 In rare cases, the Ironic and Bare Metal Operator information may get
@@ -82,6 +86,22 @@ The general procedure (shown on the jump server) is:
       | uuid                  | 93366f0a-aa12-4815-b524-b95839bfa05d |
       +-----------------------+--------------------------------------+
 
+## Pod deployment fails due to Docker rate limits
+
+If a Pod fails to start and the Pod status (`kubectl describe pod
+...`) shows that the Docker pull rate limit has been reached, it is
+possible to point ICN to a [Docker registry
+mirror](https://docs.docker.com/registry/recipes/mirror/).
+
+To enable the mirror on the jump server set `DOCKER_REGISTRY_MIRROR`
+in `user_config.sh` before installing the jump server or following the
+Docker's
+[instructions](https://docs.docker.com/registry/recipes/mirror/#configure-the-docker-daemon)
+to configure the daemon.
+
+To enable the mirror in the provisioned cluster, set the
+`dockerRegistryMirrors` value of the cluster chart.
+
 ## Helm release stuck in 'pending-install'
 
 If the HelmRelease status for a chart in the workload cluster shows
@@ -99,3 +119,7 @@ this, Flux will complete reconcilation succesfully.
 Provisioning can take a fair amount of time, refer to [Monitoring
 progress](installation-guide.md#monitoring-progress) to see where the
 process is.
+
+A description of the BareMetalHost states can be found in the [Bare
+Metal Operator
+documentation](https://github.com/metal3-io/baremetal-operator/blob/main/docs/baremetalhost-states.md).