Cloud Foundry Enterprise Environment deployment fails

The deployment of Cloud Foundry Enterprise Environment fails.

Cloud Foundry Enterprise Environment deployment fails due to an invalid .tgz file

Symptoms

load_cloudpak.sh fails with the message:

manifest.json: no such file or directory

Resolving the problem

An invalid .tgz file was specified on the command line. Specify the correct ibm-cfee-installer-archive.tgz file.

Cloud Foundry Enterprise Environment deployment fails due to incorrect configuration of Docker

Symptoms

load_cloudpak.sh fails with the message:

Error response from daemon: Get https://9.37.33.88:8500/v2/: x509: certificate signed by unknown authority
Unable to docker login to 9.37.33.88

Resolving the problem

Docker is not properly configured. Refer to Installing IBM software onto IBM Cloud Private.

Cloud Foundry Enterprise Environment deployment fails due to insufficient worker nodes

Symptoms

The Cloud Foundry deployment tool shows that the Deploy Kubernetes-based Cloud Foundry state failed. The following error message appears in the log:

[ERROR] Current number of worker node size: 4 is less than the required number of worker node size: 5 ( 2 control plane nodes and 3 cell nodes), exit...

Resolving the problem

The number of Kubernetes worker nodes is not sufficient for the number of control plane instances plus the number of cell instances needed by Cloud Foundry Enterprise Environment. Either increase the number of Kubernetes worker nodes or decrease the number of cell instances or control plane instances and try again.

Cloud Foundry Enterprise Environment deployment fails due to Diego cell not starting

Symptoms

The Diego-cell pods, in namespace cf, remain in NotReadyState forever and eventually the deployment fails.

Resolving the problem

List the state of the Cloud Foundry pods:

kubectl get  pods -n cf

Log in to the Diego-cell pod or pods that show NotReadyState:

kubectl exec -n cf -it diego-cell-0 /bin/bash

Check if monit is running:

monit summary

Start monit if it is not running:

monit -lv

NOTE: If you experience this symptom, complete the steps prior to the Cloud Foundry Enterprise Environment deployment timing out and failing.

Miscellaneous commands

Display the Cloud Foundry Enterprise Environment pods

Use the following command:

kubectl get pods -n uaa
kubectl get pods -n cf

Check the logs of a Cloud Foundry Enterprise Environment cell pod

Use the following command:

kubectl log -n cf -c diego-cell diego-cell-0

Log in to a Cloud Foundry Enterprise Environment pod

  1. Determine the namespace and pod name by using the command in the previous section, then use the following command:

    kubectl exec -it -n <namespace> <pod name> bash
    

    Example:

    kubectl exec -it -n cf diego-cell-0 bash
    
  2. Use standard Cloud Foundry Enterprise Environment debug commands and procedures.

    sudo su -
    monit summary
    ls -al /var/vcap/sys/log
    

Check the kube-dns settings for the wildcard domains

  1. Display the kube-dns settings.

    kubectl get configmap kube-dns -n kube-system -o=yaml
    
  2. Edit the kube-dns settings. Note: Be cautious when you edit this file because it might cause misconfiguration of your environment.

    kubectl edit configmap kube-dns -n kube-system