# Configuring kubectl for Remote Access In this lab you will generate a kubeconfig file for the `kubectl` command line utility based on the `admin` user credentials. > Run the commands in this lab from the same directory used to generate the admin client certificates. ## The Admin Kubernetes Configuration File Each kubeconfig requires a Kubernetes API Server to connect to. To support high availability the IP address assigned to the external load balancer fronting the Kubernetes API Servers will be used. Generate a kubeconfig file suitable for authenticating as the `admin` user: ``` { KUBERNETES_LB_ADDRESS=192.168.5.30 kubectl config set-cluster kubernetes-the-hard-way \ --certificate-authority=ca.crt \ --embed-certs=true \ --server=https://${KUBERNETES_LB_ADDRESS}:6443 kubectl config set-credentials admin \ --client-certificate=admin.crt \ --client-key=admin.key kubectl config set-context kubernetes-the-hard-way \ --cluster=kubernetes-the-hard-way \ --user=admin kubectl config use-context kubernetes-the-hard-way } ``` ## Verification Check the health of the remote Kubernetes cluster: ``` kubectl get componentstatuses ``` > output ``` NAME STATUS MESSAGE ERROR controller-manager Healthy ok scheduler Healthy ok etcd-1 Healthy {"health":"true"} etcd-0 Healthy {"health":"true"} ``` List the nodes in the remote Kubernetes cluster: ``` kubectl get nodes ``` > output ``` NAME STATUS ROLES AGE VERSION worker-1 NotReady 118s v1.13.0 worker-2 NotReady 118s v1.13.0 ``` Note: It is OK for the worker node to be in a `NotReady` state. Worker nodes will come into `Ready` state once networking is configured. Next: [Deploy Pod Networking](12-configure-pod-networking.md)