Skip to content

教程 3:搭建无盘工作站(iSCSI sanboot)

⏱ 预计用时:20 分钟 | 难度:进阶 | 读者:需要多台无盘工作站的场景(机房、实验室、瘦客户端) 前置条件:PxeLab 已启动、一台 iSCSI 存储(或可做 iSCSI 目标的机器)、客户端支持网络引导


场景

20 台配置相同的机器,不需要本地硬盘:系统统一放在一台 iSCSI 存储上,任何一台开机都从网络启动同一套系统。坏了换一台,系统在存储上毫发无损——这就是无盘工作站(sanboot)。

        iSCSI 存储 (192.168.1.50)
        iqn.2024-01:disk

              │ 从 SAN 启动(无需本地盘)
  ┌───────────┼────────────┐
  │  客户端 1  客户端 2 …  客户端 20 │
  └───────────────────────┘
        PxeLab 提供引导信息

准备

  • iSCSI 目标:存储服务器上的 LUN(示例:IP 192.168.1.50,IQN iqn.2024-01:disk
  • PxeLab 与 iSCSI 存储、客户端网络互通
  • 客户端支持 iPXE 引导(PxeLab 内置的 iPXE 支持 sanboot,无需额外编译)

第 1 步:准备 iSCSI LUN

在存储服务器上创建 LUN 并在其中安装好系统(或将已有系统盘做成 LUN 导出)。记下三个信息:

  • 存储服务器 IP(示例:192.168.1.50
  • IQN(示例:iqn.2024-01:disk
  • LUN 号(默认为 0,即 :disk 后缀省略 LUN 号时的默认值)

授权 PxeLab 网段的客户端访问该 LUN。

第 2 步:创建 sanboot 引导项

进入 基础配置 → 引导菜单(Profiles),新建一个引导项:

字段示例值
名称Diskless Workstation
引导类型sanboot — SAN 存储启动
URLiscsi:192.168.1.50::::iqn.2024-01:disk

URL 格式说明:iscsi:<存储IP>:<端口(空)>::<IQN>:<LUN>——示例即从 192.168.1.50 的默认端口(3260)启动 iqn.2024-01:disk

第 3 步:让客户端走这个引导项

两种方式任选:

  • 全部机器:把这个引导项设为默认菜单项(引导菜单配置 → 默认菜单 → 添加该条目)
  • 指定机器:在主机管理中登记客户端 MAC 并绑定该引导项(Profile),每台机器独立引导

第 4 步:客户端开机,验证无盘启动

客户端开机 → 网络引导 → PxeLab 引导菜单 → 选择 Diskless Workstation

客户端从 iSCSI 存储启动系统,运行过程中不依赖本地硬盘。


本教程常见问题

现象可能原因解决
启动失败 / 找不到存储iSCSI 目标未授权客户端 IP在存储端确认 LUN 的访问控制(initiator 授权)
IQN 或 LUN 写错配置笔误核对存储端导出的 IQN 与 LUN 号
多台机器同时启动异常多客户端写同一 LUN 冲突系统盘做只读,或用多副本/每台独立 LUN
引导菜单里没有该条目未设为默认/未绑定主机回到第 3 步检查

更进一步

PxeLab - 一体化 PXE 网络引导服务器