Unable to create cluster on existing EC2 VM

I am trying to create a custom cluster on an EC2 instance. However I keep getting the below error. 10.0.0.180 is the internal IP for AWS. However I’ve told Rancher to use the external public IP as I’m testing for a case of setting up a cluster on a different provider.

[controlPlane] Failed to upgrade Control Plane: [[host ip-10-0-0-180 not ready]]

The command I executed is here:
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.5.5 --server https://<SERVER_IP> -token ************************–ca-checksum **************************** --address <Public_Cluster_IP> --etcd --controlplane --worker

My Docker PS output on the cluster VM is:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3aaa59c34b92 93fe9d8cc482 “kubectl apply -f /e…” 11 minutes ago Up 11 minutes k8s_rke-network-plugin-pod_rke-network-plugin-deploy-job-zplfs_kube-system_62686901-0ea0-40c7-9e21-45205c5dd285_0
b6ff8c3a982d rancher/pause:3.2 “/pause” 11 minutes ago Up 11 minutes k8s_POD_rke-network-plugin-deploy-job-zplfs_kube-system_62686901-0ea0-40c7-9e21-45205c5dd285_0
d479b5230e7a rancher/hyperkube:v1.19.6-rancher1 “/opt/rke-tools/entr…” 14 minutes ago Up 14 minutes kube-proxy
e1ea40ba34ad rancher/hyperkube:v1.19.6-rancher1 “/opt/rke-tools/entr…” 14 minutes ago Up 14 minutes kubelet
cb412a3bf512 rancher/hyperkube:v1.19.6-rancher1 “/opt/rke-tools/entr…” 14 minutes ago Up 5 minutes kube-scheduler
7f72b9dfd44f rancher/hyperkube:v1.19.6-rancher1 “/opt/rke-tools/entr…” 15 minutes ago Up 5 minutes kube-controller-manager
7792a5b1d710 rancher/hyperkube:v1.19.6-rancher1 “/opt/rke-tools/entr…” 16 minutes ago Up 16 minutes kube-apiserver
14d333e97c66 rancher/coreos-etcd:v3.4.13-rancher1 “/usr/local/bin/etcd…” 16 minutes ago Up 16 minutes etcd
2d2ee1c3af8e rancher/rancher-agent:v2.5.5 “run.sh --server htt…” 19 minutes ago Up 19 minutes thirsty_snyder

I don’t want it using the internal IP and I put the rancher vm on a different subnet from the cluster vm which can only get to each other over the public internet.