miaoyun+Rancher+K8S学习与实践


安装和设置kubectl

<p>安装和设置kubectl</p> <p>Kubernetes命令行工具kubectl允许您对Kubernetes集群运行命令。您可以使用kubectl部署应用程序,检查和管理集群资源以及查看日志。有关kubectl操作的完整列表,请参见kubectl概述。 在你开始之前</p> <p>您所使用的kubectl版本必须在集群的一个较小版本差异之内。例如,v1.2客户端应与v1.1,v1.2和v1.3主服务器一起使用。使用最新版本的kubectl有助于避免意外的问题。 在Linux上安装Kubectl 在Linux上使用curl安装Kubectl二进制文件</p> <pre><code>使用以下命令下载最新版本: 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)命令部分。 例如,要在Linux上下载版本v1.18.0,请输入: curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl 使kubectl二进制可执行文件。 chmod +x ./kubectl 将二进制文件移到您的PATH中。 sudo mv ./kubectl /usr/local/bin/kubectl 测试以确保您安装的版本是最新的: kubectl version --client</code></pre> <p>使用本机软件包管理进行安装</p> <pre><code>Ubuntu,Debian或HypriotOS CentOS,RHEL或Fedora</code></pre> <p>sudo apt-get update &amp;&amp; sudo apt-get install -y apt-transport-https gnupg2 curl -s <a href="https://packages.cloud.google.com/apt/doc/apt-key.gpg">https://packages.cloud.google.com/apt/doc/apt-key.gpg</a> | sudo apt-key add - echo &quot;deb <a href="https://apt.kubernetes.io/">https://apt.kubernetes.io/</a> kubernetes-xenial main&quot; | sudo tee -a /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubectl</p> <p>使用其他软件包管理进行安装</p> <pre><code>捕捉 家酿</code></pre> <p>如果您使用的是Ubuntu或其他支持快照包管理器的Linux发行版,则可以将kubectl作为快照应用程序使用。</p> <p>snap install kubectl --classic</p> <p>kubectl version --client</p> <p>在macOS上安装Kubectl 在macOS上使用curl安装Kubectl二进制文件</p> <pre><code>下载最新版本: 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 -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)命令部分。 例如,要在macOS上下载版本v1.18.0,请输入: curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/darwin/amd64/kubectl 使kubectl二进制可执行文件。 chmod +x ./kubectl 将二进制文件移到您的PATH中。 sudo mv ./kubectl /usr/local/bin/kubectl 测试以确保您安装的版本是最新的: kubectl version --client</code></pre> <p>在macOS上使用Homebrew安装</p> <p>如果您在macOS上并使用Homebrew软件包管理器,则可以在Homebrew上安装kubectl。</p> <pre><code>运行安装命令: brew install kubectl 要么 brew install kubernetes-cli 测试以确保您安装的版本是最新的: kubectl version --client</code></pre> <p>在macOS上使用Macports安装</p> <p>如果您使用的是macOS并使用Macports软件包管理器,则可以在Macports上安装kubectl。</p> <pre><code>运行安装命令: sudo port selfupdate sudo port install kubectl 测试以确保您安装的版本是最新的: kubectl version --client</code></pre> <p>在Windows上安装Kubectl 在Windows上使用curl安装Kubectl二进制文件</p> <pre><code>从此链接下载最新版本v1.18.0 。 或者,如果已curl安装,请使用以下命令: curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/windows/amd64/kubectl.exe 要查找最新的稳定版本(例如,用于脚本编写),请查看https://storage.googleapis.com/kubernetes-release/release/stable.txt。 将二进制文件添加到您的PATH中。 测试以确保的版本kubectl与下载的版本相同: kubectl version --client 注意: 适用于Windows的Docker桌面将其自己的版本添加kubectl到PATH。如果您以前安装过Docker Desktop,则可能需要将PATH条目放置在Docker Desktop安装程序添加的PATH之前,或者删除Docker Desktop的kubectl。</code></pre> <p>从PSGallery使用Powershell安装</p> <p>如果您在Windows上并使用Powershell Gallery软件包管理器,则可以使用Powershell安装和更新kubectl。</p> <pre><code>运行安装命令(确保指定DownloadLocation): Install-Script -Name 'install-kubectl' -Scope CurrentUser -Force install-kubectl.ps1 [-DownloadLocation &lt;path&gt;] 注意:如果不指定DownloadLocation,kubectl将安装在用户的temp目录中。 安装程序将创建$HOME/.kube并指示其创建配置文件。 测试以确保您安装的版本是最新的: kubectl version --client 注意:通过重新运行步骤1中列出的两个命令来执行更新安装。</code></pre> <p>使用Chocolatey或Scoop在Windows上安装</p> <pre><code>要在Windows上安装kubectl,可以使用Chocolatey软件包管理器或Scoop命令行安装程序。 巧克力 舀 choco install kubernetes-cli 测试以确保您安装的版本是最新的: kubectl version --client 导航到您的主目录: # If you're using cmd.exe, run: cd %USERPROFILE% cd ~ 创建.kube目录: mkdir .kube 转到.kube您刚刚创建的目录: cd .kube 配置kubectl以使用远程Kubernetes集群: New-Item config -type file 注意:使用您选择的文本编辑器(例如记事本)编辑配置文件。</code></pre> <p>作为Google Cloud SDK的一部分下载</p> <p>您可以将kubectl安装为Google Cloud SDK的一部分。</p> <pre><code>安装Google Cloud SDK。 运行kubectl安装命令: gcloud components install kubectl 测试以确保您安装的版本是最新的: kubectl version --client</code></pre> <p>验证kubectl配置</p> <p>为了让kubectl找到并访问Kubernetes集群,它需要一个kubeconfig文件,该文件是在您使用kube-up.sh创建集群或成功部署Minikube集群时自动创建的。默认情况下,kubectl配置位于~/.kube/config。</p> <p>通过获取集群状态,检查kubectl是否已正确配置:</p> <p>kubectl cluster-info</p> <p>如果看到URL响应,则表明kubectl已正确配置为访问您的集群。</p> <p>如果您看到类似以下的消息,则说明kubectl配置不正确或无法连接到Kubernetes集群。</p> <p>The connection to the server <server-name:port> was refused - did you specify the right host or port?</p> <p>例如,如果您打算在笔记本电脑上(本地)运行Kubernetes集群,则需要先安装Minikube之类的工具,然后重新运行上述命令。</p> <p>如果kubectl cluster-info返回url响应,但您无法访问您的集群,请使用以下命令检查其配置是否正确:</p> <p>kubectl cluster-info dump</p> <p>可选的kubectl配置 启用外壳自动补全</p> <p>kubectl为Bash和Zsh提供自动补全支持,可以节省很多打字时间。</p> <p>以下是为Bash(包括Linux和macOS之间的差异)和Zsh设置自动完成功能的过程。</p> <pre><code>Linux上的Bash 在MacOS上的Bash sh</code></pre> <p>介绍</p> <p>可以使用以下命令生成Bash的kubectl完成脚本kubectl completion bash。在外壳中输入完成脚本可启用kubectl自动补全功能。</p> <p>但是,完成脚本取决于bash-completion,这意味着您必须先安装此软件(可以通过运行来测试是否已安装bash-completion type _init_completion)。 安装bash-completion</p> <p>bash-completion由许多软件包管理器提供(请参阅此处)。您可以使用apt-get install bash-completion或进行安装yum install bash-completion,等等。</p> <p>上面的命令create /usr/share/bash-completion/bash_completion,这是bash-completion的主要脚本。根据您的软件包管理器,您必须在文件中手动获取该~/.bashrc文件。</p> <p>要找出答案,请重新加载您的shell并运行type _init_completion。如果命令成功执行,则说明您已经设置好了,否则请在~/.bashrc文件中添加以下内容:</p> <p>source /usr/share/bash-completion/bash_completion</p> <p>重新加载您的外壳,并通过键入验证bash-completion是否已正确安装type _init_completion。 启用kubectl自动补全</p> <p>现在,您需要确保在所有shell会话中都获取了kubectl完成脚本。您可以通过两种方式执行此操作:</p> <pre><code>在~/.bashrc文件中获取完成脚本: echo 'source &lt;(kubectl completion bash)' &gt;&gt;~/.bashrc 将完成脚本添加到/etc/bash_completion.d目录: kubectl completion bash &gt;/etc/bash_completion.d/kubectl</code></pre> <p>如果您具有kubectl的别名,则可以扩展shell补全功能以使用该别名:</p> <p>echo 'alias k=kubectl' &gt;&gt;~/.bashrc echo 'complete -F __start_kubectl k' &gt;&gt;~/.bashrc</p> <pre><code>注意: bash-completion来源中的所有完成脚本/etc/bash_completion.d。</code></pre> <p>两种方法是等效的。重新加载外壳后,kubectl自动补全功能应该可以正常工作了。</p>

页面列表

ITEM_HTML