openstack ironic standalone模式预研

介绍:

Ironic是一个独立的OpenStack项目。Ironic像管理虚拟机一样管理物理机,主要用于安装配置物理机。

Ironic采用了可插拔的driver体系,可支持厂商特定的硬件。每个driver抽象了一种硬件的功能。默认提供了几个底层driver,抽象了PXE 和 IPMI等功能。

Ironic-api服务对外提供API。ironic conductor服务跟API服务之间通过RPC通信。ironic drivers向bare metal发出操作。例如,用户发出boot请求,通过 Nova API 和 Nova Scheduler发到nova compute服务,然后传到 Ironic API,然后到达 Ironic Conductor, 最终由某个 Driver 实际操作物理机。

工作原理:

创建物理机实例与创建虚拟机的过程有相似之处,Ironic 会与其他服务例如Nova, Neutron, Glance等交互,创建一个 bare metal实例。

PXE是从网卡启动,BIOS从DHCP获取IP地址,然后一般通过TFTP协议下载Network Bootstrap Program (NBP),加载到内存,开始引导。

ironic注册硬件,主要是登记网卡MAC地址,IPMI地址及认证信息。API会暴露支持的driver的列表,以及承载这些driver的conductor的主机列表。

ironic需要两套镜像:

1.     deploy image,用于TFTP过程时加载到内存做一些初始化工作;

2.     user image,是实际的带有操作系统的镜像,通过iscsi协议写入到裸机的磁盘上。

Ironic物理机的安装过程如下:
(1)目标机器先通过网络协议(dhcp和tftp)将服务器上的kernel、initrd(deploy image)下载到目标机的内存(非磁盘),
(2)目标机执行initrd程序,
(3)initrd根据目标机的MAC地址等信息从服务器加载不同的镜像写入目标机的磁盘,
(4)待目标机完成将镜像写入磁盘后,让目标机从硬盘重启即可。

Ironic Standalone模式和上述的相比,在使用PXE流程安装物理服务器的流程上没什么变化,只是原先从glance下载镜像变成了使用本地或者ftp/http进行下载,原先Neutron服务来管理IP地址变成了DHCP服务,并且关闭了keystone的认证服务,整个流程用到的组件只是ironic-api,ironic-conductor,DHCP,TFTP,如果使用http协议下载镜像可能还会加上nginx或者httpd服务。


      

                

猜你喜欢

转载自blog.csdn.net/z770816239/article/details/79303402
今日推荐