安装并设置 kubectl

    您必须使用与集群小版本号差别为一的 kubectl 版本。例如,1.2版本的客户端应该与1.1版本、1.2版本和1.3版本的主节点一起使用。使用最新版本的 kubectl 有助于避免无法预料的问题。

    安装 kubectl

    以下是一些安装 kubectl 的方法。

    使用本地软件包管理软件安装 kubectl 二进制文件

    1. [kubernetes]
    2. name=Kubernetes
    3. baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
    4. enabled=1
    5. gpgcheck=1
    6. repo_gpgcheck=1
    7. gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    8. EOF
    9. yum install -y kubectl

    在 Ubuntu 上使用 snap 安装 kubectl

    如果您使用的是 Ubuntu 或其他支持 软件包管理器的Linux发行版,kubectl 可以作为一个 snap 应用程序使用。

    1. 切换到 snap 用户并运行安装命令:

      1. 测试以确保您安装的版本是最新的:

        1. kubectl version

      如果您使用的是 macOS 系统并使用 包管理器,您可以通过 Homebrew 安装 kubectl。

      1. 运行安装命令:

        1. brew install kubernetes-cli
      2. 测试以确保您安装的版本是最新的:

        1. kubectl version

      在 macOS 上用 Macports 安装 kubectl

      如果您使用的是 macOS 系统并使用 包管理器,您可以通过 Macports 安装 kubectl。

      1. 运行安装命令:

        1. port install kubectl
      2. 测试以确保您安装的版本是最新的:

        1. kubectl version

      从 PSGallery 通过 Powershell 安装 kubectl

      如果您使用的是 Windows 系统并使用 软件包管理器,您可以使用 Powershell 安装和更新 kubectl。

      1. 运行安装命令(确保指定 DownloadLocation):

        1. Install-Script -Name install-kubectl -Scope CurrentUser -Force
        2. install-kubectl.ps1 [-DownloadLocation <path>]

        安装程序创建 $ HOME/.kube 并指示它创建配置文件

      2. 测试以确保您安装的版本是最新的:

        1. kubectl version

      在 Windows 上用 Chocolatey 安装 kubectl

      如果您使用的是 Windows 系统并使用 包管理器,您可以使用 Chocolatey 安装 kubectl。

      1. 运行安装命令:

        1. choco install kubernetes-cli
      2. 切换到 %HOME% 目录:

        例如:cd C:\users\yourusername

      3. 创建 .kube 目录:

        1. mkdir .kube
      4. 切换到刚刚创建的 .kube 目录:

        1. cd .kube
      5. 配置 kubectl 以使用远程 Kubernetes 集群:

        1. New-Item config -type file

      kubectl 可以作为 Google Cloud SDK 的一部分进行安装。

      1. 安装 Google Cloud SDK.
      2. 运行以下命令安装 kubectl

        1. gcloud components install kubectl
      3. 测试以确保您安装的版本是最新的:

        1. kubectl version

      通过 curl 命令安装 kubectl 可执行文件

      1. 通过以下命令下载 kubectl 的最新版本:

        1. curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl

        若需要下载特定版本的 kubectl,请将上述命令中的 $(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt) 部分替换成为需要下载的 kubectl 的具体版本即可。

        例如,如果需要下载 v1.17.4 版本在 macOS 系统上,需要使用如下命令:

        1. curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.17.4/bin/darwin/amd64/kubectl
      2. 修改所下载的 kubectl 二进制文件为可执行模式。

        1. chmod +x ./kubectl
      3. 将 kubectl 可执行文件放置到你的 PATH 目录下。

        1. sudo mv ./kubectl /usr/local/bin/kubectl
      1. 通过以下命令下载 kubectl 的最新版本:

        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

        若需要下载特定版本的 kubectl,请将上述命令中的 $(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt) 部分替换成为需要下载的 kubectl 的具体版本即可。

        例如,如果需要下载用于 Linux 的 v1.17.4 版本,需要使用如下命令:

      2. 修改所下载的 kubectl 二进制文件为可执行模式。

      3. 将 kubectl 可执行文件放置到你的 PATH 目录下。

        1. sudo mv ./kubectl /usr/local/bin/kubectl
      1. 本链接下载 kubectl 的最新版 v1.17.4。
      1. ```
      2. curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.17.4/bin/windows/amd64/kubectl.exe
      3. ```

      若要查找最新的稳定版本(例如脚本等),请查看 .

      1. 将 kubectl 可执行文件添加到你的 PATH 目录。

      配置 kubectl

      kubectl 需要一个 使其找到并访问 Kubernetes 集群。当您使用 kube-up.sh 脚本创建 Kubernetes 集群或者部署 Minikube 集群时,会自动生成 kubeconfig 配置文件。请参阅入门指南以了解更多创建集群相关的信息。如果您需要访问一个并非由您创建的集群,请参阅。默认情况下,kubectl 配置文件位于 ~/.kube/config

      检查 kubectl 的配置

      通过获取集群状态检查 kubectl 是否被正确配置:

      1. kubectl cluster-info

      如果您看到一个 URL 被返回,那么 kubectl 已经被正确配置,能够正常访问您的 Kubernetes 集群。

      如果您看到类似以下的信息被返回,那么 kubectl 没有被正确配置,无法正常访问您的 Kubernetes 集群。

      1. The connection to the server <server-name:port> was refused - did you specify the right host or port?

      例如,如果您打算在笔记本电脑(本地)上运行 Kubernetes 集群,则需要首先安装 minikube 等工具,然后重新运行上述命令。

      如果 kubectl cluster-info 能够返回 url 响应,但您无法访问您的集群,可以使用下面的命令检查配置是否正确:

      1. kubectl cluster-info dump

      kubectl 支持自动补全功能,可以节省大量输入!

      自动补全脚本由 kubectl 产生,您仅需要在您的 shell 配置文件中调用即可。

      以下仅提供了使用命令补全的常用示例,更多详细信息,请查阅 kubectl completion -h 帮助命令的输出。

      在 CentOS Linux系统上,您可能需要安装默认情况下未安装的 bash-completion 软件包。

      1. yum install bash-completion -y

      执行 source <(kubectl completion bash) 命令在您目前正在运行的 shell 中开启 kubectl 自动补全功能。

      可以将上述命令添加到 shell 配置文件中,这样在今后运行的 shell 中将自动开启 kubectl 自动补全:

      1. echo "source <(kubectl completion bash)" >> ~/.bashrc

      macOS 系统需要先通过 安装 bash-completion:

      1. ## 如果您运行的是 macOS 自带的 Bash 3.2,请运行:
      2. brew install bash-completion
      3. ## 如果您使用的是 Bash 4.1+,请运行:
      4. brew install bash-completion@2

      请根据 Homebrew 输出的”注意事项(caveats)”部分的内容将 bash-completion 的路径添加到本地 .bashrc 文件中。

      如果您是按照 Homebrew 指示中的步骤安装的 kubectl,那么无需其他配置,kubectl 的自动补全功能已经被启用。

      如果您是手工下载并安装的 kubectl,那么您需要将 kubectl 自动补全添加到 bash-completion:

      1. kubectl completion bash > $(brew --prefix)/etc/bash_completion.d/kubectl

      由于 Homebrew 项目与 Kubernetes 无关,所以并不能保证 bash-completion 总能够支持 kubectl 的自动补全功能。

      如果您使用的是 zsh,请编辑 ~/.zshrc 文件并添加以下代码以启用 kubectl 自动补全功能。

        接下来

        了解如何启动并对外暴露您的应用程序