Linux 系统中安装并设置Kubectl
前言:
出于安全考虑,一般都不会直接在K8S集群的节点上操作,而是通过一台跳板机远程控制。
(图片来源网络,侵删)
下面我们在一台linux设备安装配置kubectl,使其能够访问指定K8S集群。
要求:
官方要求kubectl 版本和集群版本之间的差异必须在一个小版本号内。 例如:v1.29 版本的客户端能与 v1.28、 v1.29 和 v1.30 版本的控制面通信。
为了避免出现莫名奇妙的问题,最好与集群版本保持一致。
#查看K8S集群使用kubectl版本 root@master:/# kubectl version Client Version: v1.29.0 Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3 Server Version: v1.29.0
一、开始安装:
1、用 curl 在 Linux 系统中安装 kubectl
1.1、用以下命令在 Linux x86-64 中下载 1.29.3 版本(其他版本请替换版本号):
curl -LO https://dl.k8s.io/release/v1.29.3/bin/linux/amd64/kubectl
1.2、验证该可执行文件(可选步骤)
下载 kubectl 校验和文件(下载的 kubectl 与校验和文件版本必须相同):
curl -LO "https://dl.k8s.io/release/v1.29.3/bin/linux/amd64/kubectl.sha256"
基于校验和文件,验证 kubectl 的可执行文件:
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
验证通过时,输出为:
kubectl: OK
验证失败时,sha256 将以非零值退出,并打印如下输出:
kubectl: FAILED sha256sum: WARNING: 1 computed checksum did NOT match
1.3、安装 kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
说明:
如果没有系统的 root 权限,可以将 kubectl 安装到目录 ~/.local/bin 中:
chmod +x kubectl mkdir -p ~/.local/bin mv ./kubectl ~/.local/bin/kubectl #将 ~/.local/bin 附加(或前置)到 $PATH echo 'export PATH="~/.local/bin:$PATH"' >> ~/.bashrc source ~/.bashrc
1.4、执行测试,查看版本:
kubectl version --client
2、用原生包管理工具安装
2.1、基于RedHat的发行版
2.1.1、 添加 Kubernetes 的 yum 仓库。如果你想使用 v1.29 之外的 Kubernetes 版本, 将下面命令中的 v1.29 替换为所需的次要版本。
# 这会覆盖 /etc/yum.repos.d/kubernetes.repo 中现存的所有配置 cat /etc/hosts
再次验证,成功链接到指定K8S集群
[root@test02 ~]# kubectl cluster-info Kubernetes control plane is running at https://master:6443 CoreDNS is running at https://master:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'. [root@test02 ~]# [root@test02 ~]# kubectl get node NAME STATUS ROLES AGE VERSION master Ready control-plane 85d v1.29.0 node01 NotReady worker 85d v1.29.0 node02 NotReady worker 85d v1.29.0 [root@test02 ~]# [root@test02 ~]# kubectl get pod -n kube-system NAME READY STATUS RESTARTS AGE coredns-857d9ff4c9-w8hxr 1/1 Running 0 108m coredns-857d9ff4c9-x5rj5 1/1 Running 0 108m etcd-master 1/1 Running 10 (115m ago) 85d kube-apiserver-master 1/1 Running 10 (115m ago) 85d kube-controller-manager-master 1/1 Running 11 (115m ago) 85d kube-proxy-5kwqj 1/1 Running 10 (115m ago) 85d kube-proxy-7p48k 1/1 Running 9 (2d12h ago) 85d kube-proxy-f4lgd 1/1 Running 0 85d kube-scheduler-master 1/1 Running 11 (115m ago) 85d
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
