install-kubectl.md (ja): follow v1.18

This commit is contained in:
Soichiro KAWAMURA
2020-09-06 21:34:42 +09:00
committed by inductor
parent 3256091cdd
commit e749fe5cb2
+81 -73
View File
@@ -9,7 +9,7 @@ card:
--- ---
<!-- overview --> <!-- overview -->
Kubernetesのコマンドラインツールである[kubectl](/docs/user-guide/kubectl/)を使用して、Kubernetesクラスターに対してコマンドを実行することができます。kubectlによってアプリケーションのデプロイや、クラスターのリソース管理および検査を行うことができます。kubectlの操作に関する完全なリストは、[Overview of kubectl](/docs/reference/kubectl/overview/)を参照してください。 Kubernetesのコマンドラインツールである[kubectl](/ja/docs/reference/kubectl/overview/)を使用して、Kubernetesクラスターに対してコマンドを実行することができます。kubectlによってアプリケーションのデプロイや、クラスターのリソース管理、検査およびログの表示を行うことができます。kubectlの操作に関する完全なリストは、[kubectlの概要](/ja/docs/reference/kubectl/overview/)を参照してください。
## {{% heading "prerequisites" %}} ## {{% heading "prerequisites" %}}
@@ -26,7 +26,7 @@ kubectlのバージョンは、クラスターのマイナーバージョンと
1. 次のコマンドにより、最新リリースをダウンロードしてください: 1. 次のコマンドにより、最新リリースをダウンロードしてください:
``` ```
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
``` ```
特定のバージョンをダウンロードする場合、コマンドの`$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)`の部分を特定のバージョンに書き換えてください。 特定のバージョンをダウンロードする場合、コマンドの`$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)`の部分を特定のバージョンに書き換えてください。
@@ -59,7 +59,7 @@ kubectlのバージョンは、クラスターのマイナーバージョンと
{{< tabs name="kubectl_install" >}} {{< tabs name="kubectl_install" >}}
{{< tab name="Ubuntu、DebianまたはHypriotOS" codelang="bash" >}} {{< tab name="Ubuntu、DebianまたはHypriotOS" codelang="bash" >}}
sudo apt-get update && sudo apt-get install -y apt-transport-https sudo apt-get update && sudo apt-get install -y apt-transport-https gnupg2
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update sudo apt-get update
@@ -88,7 +88,7 @@ Ubuntuまたは[snap](https://snapcraft.io/docs/core/install)パッケージマ
```shell ```shell
snap install kubectl --classic snap install kubectl --classic
kubectl version kubectl version --client
``` ```
{{% /tab %}} {{% /tab %}}
{{% tab name="Homebrew" %}} {{% tab name="Homebrew" %}}
@@ -96,7 +96,7 @@ Linuxで[Homebrew](https://docs.brew.sh/Homebrew-on-Linux)パッケージマネ
```shell ```shell
brew install kubectl brew install kubectl
kubectl version kubectl version --client
``` ```
{{% /tab %}} {{% /tab %}}
{{< /tabs >}} {{< /tabs >}}
@@ -107,7 +107,7 @@ kubectl version
1. 最新リリースをダウンロードしてください: 1. 最新リリースをダウンロードしてください:
``` ```bash
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl" curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl"
``` ```
@@ -115,24 +115,24 @@ kubectl version
たとえば、macOSへ{{< param "fullversion" >}}のバージョンをダウンロードするには、次のコマンドを入力します: たとえば、macOSへ{{< param "fullversion" >}}のバージョンをダウンロードするには、次のコマンドを入力します:
``` ```bash
curl -LO https://storage.googleapis.com/kubernetes-release/release/{{< param "fullversion" >}}/bin/darwin/amd64/kubectl curl -LO https://storage.googleapis.com/kubernetes-release/release/{{< param "fullversion" >}}/bin/darwin/amd64/kubectl
``` ```
2. kubectlバイナリを実行可能にしてください。 2. kubectlバイナリを実行可能にしてください。
``` ```bash
chmod +x ./kubectl chmod +x ./kubectl
``` ```
3. バイナリをPATHの中に移動させてください。 3. バイナリをPATHの中に移動させてください。
``` ```bash
sudo mv ./kubectl /usr/local/bin/kubectl sudo mv ./kubectl /usr/local/bin/kubectl
``` ```
4. インストールしたバージョンが最新であることを確認してください: 4. インストールしたバージョンが最新であることを確認してください:
``` ```bash
kubectl version --client kubectl version --client
``` ```
@@ -142,18 +142,18 @@ macOSで[Homebrew](https://brew.sh/)パッケージマネージャーを使用
1. インストールコマンドを実行してください: 1. インストールコマンドを実行してください:
``` ```bash
brew install kubectl brew install kubectl
``` ```
または または
``` ```bash
brew install kubernetes-cli brew install kubernetes-cli
``` ```
2. インストールしたバージョンが最新であることを確認してください: 2. インストールしたバージョンが最新であることを確認してください:
``` ```bash
kubectl version --client kubectl version --client
``` ```
@@ -163,14 +163,14 @@ macOSで[MacPorts](https://macports.org/)パッケージマネージャーを使
1. インストールコマンドを実行してください: 1. インストールコマンドを実行してください:
``` ```bash
sudo port selfupdate sudo port selfupdate
sudo port install kubectl sudo port install kubectl
``` ```
2. インストールしたバージョンが最新であることを確認してください: 2. インストールしたバージョンが最新であることを確認してください:
``` ```bash
kubectl version --client kubectl version --client
``` ```
@@ -182,7 +182,7 @@ macOSで[MacPorts](https://macports.org/)パッケージマネージャーを使
または、`curl`をインストールされていれば、次のコマンドも使用できます: または、`curl`をインストールされていれば、次のコマンドも使用できます:
``` ```bash
curl -LO https://storage.googleapis.com/kubernetes-release/release/{{< param "fullversion" >}}/bin/windows/amd64/kubectl.exe curl -LO https://storage.googleapis.com/kubernetes-release/release/{{< param "fullversion" >}}/bin/windows/amd64/kubectl.exe
``` ```
@@ -191,7 +191,7 @@ macOSで[MacPorts](https://macports.org/)パッケージマネージャーを使
2. バイナリをPATHに追加します 2. バイナリをPATHに追加します
3. `kubectl`のバージョンがダウンロードしたものと同じであることを確認してください: 3. `kubectl`のバージョンがダウンロードしたものと同じであることを確認してください:
``` ```bash
kubectl version --client kubectl version --client
``` ```
{{< note >}} {{< note >}}
@@ -204,68 +204,76 @@ Windowsで[Powershell Gallery](https://www.powershellgallery.com/)パッケー
1. インストールコマンドを実行してください(必ず`DownloadLocation`を指定してください): 1. インストールコマンドを実行してください(必ず`DownloadLocation`を指定してください):
``` ```powershell
Install-Script -Name install-kubectl -Scope CurrentUser -Force Install-Script -Name 'install-kubectl' -Scope CurrentUser -Force
install-kubectl.ps1 [-DownloadLocation <path>] install-kubectl.ps1 [-DownloadLocation <path>]
``` ```
{{< note >}}`DownloadLocation`を指定しない場合、`kubectl`はユーザのTempディレクトリにインストールされます。{{< /note >}} {{< note >}}
`DownloadLocation`を指定しない場合、`kubectl`はユーザのTempディレクトリにインストールされます。
{{< /note >}}
インストーラーは`$HOME/.kube`を作成し、設定ファイルを作成します。 インストーラーは`$HOME/.kube`を作成し、設定ファイルを作成します。
2. インストールしたバージョンが最新であることを確認してください: 2. インストールしたバージョンが最新であることを確認してください:
``` ```powershell
kubectl version --client kubectl version --client
``` ```
{{< note >}}アップデートする際は、手順1に示した2つのコマンドを再実行してください。{{< /note >}} {{< note >}}
アップデートする際は、手順1に示した2つのコマンドを再実行してください。
{{< /note >}}
### ChocolateyまたはScoopを使用してWindowsへインストールする ### ChocolateyまたはScoopを使用してWindowsへインストールする
Windowsへkubectlをインストールするために、[Chocolatey](https://chocolatey.org)パッケージマネージャーや[Scoop](https://scoop.sh)コマンドラインインストーラーを使用することもできます。 1. Windowsへkubectlをインストールするために、[Chocolatey](https://chocolatey.org)パッケージマネージャーや[Scoop](https://scoop.sh)コマンドラインインストーラーを使用することもできます。
{{< tabs name="kubectl_win_install" >}}
{{% tab name="choco" %}}
{{< tabs name="kubectl_win_install" >}}
{{% tab name="choco" %}}
```powershell
choco install kubernetes-cli choco install kubernetes-cli
```
{{% /tab %}} {{% /tab %}}
{{% tab name="scoop" %}} {{% tab name="scoop" %}}
```powershell
scoop install kubectl scoop install kubectl
```
{{% /tab %}} {{% /tab %}}
{{< /tabs >}} {{< /tabs >}}
2. インストールしたバージョンが最新であることを確認してください: 2. インストールしたバージョンが最新であることを確認してください:
``` ```powershell
kubectl version --client kubectl version --client
``` ```
3. ホームディレクトリへ移動してください: 3. ホームディレクトリへ移動してください:
``` ```powershell
cd %USERPROFILE% # cmd.exeを使用している場合は cd %USERPROFILE% を実行してください。
cd ~
``` ```
4. `.kube`ディレクトリを作成してください: 4. `.kube`ディレクトリを作成してください:
``` ```powershell
mkdir .kube mkdir .kube
``` ```
5. 作成した`.kube`ディレクトリへ移動してください: 5. 作成した`.kube`ディレクトリへ移動してください:
``` ```powershell
cd .kube cd .kube
``` ```
6. リモートのKubernetesクラスターを使うために、kubectlを設定してください: 6. リモートのKubernetesクラスターを使うために、kubectlを設定してください:
``` ```powershell
New-Item config -type file New-Item config -type file
``` ```
{{< note >}}Notepadなどの選択したテキストエディターから設定ファイルを編集してください。{{< /note >}} {{< note >}}
Notepadなどの選択したテキストエディターから設定ファイルを編集してください。
{{< /note >}}
## Google Cloud SDKの一部としてダウンロードする ## Google Cloud SDKの一部としてダウンロードする
@@ -274,19 +282,19 @@ Google Cloud SDKの一部として、kubectlをインストールすることも
1. [Google Cloud SDK](https://cloud.google.com/sdk/)をインストールしてください。 1. [Google Cloud SDK](https://cloud.google.com/sdk/)をインストールしてください。
2. `kubectl`のインストールコマンドを実行してください: 2. `kubectl`のインストールコマンドを実行してください:
``` ```shell
gcloud components install kubectl gcloud components install kubectl
``` ```
3. インストールしたバージョンが最新であることを確認してください: 3. インストールしたバージョンが最新であることを確認してください:
``` ```shell
kubectl version --client kubectl version --client
``` ```
## kubectlの設定を検証する ## kubectlの設定を検証する
kubectlがKubernetesクラスターを探索し接続するために、[kubeconfigファイル](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/)が必要になります。これは、[kube-up.sh](https://github.com/kubernetes/kubernetes/blob/master/cluster/kube-up.sh)によりクラスターを作成した際や、Minikubeクラスターを正常にデプロイした際に自動生成されます。デフォルトでは、kubectlの設定は`~/.kube/config`に格納されています。 kubectlがKubernetesクラスターを探索し接続するために、[kubeconfigファイル](/docs/concepts/configuration/organize-cluster-access-kubeconfig/)が必要になります。これは、[kube-up.sh](https://github.com/kubernetes/kubernetes/blob/master/cluster/kube-up.sh)によりクラスターを作成した際や、Minikubeクラスターを正常にデプロイした際に自動生成されます。デフォルトでは、kubectlの設定は`~/.kube/config`に格納されています。
クラスターの状態を取得し、kubectlが適切に設定されていることを確認してください: クラスターの状態を取得し、kubectlが適切に設定されていることを確認してください:
@@ -297,7 +305,7 @@ URLのレスポンスが表示されている場合は、kubectlはクラスタ
以下のようなメッセージが表示されている場合は、kubectlは正しく設定されていないか、Kubernetesクラスターに接続できていません。 以下のようなメッセージが表示されている場合は、kubectlは正しく設定されていないか、Kubernetesクラスターに接続できていません。
```shell ```
The connection to the server <server-name:port> was refused - did you specify the right host or port? The connection to the server <server-name:port> was refused - did you specify the right host or port?
``` ```
@@ -335,7 +343,7 @@ bash-completionは多くのパッケージマネージャーから提供され
これを調べるには、シェルをリロードしてから`type _init_completion`を実行してください。コマンドが成功していればすでに設定済みです。そうでなければ、`~/.bashrc`に以下を追記してください: これを調べるには、シェルをリロードしてから`type _init_completion`を実行してください。コマンドが成功していればすでに設定済みです。そうでなければ、`~/.bashrc`に以下を追記してください:
```shell ```bash
source /usr/share/bash-completion/bash_completion source /usr/share/bash-completion/bash_completion
``` ```
@@ -347,21 +355,21 @@ source /usr/share/bash-completion/bash_completion
- 補完スクリプトを`~/.bashrc`内でsourceしてください: - 補完スクリプトを`~/.bashrc`内でsourceしてください:
```shell ```bash
echo 'source <(kubectl completion bash)' >>~/.bashrc echo 'source <(kubectl completion bash)' >>~/.bashrc
``` ```
- 補完スクリプトを`/etc/bash_completion.d`ディレクトリに追加してください: - 補完スクリプトを`/etc/bash_completion.d`ディレクトリに追加してください:
```shell ```bash
kubectl completion bash >/etc/bash_completion.d/kubectl kubectl completion bash >/etc/bash_completion.d/kubectl
``` ```
- kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます: - kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます:
```shell ```bash
echo 'alias k=kubectl' >>~/.bashrc echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -F __start_kubectl k' >>~/.bashrc echo 'complete -F __start_kubectl k' >>~/.bashrc
``` ```
{{< note >}} {{< note >}}
bash-completionは`/etc/bash_completion.d`内のすべての補完スクリプトをsourceします。 bash-completionは`/etc/bash_completion.d`内のすべての補完スクリプトをsourceします。
@@ -389,19 +397,19 @@ bash-completionにはv1とv2のバージョンがあり、v1はBash 3.2(macOSの
ここではBash 4.1以降の使用を前提としています。Bashのバージョンは下記のコマンドで調べることができます。 ここではBash 4.1以降の使用を前提としています。Bashのバージョンは下記のコマンドで調べることができます。
```shell ```bash
echo $BASH_VERSION echo $BASH_VERSION
``` ```
バージョンが古い場合、Homebrewを使用してインストールもしくはアップグレードできます。 バージョンが古い場合、Homebrewを使用してインストールもしくはアップグレードできます。
```shell ```bash
brew install bash brew install bash
``` ```
シェルをリロードし、希望するバージョンを使用していることを確認してください。 シェルをリロードし、希望するバージョンを使用していることを確認してください。
```shell ```bash
echo $BASH_VERSION $SHELL echo $BASH_VERSION $SHELL
``` ```
@@ -415,13 +423,13 @@ Homebrewは通常、`/usr/local/bin/bash`にインストールします。
`type _init_completion`を実行することで、bash-completionがすでにインストールされていることを確認できます。ない場合は、Homebrewを使用してインストールすることもできます: `type _init_completion`を実行することで、bash-completionがすでにインストールされていることを確認できます。ない場合は、Homebrewを使用してインストールすることもできます:
```shell ```bash
brew install bash-completion@2 brew install bash-completion@2
``` ```
このコマンドの出力で示されたように、`~/.bashrc`に以下を追記してください: このコマンドの出力で示されたように、`~/.bash_profile`に以下を追記してください:
```shell ```bash
export BASH_COMPLETION_COMPAT_DIR="/usr/local/etc/bash_completion.d" export BASH_COMPLETION_COMPAT_DIR="/usr/local/etc/bash_completion.d"
[[ -r "/usr/local/etc/profile.d/bash_completion.sh" ]] && . "/usr/local/etc/profile.d/bash_completion.sh" [[ -r "/usr/local/etc/profile.d/bash_completion.sh" ]] && . "/usr/local/etc/profile.d/bash_completion.sh"
``` ```
@@ -433,30 +441,30 @@ export BASH_COMPLETION_COMPAT_DIR="/usr/local/etc/bash_completion.d"
すべてのシェルセッションにてkubectlの補完スクリプトをsourceできるようにしなければなりません。これを行うには複数の方法があります: すべてのシェルセッションにてkubectlの補完スクリプトをsourceできるようにしなければなりません。これを行うには複数の方法があります:
- 補完スクリプトを`~/.bashrc`内でsourceする: - 補完スクリプトを`~/.bash_profile`内でsourceする:
```shell ```bash
echo 'source <(kubectl completion bash)' >>~/.bashrc echo 'source <(kubectl completion bash)' >>~/.bash_profile
``` ```
- 補完スクリプトを`/usr/local/etc/bash_completion.d`ディレクトリに追加する: - 補完スクリプトを`/usr/local/etc/bash_completion.d`ディレクトリに追加する:
```shell ```bash
kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl
``` ```
- kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます: - kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます:
```shell ```bash
echo 'alias k=kubectl' >>~/.bashrc echo 'alias k=kubectl' >>~/.bash_profile
echo 'complete -F __start_kubectl k' >>~/.bashrc echo 'complete -F __start_kubectl k' >>~/.bash_profile
``` ```
- kubectlをHomwbrewでインストールした場合([前述](#homebrewを使用してmacosへインストールする)のとおり)、kubectlの補完スクリプトはすでに`/usr/local/etc/bash_completion.d/kubectl`に格納されているでしょう。この場合、なにも操作する必要はありません。 - kubectlをHomwbrewでインストールした場合([前述](#homebrewを使用してmacosへインストールする)のとおり)、kubectlの補完スクリプトはすでに`/usr/local/etc/bash_completion.d/kubectl`に格納されているでしょう。この場合、なにも操作する必要はありません。
{{< note >}} {{< note >}}
Homebrewでインストールしたbash-completion v2は`BASH_COMPLETION_COMPAT_DIR`ディレクトリ内のすべてのファイルをsourceするため、後者の2つの方法が機能します。 Homebrewでインストールしたbash-completion v2は`BASH_COMPLETION_COMPAT_DIR`ディレクトリ内のすべてのファイルをsourceするため、後者の2つの方法が機能します。
{{< /note >}} {{< /note >}}
どの場合でも、シェルをリロードしたあとに、kubectlの自動補完が機能するはずです。 どの場合でも、シェルをリロードしたあとに、kubectlの自動補完が機能するはずです。
{{% /tab %}} {{% /tab %}}
@@ -465,15 +473,15 @@ Homebrewでインストールしたbash-completion v2は`BASH_COMPLETION_COMPAT_
Zshにおけるkubectlの補完スクリプトは`kubectl completion zsh`コマンドで生成できます。シェル内で補完スクリプトをsourceすることでkubectlの自動補完が有効になります。 Zshにおけるkubectlの補完スクリプトは`kubectl completion zsh`コマンドで生成できます。シェル内で補完スクリプトをsourceすることでkubectlの自動補完が有効になります。
すべてのシェルセッションで使用するには、`~/.bashrc`に以下を追記してください: すべてのシェルセッションで使用するには、`~/.zshrc`に以下を追記してください:
```shell ```zsh
source <(kubectl completion zsh) source <(kubectl completion zsh)
``` ```
kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます: kubectlにエイリアスを張っている場合は、以下のようにシェルの補完を拡張して使うことができます:
```shell ```zsh
echo 'alias k=kubectl' >>~/.zshrc echo 'alias k=kubectl' >>~/.zshrc
echo 'complete -F __start_kubectl k' >>~/.zshrc echo 'complete -F __start_kubectl k' >>~/.zshrc
``` ```
@@ -482,7 +490,7 @@ echo 'complete -F __start_kubectl k' >>~/.zshrc
`complete:13: command not found: compdef`のようなエラーが出力された場合は、以下を`~/.zshrc`の先頭に追記してください: `complete:13: command not found: compdef`のようなエラーが出力された場合は、以下を`~/.zshrc`の先頭に追記してください:
```shell ```zsh
autoload -Uz compinit autoload -Uz compinit
compinit compinit
``` ```
@@ -494,8 +502,8 @@ compinit
## {{% heading "whatsnext" %}} ## {{% heading "whatsnext" %}}
* [Minikubeをインストールする](/ja/docs/tasks/tools/install-minikube/) * [Minikubeをインストールする](/ja/docs/tasks/tools/install-minikube/)
* クラスターの作成に関する詳細を[スタートガイド](/docs/setup/)で確認する * クラスターの作成に関する詳細を[スタートガイド](/ja/docs/setup/)で確認する
* [アプリケーションを起動して公開する方法を学ぶ](/docs/tasks/access-application-cluster/service-access-application-cluster/) * [アプリケーションを起動して公開する方法を学ぶ](/ja/docs/tasks/access-application-cluster/service-access-application-cluster/)
* あなたが作成していないクラスターにアクセスする必要がある場合は、[クラスターアクセスドキュメントの共有](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/)を参照してください * あなたが作成していないクラスターにアクセスする必要がある場合は、[クラスターアクセスドキュメントの共有](/ja/docs/tasks/access-application-cluster/configure-access-multiple-clusters/)を参照してください
* [kubectlリファレンスドキュメント](/docs/reference/kubectl/kubectl/)を参照する * [kubectlリファレンスドキュメント](/docs/reference/kubectl/kubectl/)を参照する