集群管理命令,kubectl,用于管理 Kubernetes 集群。该笔记页面将简单介绍 kubectl 命令的安装、配置、使用方法。
注意事项
根据官网,命令 kubelet 次要版本号与集群要差一(比如版本1.2的客户端应该可以正常操作版本v1.1、v1.2、v1.3的集群),以防止出现某些意料之外的情况。
第一步、安装命令
从仓库中安装
官方也支持包管理器安装,但是它是 GOOGLE 源无法访问,我们使用阿里云镜像仓库:
# CentOS 7.4(如果使用阿里云镜像仓库) yum install -y kubelet-1.16.2
通用安装方法
# 下载稳定版本; curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl # 或者下载特定版本(例如 v1.15.0 版本) curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.0/bin/linux/amd64/kubectl # 授权,移动,验证 chmod +x ./kubectl mv ./kubectl /usr/local/bin/kubectl kubectl version ################################################################################ # 其他系统 ################################################################################ # 其他系统也是类似的,只不过是下载的目录不同。 # 其他版本的安装可以参考官方文档:https://kubernetes.io/docs/tasks/tools/install-kubectl/#download-as-part-of-the-google-cloud-sdk
第二步、调整配置
如果要访问集群,需要使用 kubeconfig 配置文件,该文件位于 ~/.kube/config(在集群主机上),是集群初始化时自动创建的。
如果不存在,执行如下命令,将该配置文件复制到本地对应的目录下:
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
第三步、验证命令
# 验证配置 kubectl cluster-info # 如果配置正确,下面的命令将返回URL地址,例如: # Kubernetes master is running at https://10.10.50.90:6443 # 如果服务器返回URL地址,但是决绝连接,可以使用下面的命令进行排查,以检查配置文件是否正确: kubectl cluster-info dump
其他配置
配置 BASH 自动补全
# 首先,你需要安装bash-complete包,因为kubectl依赖于它。 # Debian: apt-get install bash-completion # CentOS: yum install bash-completion # 这里不进行详细介绍 # 然后,启用kubectl的自动补全 echo 'source <(kubectl completion bash)' >> ~/.bashrc # 最后,重新Soruce一下: source ~/.bashrc # 或者你也可以将脚本放入/etc/bash_completion.d中: # kubectl completion bash > /etc/bash_completion.d/kubectl # 当然,这样也需要从新Source一下。 # 我更倾向于前者,这样不用考虑kubectl升级的问题
相关链接
配置文件:
Configure Access to Multiple Clusters
命令手册:
Overview of kubectl
Kubernetes/Reference/kubectl