kubectl 命令安装
2022-12-04
# kubectl 安装
# 参考链接:https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-linux/
######## 下载
# 最新版本
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
# 指定版本
curl -LO https://dl.k8s.io/release/v1.24.0/bin/linux/amd64/kubectl
# 下载 kubectl 校验和文件:
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
# 基于校验和文件,验证 kubectl 的可执行文件
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
########## 安装
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
######## kubectl 命令补全
kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null
# 查看api版本及定义的 api
kubectl api-resources
kubectl api-resources # 查看 k8s 中所有资源
# true 表示 必须属于 ns ;false 表示不属于 ns;
> kubectl explain pod # 查看pod 定义中的标签内容及意思;
> kubectl explain pod.apiVersion # 查看具体的 api version
kubectl 命令补全
链接:https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion
#
yum install -y bash-completion
source /usr/share/bash-completion/bash_completion
# 当前用户
echo 'source <(kubectl completion bash)' >>~/.bashrc
# 全局系统
kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null
# 如果 kubectl 有关联的别名,你可以扩展 Shell 补全来适配此别名:
echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -o default -F __start_kubectl k' >>~/.bashrc
bash # 使其生效;
切换上下文
# kubectl 切换上下文
kubectl config get-contexts
kubectl config use-context xxxx
# eks 更新kubctl
aws eks --region $REGION update-kubeconfig --name $PRIMARY_CLUSTER --alias $PRIMARY_CONTEXT