tripleo之Ironic_python_agent的學習(一)

聲明:

本博客歡迎轉載,但請保留原作者信息!

作者:姜飛

團隊:華爲杭州OpenStack團隊


我們知道當前ironic的deploy模塊是通過打開一個iSCSI設備,ironic-conductro來OS的鏡像文件寫到iSCSI的設備上。

ironic-python-agent  認爲deploy還可以直接訪問硬件,提供以下功能:

  • 磁盤格式化
  • 磁盤分區
  • 安裝OS( Bootloaders, OS)
  • 固件升級
  • raid配置

ironic-python-agent的總體思路,引用官方的架構圖:

最開始使用的是iscsi的流程是這樣的



新的流程是:



當前ironic python agent 進行硬件能力自發現的流程如下:


最新的代碼流程上使用的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


安裝完docker後,還要執行 pip install -r requirements.txt 

docker的版本一定要支持docker build 這個子命令,要不然會報錯的。提示:

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



make成功後,需要鏡像文件放置到tftp服務器,作爲PXE的deploy鏡像使用。



發佈了51 篇原創文章 · 獲贊 48 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章