Configurando o Kubectl (remoto)
Vamos gerar um kubeconfig para o kubectl para autenticação do usuário administrador.
Cada kubeconfig requer um servidor Kubernetes API para se conectar. Para oferecer suporte à alta disponibilidade usaremos o endereço IP atribuído ao balanceador de carga externo frente a API Kubernetes.
Criando a configuração
KUBERNETES_PUBLIC_ADDRESS=$(aws elbv2 describe-load-balancers \ --load-balancer-arns ${LOAD_BALANCER_ARN} \ --output text --query 'LoadBalancers[].DNSName') echo "$KUBERNETES_PUBLIC_ADDRESS" kubectl config set-cluster kubernetes-the-hard-way \ --certificate-authority=ca.pem \ --embed-certs=true \ --server=https://${KUBERNETES_PUBLIC_ADDRESS}:443 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
Verificação
kubectl get componentstatuses
Resultado Esperado
NAME STATUS MESSAGE ERROR controller-manager Healthy ok scheduler Healthy ok etcd-1 Healthy {"health":"true"} etcd-2 Healthy {"health":"true"} etcd-0 Healthy {"health":"true"}
kubectl get nodes
Resultado Esperado
NAME STATUS ROLES AGE VERSION ip-10-0-1-20 Ready3m35s v1.18.6 ip-10-0-1-21 Ready 3m35s v1.18.6 ip-10-0-1-22 Ready 3m35s v1.18.6