Troubleshooting

Edge CR status InstallLoopBackOff or UpdateLoopBackOff

After deploying or updating Edge, if the Edge CR status is InstallationLoopBackOff or UpdateLoopBackOff, as part of the output of kubectl get edge c8yedge -n c8yedge:

NAME         DOMAIN NAME     VERSION     STATUS     
c8yedge      myown.iot.com   2025.0.1    InstallLoopBackOff

Describe the Edge CR (cumulocity-iot-edge) with the command kubectl describe edge c8yedge -n c8yedge.

In the events section, you will find the reasons for the install or update failure. For example:

Name: c8yedge
Namespace: c8yedge
API Version: edge.cumulocity.com/v1
Kind: CumulocityIoTEdge

Status:
  Deploying Generation: x
  State: InstallLoopBackOff

Events:
 Type    Reason               Age    From               Message
 ------  ------               ----   ----               -------
 Normal  Installing           8m34s  cumulocityiotedge  installing Cumulocity Edge version tagged as 2025.0.1
……
……
 Normal  InstallLoopBackOff   1m00s  cumulocityiotedge  waiting for mongo server to be ready

MongoDB requires a CPU that supports AVX instructions. Ensure that the CPU type of the Kubernetes node supports AVX instructions. Use the command lscpu to check whether the CPU supports AVX instructions. Check the logs of the Edge operator, MongoDB and core pods to get more insights.

The Edge operator logs:

kubectl logs -n c8yedge deployment.apps/c8yedge-operator-controller-manager -c manager

MongoDB logs:

kubectl logs -n c8yedge --all-containers --prefix statefulset.apps/edge-db-rs0

Core logs:

kubectl logs -n c8yedge --all-containers --prefix statefulset.apps/c8ycore-sts

Pending external cumulocity-ontoplb service IP

The external IP is not assigned to the cumulocity-ontoplb service.

Output of kubectl get service cumulocity-ontoplb -n c8yedge:

NAME                TYPE           CLUSTER-IP          EXTERNAL-IP   PORT(S)                                                        AGE
cumulocity-ontoplb  LoadBalancer   X.X.X.X **REDACTED  <pending>     443:32443/TCP,8443:32442/TCP,1883:32083/TCP,8883:32084/TCP ... 12m           

For more information, see Assigning an external IP.

Edge not showing up as a device in the cloud tenant

Edge is unable to register itself as a device in your cloud tenant.

Describe the Edge CR kubectl describe edge c8yedge -n c8yedge

In the events section, you will find an event with a reason. For example:

Name: c8yedge
Namespace: c8yedge
API Version: edge.cumulocity.com/v1
Kind: CumulocityIoTEdge

Status:
  Deployed Generation:  x
  State: Ready

Events:
 Type      Reason                       Age    From               Message
 ----      ------                       ----   ----               -------
 Normal    Installing                   8m34s  cumulocityiotedge  installing Cumulocity Edge version tagged as 2025.0.1
……
……
 Normal    Ready                        1m00s  cumulocityiotedge  Cumulocity Edge installation is complete, and it's now running version 2025.0.1
 Warning   FailedToRegisterCloudDevice  0m30s  cumulocityiotedge  Device failed to connect to <cloud tenant domain>, you might not have uploaded the device certificate to Cumulocity

Possible reasons:

  • You didn’t add the Certificate Authority (CA) certificate to the trusted certificate list of your tenant. For completing the registration process, sign into your cloud tenant and follow the steps described in Managing trusted certificates to add the Certificate Authority (CA) certificate to the trusted certificate list of your tenant. For more details, see Device certificates. For more information see Connecting Edge to the cloud.

  • The specified cloud tenant domain is not reachable or incorrect.

If you must contact product support, include the output of the diagnostics dump. For more information about accessing diagnostic logs, see Accessing logs.