Skip to content
目录

物理机服务原理

功能介绍

云平台支持 Baremetal(物理机) 管理,提供的功能如下:

  1. 自动化上架: 物理机上架加电启动后,自动注册到云管平台,自动分配BMC IP地址,初始化IPMI账号密码,自动上报物理机硬件配置(CPU、内存、序列号、网卡、磁盘等)

  2. 自动化装机: 根据配置要求自动配置 RAID,自动分区格式化磁盘,自动部署操作系统镜像,自动初始化操作系统账号密码,自动分配IP地址,可以植入配置文件

  3. 生命周期管理: 支持物理机自动化开机,关机,重装系统,远程带外管理,卸载操作系统等操作

  4. 与虚拟机共享镜像: 使用虚拟机镜像部署物理机,便于虚拟机和物理机统一操作系统运行环境

  5. API 支持: 以上操作均支持API操作,便于与其他系统的自动化流程集成

  6. 服务器型号支持: 支持Dell、HP、华为、浪潮、联想、超微等主流x86服务器厂商和机型

  7. RAID 控制器支持: LSI MegaRaid, HP Smart Array, LSI MPT2SAS, LSI MPT3SAS, Mrarvell RAID等

  8. 转换为宿主机: 直接将物理机转换为运行虚拟机的宿主机

  9. 托管已有服务器: 托管已有并装好系统的物理机

服务架构

物理机管理服务架构如下:

物理机管理架构

  • Baremetal - DHCP Relay: 处理 PXE 网络启动

  • DHCP Relay - Baremetal Agent:

    • 转发 PXE Boot 请求,获取网络启动相关的信息
    • 通过 DHCP 和 TFTP 服务下发 PXE 配置
      • 云平台定制的PXE引导系统 kernel 和 initramfs: 运行 SSH 服务,制作 RAID,收集硬件信息等
  • Baremetal Agent - Region Server:

    • 通过 Region Server 注册物理机记录
    • 获取网络 IP 地址
  • Baremetal Agent - Baremetal:

    • Baremetal 通知 Agent SSH 相关的登录信息
    • Agent 通过 SSH 配置 Baremetal 的 IPMI
    • Agent 通过 IPMI 控制 Baremetal 开关机等操作
    • Agent 通过 SSH 执行做 RAID,装机,销毁等操作
  • Glance Server - Baremetal: Baremetal 从 Glance server 下载装机镜像

  • 在交换机上开启 DHCP Relay 功能(或者使用 DHCP Relay软件),relay 指向 Baremetal Agent

    • 物理机上架通电后,设置 PXE 网络启动,DHCP Relay 会将 PXE Boot 请求转发到 Baremetal Agent,Baremetal Agent 收到 PXE Boot 请求,向 Region Server 注册物理机记录

技术细节

注册物理机

注册物理机有自动注册和手动注册两种方式,如果 Baremetal Agent 开启了自动注册功能,就会自动在云平台创建 baremetal 记录;如果为手动注册方式,就需要先调用物理机创建接口把对应的 PXE 网卡对应的 MAC 地址注册到平台。

注册的流程如下:

  1. 物理机 PXE 启动时会发送 DHCP PXE boot 的请求,通过 DHCP Relay 请求会到 Baremetal Agent;
  2. Baremetal Agent 从 DHCP 请求中取出网卡 MAC 地址,拿 MAC 地址向 Region Server 过滤物理机记录;
  3. Region Server 告诉 Baremetal Agent 改 MAC 地址没有物理机,Baremetal Agent 就会新建记录,并从 Region Server 获取分配对应网段的 IP 地址, 通过内置 DHCP 服务回包给物理机;
  4. 物理机 PXE DHCP 请求获得分配的 IP 地址后,会通过 TFTP 从 Baremetal Agent 下载启动引导文件(kernel 和 initramfs),然后使用 ramdisk 机制进入我们定制的 initramfs 小系统;
  5. initramfs 小系统启动后,会启动 sshd 服务,然后修改 root 用户密码,将这些登录信息通知回 Baremetal Agent;
  6. Baremetal Agent 收到通知后,记录 ssh 登录的信息,开始进行准备工作;
  7. 准备工作包括配置 IPMI,收集硬件信息等,当这些操作完成后,将所有信息上报给 Region Server 完成注册

SSH 管理

当物理机通过 PXE 进入 PXE引导系统后会启动 sshd 服务,并将 ssh login 信息通知给 Baremetal Agent,Baremetal Agent 会更新 ssh 相关的登录信息