目的
ironic是一個(gè)進(jìn)行裸機(jī)部署安裝的項(xiàng)目。
所謂裸機(jī),就是指沒(méi)有配置操作系統(tǒng)的計(jì)算機(jī)。從裸機(jī)到應(yīng)用還需要進(jìn)行以下操作:
- 硬盤(pán)RAID、分區(qū)和格式化
- 安裝操作系統(tǒng)、驅(qū)動(dòng)程序
- 安裝應(yīng)用程序
ironic實(shí)現(xiàn)的功能,就是可以很方便地對(duì)指定的一臺(tái)或多臺(tái)裸機(jī),執(zhí)行以上一系列的操作。例如部署大數(shù)據(jù)群集需要同時(shí)部署多臺(tái)物理機(jī),就可以通過(guò)ironic來(lái)實(shí)現(xiàn)。
ironic可以實(shí)現(xiàn)硬件基礎(chǔ)設(shè)施資源的快速交付。
目前,在OpenStack體系結(jié)構(gòu)中,Ironic還是通過(guò)Nova來(lái)調(diào)用的,模擬Nova的一個(gè)虛擬化驅(qū)動(dòng)(其它的虛擬化驅(qū)動(dòng)還有KVM、VMware、Xen等),實(shí)現(xiàn)基于Ironic的虛擬化驅(qū)動(dòng)。
預(yù)先配置好PXE、IPMI等服務(wù),完成Ironic的相關(guān)配置之后,用戶(hù)就可以使用Nova API來(lái)實(shí)現(xiàn)一個(gè)物理機(jī)實(shí)例的創(chuàng)建。Nova用于管理虛擬機(jī)的生命周期;Ironic則是用于管理物理機(jī)的生命周期,它給Nova提供管理物理機(jī)的API接口。
對(duì)Nova而言,通過(guò)Ironic部署物理機(jī),和部署虛擬機(jī)的調(diào)用流程是一樣的,都是通過(guò)Nova的接口來(lái)執(zhí)行創(chuàng)建實(shí)例,只是底層的nova-scheduler和nova-compute驅(qū)動(dòng)不一樣。虛擬機(jī)底層驅(qū)動(dòng)采用的是虛擬化技術(shù),而物理機(jī)采用的是PXE和IPMI技術(shù)。
作為openstack中的一個(gè)獨(dú)立模塊,Ironic需要與keystone、nova、neutron、cinder以及swift進(jìn)行交互,像Nova創(chuàng)建虛擬機(jī)一樣,需要對(duì)應(yīng)的認(rèn)證服務(wù)、網(wǎng)絡(luò)服務(wù)、塊存儲(chǔ)服務(wù)、對(duì)象存儲(chǔ)服務(wù)等。