企业级Devops— 打造完整 CICD 实践指南(七):远程连接Kubernetes集群

🌐 远程连接Kubernetes集群:实现跨团队、跨平台协作部署

在正式环境中,Kubernetes(k8s)和 Jenkins 通常不会部署在同一台服务器上。当我们通过 Jenkins 构建镜像并将其推送到 Harbor 后,再执行 kubectl apply -f k8s-deployment.yaml 文件部署服务时,Jenkins 所在的服务器并没有安装 k8s。为了在 Jenkins 上执行 kubectl 命令,我们可以通过 kubectl 远程连接 k8s 集群,从而实现无安装 K8s 也能执行相关命令。

一、🛠️ 下载kubectl

🖥️ 机器A中安装

bash 复制代码
https://dl.k8s.io/release/版本号/bin/linux/amd64/kubectl

将连接中的版本号换成你自己的。

比如,我的k8s中kubectl版本时是:v1.30.0

我的连接:

bash 复制代码
https://dl.k8s.io/release/v1.30.0/bin/linux/amd64/kubectl

将执行文件下载到/home/k8s/bin文件夹下面

文件夹的作用:

  • bin用来放kubectl可执行文件
  • config 用来放连接远程k8s集群配置文件

执行下面命令来赋予可执行权限:

bash 复制代码
chmod +x kubectl

执行命令看kubectl是否安装成功✅:

bash 复制代码
kubectl --help

这是安装成功✅的输出:

💡 目前执行kubectl get pods是获取不到信息的

二、🔐 远程集群连接配置文件

在已经安装了k8s集群的服务器上执行下面命令生成配置文件:

bash 复制代码
kubectl config view --minify --flatten > kubeconfig.yaml

⚠️ 注意 cat kubeconfig.yaml 查看apiserver如果为127.0.0.1后面不同服务器kubectl远程连接可能会报错

⚠️ 特别注意 : 当使用阿里云服务器时,这里的apiserver改为阿里云的内网地址, 创建集群时的配置文件conf.yaml中修改

然后,将该配置文件传输到 Jenkins 所在的服务器中:

bash 复制代码
scp ./kubeconfig.yaml root@xxx:/home/k8s/config/

三、🖥️ 环境变量设置

jenkins所在服务器中配置, 确保可以直接使用kubectl命令

bash 复制代码
vim ~/.bashrc

添加下面配置:

bash 复制代码
export KUBECONFIG=/home/k8s/config/kubeconfig.yaml
KUBERNETES_HOME=/home/k8s
PATH=$PATH:$KUBERNETES_HOME/bin
export PATH KUBERNETES_HOME

让配置生效✅:

bash 复制代码
source ~/.bashrc

此时再执行kubectl get pods 可以看到我们k8s集群中的pod了。

四、🚀 jenkins pipeline中使用kubectl

有时,需要在pipeline中再配置一次上面的环境变量才可以使用kubectl,我是直接在jenkins的系统管理 -> 系统配置 -> 全局属性(环境变量)中配置了一份。

jenkins pipeline中也可以直接使用kubectl apply -f k8s-deployment.yaml部署服务了。

相关推荐
Ikalus198814 小时前
假成功有四种形状:给 AI 写自动化工具的自检清单
自动化运维
johnsmithCA14 小时前
给搜索的法规条文做了个「版本核验」流程:怎么确认手上的条文还是现行有效版
人工智能·自动化运维
liangshanbo12152 天前
面试题:AI 对话上下文超限怎么办?
面试·webpack·devops
海海不掉头发4 天前
软件项目管理学习笔记-从软件危机到敏捷与DevOps
笔记·学习·devops
效率工作实验室5 天前
AI Agent 管理平台如何与现有 DevOps 和 ITSM 体系集成?
ai·agent·devops·集成·管理平台
极小狐5 天前
CI 作业里 kubectl 连不上集群?用 Kubernetes Agent 打通部署链路的 7 个步骤
ci/cd·kubernetes·gitlab·devops·k8s部署
天天喝旺仔5 天前
CI/CD 实战:GitHub Actions 自动化构建、测试与发布流水线
ci/cd·自动化·github·devops·持续集成
小稀土1235 天前
内网私有化部署 DevOps 软件落地指南:8 个坑、6 个步骤,一次讲清
devops
cakeism8255 天前
金融行业 DevOps 平台推荐:2026年主流方案对比与 Gitee 选型解析
金融·gitee·devops
智能运维指南5 天前
研发效能平台建设路径:从工具堆砌到价值流驱动的效能革命
devops·研发效能度量·嘉为蓝鲸·研发效能平台