目录
准备开始
kubectl
版本和集群版本之间的差异必须在一个小版本号内。 例如:v1.27
版本的客户端能与 v1.26
、 v1.27
和 v1.28
版本的控制面通信。 用最新兼容版的 kubectl
有助于避免不可预见的问题。
下载
- 官方安装文档:
https://kubernetes.io/zh/docs/tasks/tools/install-kubectl-windows/
- 使用
curl
命令下载:curl -LO "https://dl.k8s.io/release/v1.27.1/bin/windows/amd64/kubectl.exe"
- 将
kubectl
二进制文件夹追加或插入到你的PATH
环境变量中
查看版本号
kubectl version --client
kubectl version --client --output=yaml
说明: Windows 版的 Docker Desktop 将其自带版本的 kubectl 添加到 PATH。 如果你之前安装过 Docker Desktop,可能需要把此 PATH 条目置于 Docker Desktop 安装的条目之前, 或者直接删掉 Docker Desktop 的 kubectl。
合并多个kubeconfig配置文件
KUBECONFIG 环境变量指向多个文件
通过在 KUBECONFIG
环境变量中指定多个文件,可以临时将 KUBECONFIG
文件组合在一起,并在kubectl
中使用。
如下,那么是在 kubeconfig
是在内存中做的合并:
KUBECONFIG=C:\Users\Administrator\.kube\config;G:\xx\k8s-ds-dev-demo-Kubeconfig
查看kubeconfig配置
kubectl config view --flatten
如果合并后显示的cluster只有一条数据,说明多个文件中的cluster.name是相同的,可以修改其中一个cluster.name为不一样的名称即可
验证 kubectl 配置
通过获取集群状态的方法,检查是否已恰当地配置了 kubectl
kubectl cluster-info
如果返回一个 URL
,则意味着 kubectl
成功地访问到了你的集群。
切换不同的集群上下文
kubectl config use-context ctx-user-demo
指定kubeconfig执行kubectl命令
kubectl --kubeconfig G:\xx\k8s-ds-dev-demo-Kubeconfig -n demo cluster-info
kubectl --kubeconfig G:\xx\k8s-ds-dev-demo-Kubeconfig -n demo get pods
常用命令
- 滚动重启所有Pod:
kubectl rollout restart deployment <deployment-name> -n demo
- 修改Pod数量:
kubectl scale deployment <deployment-name> -n demo --replicas=2
- 进入Pod:
kubectl exec -it <pod-name> -n <namespace> -- /bin/bash