6.0 KiB
| reviewers | title | content_type | weight | |
|---|---|---|---|---|
|
Install and Set Up kubectl on Windows | task | 10 |
{{% heading "prerequisites" %}}
You must use a kubectl version that is within one minor version difference of your cluster. For example, a v{{< skew currentVersion >}} client can communicate with v{{< skew currentVersionAddMinor -1 >}}, v{{< skew currentVersionAddMinor 0 >}}, and v{{< skew currentVersionAddMinor 1 >}} control planes. Using the latest compatible version of kubectl helps avoid unforeseen issues.
Install kubectl on Windows
The following methods exist for installing kubectl on Windows:
Install kubectl binary with curl on Windows
-
Download the latest {{< skew currentVersion >}} patch release: [kubectl {{< skew currentPatchVersion >}}](https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe).
Or if you have
curlinstalled, use this command:curl.exe -LO "https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe"{{< note >}} To find out the latest stable version (for example, for scripting), take a look at https://dl.k8s.io/release/stable.txt. {{< /note >}}
-
Validate the binary (optional)
Download the
kubectlchecksum file:curl.exe -LO "https://dl.k8s.io/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe.sha256"Validate the
kubectlbinary against the checksum file:-
Using Command Prompt to manually compare
CertUtil's output to the checksum file downloaded:CertUtil -hashfile kubectl.exe SHA256 type kubectl.exe.sha256 -
Using PowerShell to automate the verification using the
-eqoperator to get aTrueorFalseresult:$(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256)
-
-
Append or prepend the
kubectlbinary folder to yourPATHenvironment variable. -
Test to ensure the version of
kubectlis the same as downloaded:kubectl version --clientOr use this for detailed view of version:
kubectl version --client --output=yaml
{{< note >}}
Docker Desktop for Windows
adds its own version of kubectl to PATH. If you have installed Docker Desktop before,
you may need to place your PATH entry before the one added by the Docker Desktop
installer or remove the Docker Desktop's kubectl.
{{< /note >}}
Install on Windows using Chocolatey, Scoop, or winget
-
To install kubectl on Windows you can use either Chocolatey package manager, Scoop command-line installer, or winget package manager.
{{< tabs name="kubectl_win_install" >}} {{% tab name="choco" %}}
choco install kubernetes-cli{{% /tab %}} {{% tab name="scoop" %}}
scoop install kubectl{{% /tab %}} {{% tab name="winget" %}}
winget install -e --id Kubernetes.kubectl{{% /tab %}} {{< /tabs >}}
-
Test to ensure the version you installed is up-to-date:
kubectl version --client -
Navigate to your home directory:
# If you're using cmd.exe, run: cd %USERPROFILE% cd ~ -
Create the
.kubedirectory:mkdir .kube -
Change to the
.kubedirectory you just created:cd .kube -
Configure kubectl to use a remote Kubernetes cluster:
New-Item config -type file
{{< note >}} Edit the config file with a text editor of your choice, such as Notepad. {{< /note >}}
Verify kubectl configuration
{{< include "included/verify-kubectl.md" >}}
Optional kubectl configurations and plugins
Enable shell autocompletion
kubectl provides autocompletion support for Bash, Zsh, Fish, and PowerShell, which can save you a lot of typing.
Below are the procedures to set up autocompletion for PowerShell.
{{< include "included/optional-kubectl-configs-pwsh.md" >}}
Install kubectl convert plugin
{{< include "included/kubectl-convert-overview.md" >}}
-
Download the latest release with the command:
curl.exe -LO "https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl-convert.exe" -
Validate the binary (optional).
Download the
kubectl-convertchecksum file:curl.exe -LO "https://dl.k8s.io/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl-convert.exe.sha256"Validate the
kubectl-convertbinary against the checksum file:-
Using Command Prompt to manually compare
CertUtil's output to the checksum file downloaded:CertUtil -hashfile kubectl-convert.exe SHA256 type kubectl-convert.exe.sha256 -
Using PowerShell to automate the verification using the
-eqoperator to get aTrueorFalseresult:$($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
-
-
Append or prepend the
kubectl-convertbinary folder to yourPATHenvironment variable. -
Verify the plugin is successfully installed.
kubectl convert --helpIf you do not see an error, it means the plugin is successfully installed.
-
After installing the plugin, clean up the installation files:
del kubectl-convert.exe kubectl-convert.exe.sha256
{{% heading "whatsnext" %}}
{{< include "included/kubectl-whats-next.md" >}}