1.7 KiB
1.7 KiB
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_PUBLIC_ADDRESS="$(gcloud compute addresses describe kubernetes-the-hard-way \
--format 'value(address)')"
kubectl config set-cluster kubernetes-the-hard-way \
--certificate-authority ca.pem \
--embed-certs \
--server "https://${KUBERNETES_PUBLIC_ADDRESS}:6443"
kubectl config set-credentials admin \
--client-certificate admin.pem \
--client-key admin-key.pem
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 version of the remote Kubernetes cluster:
kubectl version --short
output
Client Version: v1.29.1
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.29.1
List the nodes in the remote Kubernetes cluster:
kubectl get nodes
output
NAME STATUS ROLES AGE VERSION
worker-0 Ready <none> 5m38s v1.29.1
worker-1 Ready <none> 5m38s v1.29.1
worker-2 Ready <none> 5m38s v1.29.1