website/content/ja/docs/tasks/tools/install-kubectl-windows.md

204 lines
7.5 KiB
Markdown

---
title: Windows上でのkubectlのインストールおよびセットアップ
content_type: task
weight: 10
---
## {{% heading "prerequisites" %}}
kubectlのバージョンは、クラスターのマイナーバージョンとの差分が1つ以内でなければなりません。
たとえば、クライアントがv{{< skew currentVersion >}}であれば、v{{< skew currentVersionAddMinor -1 >}}、v{{< skew currentVersionAddMinor 0 >}}、v{{< skew currentVersionAddMinor 1 >}}のコントロールプレーンと通信できます。
最新の互換性のあるバージョンのkubectlを使うことで、不測の事態を避けることができるでしょう。
## Windowsへkubectlをインストールする
Windowsへkubectlをインストールするには、次の方法があります:
- [curlを使用してWindowsへkubectlのバイナリをインストールする](#install-kubectl-binary-with-curl-on-windows)
- [Chocolatey、Scoopまたはwingetを使用してWindowsへインストールする](#install-nonstandard-package-tools)
### curlを使用してWindowsへkubectlのバイナリをインストールする{#install-kubectl-binary-with-curl-on-windows}
1. 最新の{{< skew currentVersion >}}のパッチリリースをダウンロードしてください:
[kubectl {{< skew currentPatchVersion >}}](https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe)。
または、`curl`がインストールされていれば、次のコマンドも使用できます:
```powershell
curl.exe -LO "https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe"
```
{{< note >}}
最新の安定版を入手する際は(たとえばスクリプトで使用する場合)、[https://dl.k8s.io/release/stable.txt](https://dl.k8s.io/release/stable.txt)を参照してください。
{{< /note >}}
1. バイナリを検証してください(オプション)
`kubectl`のチェックサムファイルをダウンロードします:
```powershell
curl.exe -LO "https://dl.k8s.io/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl.exe.sha256"
```
チェックサムファイルに対して`kubectl`バイナリを検証します:
- コマンドプロンプトを使用して、`CertUtil`の出力とダウンロードしたチェックサムファイルを手動で比較します:
```cmd
CertUtil -hashfile kubectl.exe SHA256
type kubectl.exe.sha256
```
- PowerShellにて`-eq`オペレーターを使用して自動で検証を行い、`True`または`False`で結果を取得します:
```powershell
$(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256)
```
1. `kubectl`バイナリのフォルダーを`PATH`環境変数に追加します。
1. `kubectl`のバージョンがダウンロードしたものと同じであることを確認してください:
```cmd
kubectl version --client
```
または、バージョンの詳細を表示するために次を使用します:
```cmd
kubectl version --client --output=yaml
```
{{< note >}}
[Docker Desktop for Windows](https://docs.docker.com/docker-for-windows/#kubernetes)は、それ自身のバージョンの`kubectl`を`PATH`に追加します。
Docker Desktopをすでにインストールしている場合、Docker Desktopインストーラーによって追加された`PATH`の前に追加するか、Docker Desktopの`kubectl`を削除してください。
{{< /note >}}
### Chocolatey、Scoopまたはwingetを使用してWindowsへインストールする{#install-nonstandard-package-tools}
1. Windowsへkubectlをインストールするために、[Chocolatey](https://chocolatey.org)パッケージマネージャーや[Scoop](https://scoop.sh)コマンドラインインストーラー、[winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/)パッケージマネージャーを使用することもできます。
{{< tabs name="kubectl_win_install" >}}
{{% tab name="choco" %}}
```powershell
choco install kubernetes-cli
```
{{% /tab %}}
{{% tab name="scoop" %}}
```powershell
scoop install kubectl
```
{{% /tab %}}
{{% tab name="winget" %}}
```powershell
winget install -e --id Kubernetes.kubectl
```
{{% /tab %}}
{{< /tabs >}}
1. インストールしたバージョンが最新であることを確認してください:
```powershell
kubectl version --client
```
1. ホームディレクトリへ移動してください:
```powershell
# cmd.exeを使用している場合はcd %USERPROFILE%を実行してください。
cd ~
```
1. `.kube`ディレクトリを作成してください:
```powershell
mkdir .kube
```
1. 作成した`.kube`ディレクトリへ移動してください:
```powershell
cd .kube
```
1. リモートのKubernetesクラスターを使うために、kubectlを設定してください:
```powershell
New-Item config -type file
```
{{< note >}}
Notepadなどの選択したテキストエディターから設定ファイルを編集してください。
{{< /note >}}
## kubectlの設定を検証する
{{< include "included/verify-kubectl.md" >}}
## オプションのkubectlの設定とプラグイン
### シェルの自動補完を有効にする
kubectlはBash、Zsh、Fish、PowerShellの自動補完を提供しています。
これにより、入力を大幅に削減することができます。
以下にPowerShellの自動補完の設定手順を示します。
{{< include "included/optional-kubectl-configs-pwsh.md" >}}
### `kubectl convert`プラグインをインストールする
{{< include "included/kubectl-convert-overview.md" >}}
1. 次のコマンドを使用して最新リリースをダウンロードしてください:
```powershell
curl.exe -LO "https://dl.k8s.io/release/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl-convert.exe"
```
1. バイナリを検証してください(オプション)。
`kubectl-convert`のチェックサムファイルをダウンロードします:
```powershell
curl.exe -LO "https://dl.k8s.io/v{{< skew currentPatchVersion >}}/bin/windows/amd64/kubectl-convert.exe.sha256"
```
チェックサムファイルに対して`kubectl-convert`バイナリを検証します:
- コマンドプロンプトを使用して、`CertUtil`の出力とダウンロードしたチェックサムファイルを手動で比較します:
```cmd
CertUtil -hashfile kubectl-convert.exe SHA256
type kubectl-convert.exe.sha256
```
- PowerShellにて`-eq`オペレーターを使用して自動で検証を行い、`True`または`False`で結果を取得します:
```powershell
$($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
```
1. `kubectl-convert`バイナリのフォルダーを`PATH`環境変数に追加します。
1. プラグインが正常にインストールされたことを確認してください。
```shell
kubectl convert --help
```
何もエラーが表示されない場合は、プラグインが正常にインストールされたことを示しています。
1. プラグインのインストール後、インストールファイルを削除してください:
```powershell
del kubectl-convert.exe
del kubectl-convert.exe.sha256
```
## {{% heading "whatsnext" %}}
{{< include "included/kubectl-whats-next.md" >}}