tripleo之Ironic_python_agent的学习(一)

声明:

本博客欢迎转载,但请保留原作者信息!

作者:姜飞

团队:华为杭州OpenStack团队


我们知道当前ironic的deploy模块是通过打开一个iSCSI设备,ironic-conductro来OS的镜像文件写到iSCSI的设备上。

ironic-python-agent  认为deploy还可以直接访问硬件,提供以下功能:

  • 磁盘格式化
  • 磁盘分区
  • 安装OS( Bootloaders, OS)
  • 固件升级
  • raid配置

ironic-python-agent的总体思路,引用官方的架构图:

最开始使用的是iscsi的流程是这样的

tripleo之Ironic_python_agent的学习(一)_第1张图片


新的流程是:

tripleo之Ironic_python_agent的学习(一)_第2张图片


当前ironic python agent 进行硬件能力自发现的流程如下:

tripleo之Ironic_python_agent的学习(一)_第3张图片

最新的代码流程上使用的ironic的POST 请求

自发现请求的URL是:/v1/drivers/{driver}/vendor_passthru/lookup  

心跳请求的URL是: /v1/nodes/{uuid}/vendor_passthru/heartbeat  此处的uuid 是自发现节点上报给IRONIC后,返回给ironic python agent的node 的uuid


那我们来看下如何制作ironic-python-agent的镜像, ironic python agent 使用docker + coreos ,是当前很火的一个技术。

ironic python agent 提供了imagebuild目录:

cd ~/ironic-python-agent/imagebuild/coreos
pip install -r requirements.txt
make 

这里的make执行的时候会执行2个步骤

make docker
make coreos


环境操作:

HOSTOS的环境 ubuntu14.04 


安装docker

apt-get install docker.io
service docker.io status  #查看docker的服务状态
ln -sf /usr/bin/docker.io /usr/local/bin/docker  #创建命令行docker

tripleo之Ironic_python_agent的学习(一)_第4张图片

安装完docker后,还要执行 pip install -r requirements.txt 

docker的版本一定要支持docker build 这个子命令,要不然会报错的。提示:

[root@localhost coreos]# make
./docker_build.bash
.................
make: *** [docker] Error 1

tripleo之Ironic_python_agent的学习(一)_第5张图片


make成功后,需要镜像文件放置到tftp服务器,作为PXE的deploy镜像使用。

tripleo之Ironic_python_agent的学习(一)_第6张图片


你可能感兴趣的:(openstack,安装部署,tripleO)