当前位置: 首页 > news >正文

K8s 集群部署基础:Linux 三节点 SSH 互信(免密登录)配置指南

文档说明

在 Kubernetes(K8s)集群部署与日常运维过程中(如kubeadmAnsible、脚本化部署、批量运维等),控制节点与工作节点之间必须具备稳定的 SSH 互信能力

本文档以三台 Linux 节点为示例,说明如何配置节点之间的 SSH 免密登录(SSH Mutual Trust),为后续 Kubernetes 集群部署提供基础环境保障。


1. 节点规划示例

节点名角色示例说明
node0control-planeKubernetes 主节点
node1worker工作节点
node2worker工作节点

实际生产环境中可扩展为更多节点,配置方式一致。


2. 前提条件

在开始配置前,请确保以下条件已满足:

  1. 网络互通

    • 所有节点之间可通过 IP 或主机名互相访问
    pingnode1pingnode2
  2. SSH 服务已安装并运行

    sudoapt-getinstall-y openssh-serversudosystemctlenablesshsudosystemctl startssh
  3. 统一用户

    • 使用root用户,或具备 sudo 权限的同一普通用户
    • 下文默认使用当前登录用户操作

3. 生成 SSH 密钥对(每台节点)

每一台节点上执行以下命令:

ssh-keygen -t rsa -b4096-N""-f ~/.ssh/id_rsa

参数说明

  • -t rsa:使用 RSA 密钥算法
  • -b 4096:密钥长度 4096 位(生产环境推荐)
  • -N "":不设置密码(用于自动化)
  • -f ~/.ssh/id_rsa:指定密钥文件路径

生成结果

~/.ssh/id_rsa # 私钥(禁止泄露) ~/.ssh/id_rsa.pub # 公钥(用于分发)

⚠️注意:每台节点都必须单独生成密钥,不要拷贝私钥。


4. 节点之间分发公钥(建立互信)

4.1 单向免密(示例)

仅配置node0node1免密登录:

ssh-copy-id -i ~/.ssh/id_rsa.pub node1

测试:

sshnode1

无需输入密码即表示成功。


4.2 三节点完全互信(推荐)

目标:node0 / node1 / node2 之间任意互相 SSH 免密

在任意一台管理节点执行:
forsrcinnode0 node1 node2;dofordstinnode0 node1 node2;doif["$src"!="$dst"];thenssh$src"ssh-copy-id -i ~/.ssh/id_rsa.pub$dst"fidonedone

执行过程中:

  • 首次连接会提示yes/no
  • 需要输入一次目标节点密码
  • 完成后即永久免密

5. SSH 权限校验(非常重要)

所有节点上执行:

chmod700~/.sshchmod600~/.ssh/authorized_keys

否则可能出现:

Permission denied (publickey)

6. 验证免密效果

在任意节点执行:

sshnode0sshnode1sshnode2

均应无需输入密码即可登录


7. 常见问题排查

7.1 连接被拒绝

ssh: connect to host xxx port 22: Connection refused

处理方式:

sudosystemctl statussshsudosystemctl startssh

7.2 公钥无效 / 权限错误

Permission denied (publickey)

检查:

  • ~/.ssh权限是否为700
  • authorized_keys权限是否为600
  • 公钥是否正确写入目标节点

8. 在 Kubernetes 中的作用

完成 SSH 免密后,可直接用于:

  • kubeadm init / join
  • Ansible 批量部署 Kubernetes
  • 节点初始化脚本(containerd / kubelet / sysctl)
  • 日志收集、批量升级、证书同步

👉这是 Kubernetes 集群部署的“第一步基础设施能力”

http://www.jsqmd.com/news/215842/

相关文章:

  • 基于单片机的信号灯控制系统的设计
  • Python---面向对象的基本概念
  • Z-Image-Turbo按需购买GPU实例的经济性分析
  • 网络安全保姆级教程:手把手从零构建系统认知,直达精通之路
  • 网络安全保姆级教程:手把手从零构建系统认知,直达精通之路
  • 增值税发票管理系统开具发票查验技巧-发票查验API
  • 算法题 按奇偶排序数组
  • 基于LangChain与RAG技术构建智能客服问答系统:完整实现指南
  • Python---面向对象编程思想迁移
  • 为什么选Z-Image-Turbo?三大核心优势全面解析
  • 算法题 子数组的最小值之和
  • 疑问解答:M2FP是否支持视频流实时解析?答案是肯定
  • 网络安全知识图谱硬核梳理:从基础到原理,从入门到实战的完整体系
  • 空间选择性ALE的两种工艺路径
  • Z-Image-Turbo皮影戏风格图像生成实验
  • 真实案例:某服装品牌用M2FP构建虚拟换装系统降本60%
  • 金电镀凸块的应用
  • Z-Image-Turbo故障艺术(Glitch Art)特效实现
  • 无需CUDA也能做人像分割?M2FP CPU镜像填补无卡用户空白
  • 性能提升300%:M2FP模型推理优化全记录
  • 人体解析模型选型困惑?M2FP在准确性和易用性上实现双赢
  • 晶圆电镀的阳极钝化是什么?
  • 你还在手动拼接mask?M2FP内置算法自动生成彩色分割图
  • 基于SpringBoot的图书馆在线占座系统设计与实现
  • 如何在企业级项目中集成Z-Image-Turbo图像生成能力?
  • C++26 专业版介绍
  • 从“实验助手”到“科研伙伴”:AI智能体如何重塑生物学探索的边界
  • 智能光源的三大技术突破:从 “能用” 到 “精准” 的跨越
  • 互联网创业建议:基于M2FP开发垂直领域人体分析SAAS
  • 导师严选2026 AI论文工具TOP10:自考写作全攻略