零接触式云数据中心架构Windows Server 2012实现iSCSI SAN无盘引导(2)

简介:

iSCSI引导过程

image

iSCSI引导一共有两个主要过程:

1. 预引导过程

2. Windows系统引导过程

预启动过程实际上就是我们在第一部分介绍的可以通过网卡,HBA卡(硬件启动加载器)或者软件启动加载器boot loader实现的。

 

  • 对于硬件,启动加载器就是卡里面的固件程序,用于连接iSCSI目标并且挂载包含Windows 操作系统的文件系统VHD映像文件。
  • 对于软件,可以通过USB或者光盘用于启动介质,当然在BIOS启动项里请设置该介质用于Windows 的引导阶段。

需要额外说明的根据上图可以看到,在预启动阶段实际已经完整了运行了实模式的网络驱动堆栈,并且加载器中已经包含了iSCSI发起器用于连接iSCSI目标设备和挂载程序。另外一个重要的组成部分是iSCSI启动固件表(iBFT),这个表很重要,因为在引导阶段和系统引导阶段过渡时需要这个表保存引导参数和会话。

 

SAN引导方式

1. 采用网卡或HBA卡硬件引导方式

*要求:这种方式要求硬件支持iSCSI Boot模式。

image

1) 当无盘系统引导时会读取目标iSCSI IP地址和IQN信息并用此加载iSCSI目标设备。

2) iSCSI目标验证并建立连接,客户端看到VHD盘并进行加载。

3) 引导过程如同在本地硬盘引导一样开始,所不同的是Windows系统启动后会启动iSCSI发起器程序并利用iBFT中的参数用于iSCSI的目标连接。

 

2. 采用软件引导器组合DHCP和TFTP的方式

*这种方式要求无盘引导主机支持PXE模式。

  服务器要求部署DHCP服务和WDS角色(Windows 部署服务并且此服务包括了TFTP服务)

 

image

 

1) 无盘服务器启动并通过网卡 PXE引导。需要指定通过DHCP服务器参数配置IP地址,TFTP服务器和iSCSI目标连接信息。

2) DHCP服务器响应请求。

3) 无盘服务器从TFTP服务器获取启动加载器软件。

4) 无盘服务器通过启动加载器包含的iSCSI启动器连接和登录iSCSI目标,加载目标VHD磁盘。

5) 启动过程如同本地启动一样,所不同的是Windows系统启动后会启动iSCSI发起器程序并利用iBFT中的参数用于iSCSI的目标连接。

 

3. 最后一种就是我在Technet网络广播里面介绍和演示的方式,不需要DHCP和TFTP服务器相对比较简单,因为启动加载器就在启动介质里面(确切的说偷换了概念,无盘引导没有启动盘,但是有启动U盘或光盘,实际上不能算绝对意义上的无“盘” :P)

image

1) 设置BIOS从U盘或光盘启动,启动介质包含了软件启动加载器。

2)当无盘服务器启动后,启动加载器会使用iSCSI目标IP地址和IQN信息建立连接。(在我演示的环境里用的是iPXE,并且在交互式界面或配置文件里指定SANboot参数,我用的方式是交互式提供参数:sanboot iscsi:0.1.1.5::::iqn.1991-05.com.microsoft:DC-boot-target 关于iPXE使用方法,可以参考http://ipxe.org/)

3)iSCSI目标验证和建立连接后,提供VHD文件用户无盘服务器加载。

4)启动过程如同本地启动一样,所不同的是Windows系统启动后会启动iSCSI发起器程序并利用iBFT中的参数用于iSCSI的目标连接。

 

总算洋洋洒洒介绍完了关于零接触式的无盘引导数据中心所用到的技术和方法, 希望对大家有所帮助和启发。

最后,如果你实践了上述方法并且觉得很好,想尝试规模化部署,这里给个配置最佳实践供参考:










本文转自 翟老猫 51CTO博客,原文链接:http://blog.51cto.com/3387405/1052159,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
设计模式 安全 Java
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
117 0
|
5月前
|
Linux Windows
【Linux】grub命令行引导进入windows系统
【8月更文挑战第20天】在Linux中通过GRUB命令行引导Windows的方法包括:1) 进入GRUB命令行模式,启动时按`c`键;2) 使用`ls`查找含Windows引导文件的分区,如`bootmgr`或`ntldr`;3) 设置根设备`root=(hd0,msdos3)`与链加载器`chainloader +1`;4) 输入`boot`命令启动Windows。请注意实际步骤可能因系统配置而异。
598 2
|
5月前
|
Kubernetes Serverless API
Kubernetes 的架构问题之利用不可变性来最小化对API Server的访问如何解决
Kubernetes 的架构问题之利用不可变性来最小化对API Server的访问如何解决
96 7
|
缓存 Unix 调度
[笔记]深入解析Windows操作系统《二》系统架构(一)
[笔记]深入解析Windows操作系统《二》系统架构
366 0
|
8月前
|
存储 前端开发 JavaScript
Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
127 0
|
8月前
|
运维 Oracle 关系型数据库
LIS实验室信息管理系统功能模块(Oracle数据库、Client/Server架构)
LIS实验室信息管理系统功能模块(Oracle数据库、Client/Server架构)
132 0
|
数据采集 数据库
医院LIS系统源码,SaaS架构的Client/Server应用
LIS系统集申请、采样、核收、计费、检验、审核、发布、质控、查询、耗材控制等检验科工作为一体的网络管理系统。它的开发和应用将加快检验科管理的统一化、网络化、标准化的进程。
101 0
|
存储 安全 Unix
[笔记]深入解析Windows操作系统《二》系统架构(五)
[笔记]深入解析Windows操作系统《二》系统架构(五)
162 0
|
存储 安全 API
[笔记]深入解析Windows操作系统《二》系统架构(四)
[笔记]深入解析Windows操作系统《二》系统架构(四)
141 0
|
存储 缓存 安全
[笔记]深入解析Windows操作系统《二》系统架构(三)
[笔记]深入解析Windows操作系统《二》系统架构(三)
285 0