Hardware introspection for OpenStack Bare Metal
This is an auxiliary service for discovering hardware properties for a node managed by Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given it’s power management credentials (e.g. IPMI address, user name and password).
安装与配置ironic-inspector
ironic-inspector的流程说明
ironic-inspector使用ironic-agent镜像,以及自身提供的一个dnsmasq服务预先布置BM,主要的工作流程为:
1. 通过ironic api进入inspect阶段(也可以使用ironic-inspector的api)
2. ironic启动BM(如BM已启动,则关闭再启动),BM进入pxe启动阶段;通过ironic-inspector-dnsmasq分配ip地址,成功后使用tftp将ironic-agent镜像传输至BM;BM从ironic-agent镜像启动
3. ironic-python-agent开始工作,其与ironic-inspector取得通信,根据inspector中的rule,对BM进行inspect动作,主要目的为获取BM的硬件信息;收集完毕后ipa将数据传输给ironic-inspector;关闭BM
4. ironic-inspector根据配置中store_data选择的driver来存储收集到的数据;inspect阶段完成
安装软件包
添加rdo的ocata源:
yum install https://repos.fedorapeople.org/repos/openstack/openstack-ocata/rdo-release-ocata-2.noarch.rpm -y
下载ironic-inspector及其client的rpm包:
yum install openstack-ironic-inspector python-ironic-inspector-client -y
(可用安装源码代替,但是需要手动配置,源码从github上openstack对应模块的stable/ocata branch下载)
- https://github.com/openstack/ironic-inspector/tree/stable/ocata
- https://github.com/openstack/python-ironic-inspector-client/tree/stable/ocata
创建ironic-inspector的认证信息及endpoint
openstack user create --domain default --project services --project-domain default --password ironic --enable ironic-inspector
openstack service create --name ironic-inspector --description 'Bare Metal Introspection Service' --enable baremetal-introspection
openstack role add --user ironic-inspector --project services --project-domain default --user-domain default admin
openstack endpoint create --region RegionOne --enable ironic-inspector admin http://{ironic-inspector-server-address}:5050
openstack endpoint create --region RegionOne --enable ironic