Continental Innovates with Rancher and Kubernetes
The nginx-proxy container is deployed on every node that does not have the controlplane role. It provides access to all the nodes with the controlplane role by dynamically generating the NGINX configuration based on available nodes with the controlplane role.
nginx-proxy
controlplane
The container is called nginx-proxy and should have status Up. The duration shown after Up is the time the container has been running.
Up
docker ps -a -f=name=nginx-proxy
Example output:
docker ps -a -f=name=nginx-proxy CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c3e933687c0e rancher/rke-tools:v0.1.15 "nginx-proxy CP_HO..." 3 hours ago Up 3 hours nginx-proxy
The generated configuration should include the IP addresses of the nodes with the controlplane role. The configuration can be checked using the following command:
docker exec nginx-proxy cat /etc/nginx/nginx.conf
error_log stderr notice; worker_processes auto; events { multi_accept on; use epoll; worker_connections 1024; } stream { upstream kube_apiserver { server ip_of_controlplane_node1:6443; server ip_of_controlplane_node2:6443; } server { listen 6443; proxy_pass kube_apiserver; proxy_timeout 30; proxy_connect_timeout 2s; } }
The logging of the containers can contain information on what the problem could be.
docker logs nginx-proxy