Instalar y configurar kubectl en Windows
Antes de empezar
Debes usar una versión de kubectl que este dentro de una diferencia de versión menor de tu clúster. Por ejemplo, un cliente v1.28 puede comunicarse con versiones v1.27, v1.28, y v1.29 del plano de control.
El uso de la última versión de kubectl ayuda a evitar problemas imprevistos.
Instalar kubectl en Windows
Existen los siguientes métodos para instalar kubectl en Windows:
Instalar el binario de kubectl con curl en Windows
-
Descarga la última versión 1.28.4.
O si tiene
curl
instalado, use este comando:curl -LO https://dl.k8s.io/release/v1.28.4/bin/windows/amd64/kubectl.exe
Nota: Para conocer la última versión estable (por ejemplo, para secuencias de comandos), eche un vistazo a https://dl.k8s.io/release/stable.txt. -
Validar el binario (opcional)
Descargue el archivo de comprobación de kubectl:
curl -LO https://dl.k8s.io/v1.28.4/bin/windows/amd64/kubectl.exe.sha256
Valide el binario kubectl con el archivo de comprobación:
-
Usando la consola del sistema para comparar manualmente la salida de
CertUtil
con el archivo de comprobación descargado:CertUtil -hashfile kubectl.exe SHA256 type kubectl.exe.sha256
-
Usando PowerShell puede automatizar la verificación usando el operador
-eq
para obtener un resultado deTrue
oFalse
:$(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256))
-
-
Agregue el binario a su
PATH
. -
Para asegurar que la versión de
kubectl
es la misma que descargada, ejecute:kubectl version --client
kubectl
a el PATH
.
Si ha instalado Docker Desktop antes, es posible que deba colocar su entrada en el PATH
antes de la agregada por el instalador de Docker Desktop o elimine el kubectl
.
Instalar en Windows usando Chocolatey o Scoop
-
Para instalar kubectl en Windows, puede usar Chocolatey como administrador de paquetes o el instalador Scoop desde línea de comandos.
choco install kubernetes-cli
scoop install kubectl
-
Para asegurarse de que la versión que instaló esté actualizada, ejecute:
kubectl version --client
-
Navegue a su directorio de inicio:
# Si estas usando cmd.exe, correr: cd %USERPROFILE% cd ~
-
Cree el directorio
.kube
:mkdir .kube
-
Cambie al directorio
.kube
que acaba de crear:cd .kube
-
Configure kubectl para usar un clúster de Kubernetes remoto:
New-Item config -type file
Verificar la configuración de kubectl
Para que kubectl encuentre y acceda a un clúster de Kubernetes, necesita un
archivo kubeconfig, que se crea automáticamente cuando creas un clúster usando
kube-up.sh
o implementar con éxito un clúster de Minikube.
De forma predeterminada, la configuración de kubectl se encuentra en ~/.kube/config
.
Verifique que kubectl esté configurado correctamente obteniendo el estado del clúster:
kubectl cluster-info
Si ve una respuesta de URL, kubectl está configurado correctamente para acceder a su clúster.
Si ve un mensaje similar al siguiente, kubectl no está configurado correctamente o no puede conectarse a un clúster de Kubernetes.
The connection to the server <server-name:port> was refused - did you specify the right host or port?
Por ejemplo, si tiene la intención de ejecutar un clúster de Kubernetes en su computadora portátil (localmente), primero necesitará instalar una herramienta como Minikube y luego volver a ejecutar los comandos indicados anteriormente.
Si kubectl cluster-info devuelve la respuesta de la URL pero no puede acceder a su clúster, para verificar si está configurado correctamente, use:
kubectl cluster-info dump
Plugins y configuraciones opcionales de kubectl
Habilitar el autocompletado de shell
kubectl proporciona soporte de autocompletado para Bash y Zsh, lo que puede ahorrarle mucho tiempo al escribir.
A continuación se muestran los procedimientos para configurar el autocompletado para Zsh, si lo está ejecutando en Windows.
El script de completado de kubectl para Zsh se puede generar con el comando kubectl completion zsh
. Obtener el script de completado en su shell habilita el autocompletado de kubectl.
Para hacerlo en todas sus sesiones de shell, agregue lo siguiente a su perfil ~/.zshrc
:
source <(kubectl completion zsh)
Si tiene un alias para kubectl, puede extender el completado del shell para trabajar con ese alias:
echo 'alias k=kubectl' >>~/.zshrc
echo 'compdef __start_kubectl k' >>~/.zshrc
Después de recargar su shell, el autocompletado de kubectl debería estar funcionando.
Si recibe un error como complete:13: command not found: compdef
,
luego agregue lo siguiente al comienzo de su perfil ~/.zshrc
:
autoload -Uz compinit
compinit
Instalar el plugin kubectl-convert
Un plugin para la herramienta de línea de comandos de Kubernetes kubectl
, que le permite convertir manifiestos entre diferentes versiones de la API. Esto puede ser particularmente útil para migrar manifiestos a una versión no obsoleta de la API con la versión más reciente de Kubernetes.
Para obtener más información, visite migrar a APIs no obsoletas
-
Descargue la última versión con el comando:
curl -LO https://dl.k8s.io/release/v1.28.4/bin/windows/amd64/kubectl-convert.exe
-
Validar el binario (opcional)
Descargue el archivo de comprobación kubectl-convert:
curl -LO https://dl.k8s.io/v1.28.4/bin/windows/amd64/kubectl-convert.exe.sha256
Valide el binario kubectl-convert con el archivo de comprobación:
-
Usando la consola del sistema puede comparar manualmente la salida de
CertUtil
con el archivo de comprobación descargado:CertUtil -hashfile kubectl-convert.exe SHA256 type kubectl-convert.exe.sha256
-
Usando PowerShell puede automatizar la verificación usando el operador
-eq
para obtener un resultado deTrue
oFalse
:$($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
-
-
Agregue el binario a su
PATH
. -
Verifique que el plugin se haya instalado correctamente
kubectl convert --help
Si no ve un error, significa que el plugin se instaló correctamente.
Siguientes pasos
- Instalar Minikube
- Consulte las guías de introducción para obtener más información sobre la creación de clústeres.
- Aprenda a iniciar y exponer su aplicación.
- Si necesita acceso a un clúster que no creó, consulte la guia de Compartir el acceso al clúster.
- Lea los documentos de referencia de kubectl