云计算百科
云计算领域专业知识百科平台

【技术底稿 29】混合云 DevOps 架构升级:HP 服务器离线部署 K3s 集群主控节点(零侵入不影响现有业务)

一、项目背景

目前个人混合云硬件拓扑:

  • 阿里云节点:承载公网流量入口、Nginx 反向代理、旧版生产服务;
  • HP 本地服务器:核心算力节点,运行 Jenkins、MySQL 主库、Redis、商助慧平台(Docker Compose),FRP 打通阿里云内网隧道;
  • 联想本地服务器:备用算力、MySQL 从库节点。
  • 原有服务均基于 Docker Compose 单机部署,无容器编排、无集群调度能力。为实现混合云统一容器编排、服务弹性管理、后续跨节点扩容,决定引入轻量 K3s Kubernetes 发行版。

    本次核心目标:在 HP 核心服务器离线安装 K3s Server 主控节点,全程零侵入、不改动现有 Docker、Jenkins、数据库、FRP 隧道等业务,仅新增集群底座。

    二、环境前置说明

    • 操作系统:Ubuntu
    • 部署方式:离线 Airgap 安装(规避 GitHub 网络超时、SSL 连接重置问题)
    • 集群模式:单节点主控(control-plane+master)
    • 定制优化:默认关闭 Traefik、ServiceLB,避免占用 80/443 端口,不与现有 Nginx 冲突
    • 运行时:K3s 内置 containerd,与宿主机 Docker 完全隔离,互不干扰

    三、离线资源准备

    通过 Rancher 国内镜像站下载对应 amd64 版本的 3 个核心文件,下载地址:https://mirror.rancher.cn/k3s/

  • k3s 二进制可执行文件
  • k3s-airgap-images-amd64.tar.gz 离线镜像包
  • k3s-install.sh 官方安装脚本
  • 上传至服务器统一目录:/home/xyy/k3s-offline

    四、分步离线安装实操

    1. 赋予文件执行权限

    bash

    运行

    chmod +x k3s k3s-install.sh

    2. 迁移二进制文件到系统全局路径

    bash

    运行

    sudo mv k3s /usr/local/bin/

    3. 创建 K3s 离线镜像固定目录

    bash

    运行

    sudo mkdir -p /var/lib/rancher/k3s/agent/images/

    4. 拷贝离线镜像包至指定目录

    bash

    运行

    sudo cp k3s-airgap-images-amd64.tar.gz /var/lib/rancher/k3s/agent/images/

    5. 离线安装 K3s(跳过下载 + 禁用多余组件)

    bash

    运行

    sudo INSTALL_K3S_SKIP_DOWNLOAD=true ./k3s-install.sh \\
    server \\
    –disable traefik \\
    –disable servicelb

    安装自动完成:创建 kubectl、crictl 软链接、生成 systemd 服务、设置开机自启。

    6. 修复普通用户 kubectl 权限问题

    默认 kubeconfig 文件仅 root 可读,普通用户执行会权限拒绝,执行以下命令修复:

    bash

    运行

    sudo chmod 644 /etc/rancher/k3s/k3s.yaml

    五、集群可用性验证

    执行节点查看命令:

    bash

    运行

    kubectl get nodes

    执行过程与结果如下图所示:

    plaintext

    NAME STATUS ROLES AGE VERSION
    hp-server Ready control-plane,master 76s v1.26.9+k3s1

    • STATUS 为 Ready:集群主控节点正常就绪;
    • 后续 metrics 相关临时告警为组件初始化延迟,无需处理,自动消失;
    • 全程未中断、未影响服务器任何原有业务。

    六、架构无侵入保障说明

  • 网络端口:K3s 仅占用 6443 管理端口,不占用 80/443/3306/6379 等业务端口;
  • 容器运行时:内置 containerd 与原生 Docker 两套环境隔离,互不抢占资源;
  • 服务无改动:Jenkins、MySQL、Redis、Docker Compose 应用、FRP 隧道均保持原有运行状态;
  • 可回滚性:内置一键卸载脚本,可随时还原环境,无残留配置。
  • 七、后续规划路线

  • 后续将阿里云服务器作为 Agent 节点接入 K3s,组建跨公私网混合云集群;
  • 将商助慧平台从 Docker Compose 迁移为 K8s YAML 编排部署;
  • 复用现有 MySQL、Redis 宿主机实例,通过 PV/PVC 做数据持久化;
  • 改造 Jenkins 流水线,实现镜像构建→K3s 集群自动更新部署;
  • 配置 Ingress 统一入口,由阿里云承接公网流量,内网转发至 HP 集群处理。
  • 八、总结

    本次成功在 HP 核心服务器离线部署 K3s 集群主控底座,解决国内网络 GitHub 下载失败问题,采用分步安装方式清晰掌握每一步原理与目录结构。

    以零侵入方式完成容器编排架构升级,不影响现有生产与运维服务,为后续商助慧容器化迁移、混合云集群扩容、全自动 CI/CD 流水线搭建打下坚实基础。


    本文是《技术底稿》系列第 29 篇,记录个人混合云 DevOps 架构升级实战,采用离线 Airgap 方式完成 HP 服务器 K3s 集群主控节点部署,完整覆盖离线资源准备、分步安装、权限修复、集群验证、环境无侵入避坑全流程,落地步骤可直接复刻复用。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 【技术底稿 29】混合云 DevOps 架构升级:HP 服务器离线部署 K3s 集群主控节点(零侵入不影响现有业务)
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!