1. Execute the prepare command inside the Deployment Container.
    Note: If you have used Non-Empty Passphrase for SSH Key generation (required for passwordless SSH communication), then you must execute the following commands inside the Deployment Container, before running the Ansible script.
    [root@wdc-10-214-147-149 ~]# eval "$(ssh-agent -s)"
    Agent pid 3112829
    [root@wdc-10-214-147-149 ~]# ssh-add ~/.ssh/id_rsa
    Enter passphrase for /root/.ssh/id_rsa: <==Enter the NON-EMPTY 
    Passphrase that is being provided during the NON-EMPTY ssh-key Generation process
    Identity added: /root/.ssh/id_rsa ([email protected])
    
    root [ ~ ]# cd /root/k8s-installer/
    root [ ~/k8s-installer ]# export ANSIBLE_CONFIG=/root/k8s-installer/scripts/ansible/ansible.cfg LANG=en_US.UTF-8
    root [ ~/k8s-installer ]# ansible-playbook scripts/ansible/prepare.yml -e @scripts/ansible/vars.yml --skip-tags check-vm-resources --become
    
    Note: There will be some fatal messages, which will be displayed on the console and ignored by the Ansible script during execution. These messages does not have any functional impact and can be safely ignored.
  2. Execute the Kubernetes Cluster installation command inside the Deployment Container.
    root [ ~/k8s-installer ]# ansible-playbook -i inventory/<your-cluster-name>/hosts.yml scripts/ansible/deploy_caas.yml -u <your-SSH-username> --become -e @scripts/ansible/internal_vars.yml -e @scripts/ansible/vars.yml
    Note:
    1. If the VMware vCenter password is commented in the vars.yaml file, then you will be prompted to provide the vCenter password when the following Ansible Script is executed.
    2. There will be some fatal messages, which will be displayed on the console and ignored by the Ansible script during execution. These messages does not have any functional impact and can be safely ignored.
  3. Ensure that the Kubernetes installation is successful and the below successful message is displayed on the console.

    CaaS Deployment is successful.

  4. After the Kubernetes cluster installation completes, kubeconfig file is generated under /root/.kube/<your-cluster-name>. Export the kubeconfig file using export KUBECONFIG=/root/.kube/<your-cluster-name> and proceed with the following steps to ensure if the deployment is successful.
  5. Verify the node status after the Kubernetes cluster deployment.
    kubectl get nodes
    Note: Ensure that all the nodes are in ready state before starting the VMware Telco Cloud Service Assurance upgrade.
  6. Verify the Harbor pods are up and running.
    kubectl get pods -A | grep harbor
    Note:
    1. If the Kubernetes deployment fails, while waiting for the nodelocaldns PODs to come up then Kubernetes installation script should be re-run. The Kubernetes deployment will resume from that point.
    2. To apply an update to one or many components of the Kubernetes Cluster (CaaS) deployment. The update could be a simple configuration change like changing the location of a log file or a major upgrade of the Load Balancer, Storage interfaces or the Harbor container registry. For more information, see Patching the CaaS Deployment Using the TCX CaaS Installer section in the VMware Telco Cloud Service Assurance Troubleshooting Guide.