360Stack裸金屬服務器部署實踐

 方慧琳 360雲計算 python

女主宣言ios

裸金屬特性是一種將物理設備做爲資源提供給租戶的雲計算服務,租戶經過該服務可申請、管理和配置相應的物理設備資源,本文將介紹360Stack裸金屬服務器的部署實踐。服務器

PS:豐富的一線技術、多元化的表現形式,盡在「360雲計算」,點關注哦!網絡

1架構

裸金屬介紹tcp

裸金屬特性是一種將物理設備做爲資源提供給租戶的雲計算服務,租戶經過該服務可申請、管理和配置相應的物理設備資源。這種物理設備是未安裝操做系統的服務器,又稱爲裸金屬服務器,簡稱裸金屬。ide

在Openstack中,由Ironic這個組件來提供裸金屬的部署和管理。Ironic須要與Keystone、Nova、Neutron、Cinder以及Swift進行交互,像Nova建立虛擬機同樣,須要對應的認證服務、網絡服務、塊存儲服務、對象存儲服務等。學習

對Nova而言,經過Ironic部署物理機,和部署虛擬機的調用流程是同樣的,都是經過Nova的接口來執行建立實例。不一樣之處在於,調度裸金屬時所用的套餐,與建立虛機的套餐不一樣;裸金屬節點所屬的nova-compute驅動與虛機要用的nova-compute驅動不同;虛擬機底層驅動採用的是虛擬化技術,而物理機採用的是PXE和IPMI技術。如下是Ironic與Nova,Neutron,Glance,Cinder,Swift等組件交互的邏輯架構圖。雲計算

圖片

2spa

裸金屬服務的部署階段

部署階段


部署階段也稱爲Provision/Deploy階段,租戶向雲平臺申請裸金屬資源,雲平臺爲租戶分配資源,併爲裸金屬加載系統鏡像。

1)在deploy階段,ironic-conductor將裸金屬設置爲PXE引導安裝模式,通知neutron準備好TFTP配置,而後啓動裸金屬。裸金屬上電後學習到DHCP報文,根據DHCP報文的TFTP Server地址,向Ironic節點獲取kernel及ramdisk鏡像並啓動,這個ramdisk裏包含了ironic-python-agent;在實際使用中,iPXE會比PXE下載鏡像的速度更快,推薦使用iPXE更好。

2)啓動後,ironic-python-agent會和Ironic控制節點互通,鏈接到Ironic控制節點的http server,獲取完整的用戶系統鏡像。

運行階段


也稱爲Tenant階段,裸金屬服務器啓動系統鏡像,業務開始運行

(1) 待部署階段的鏡像獲取完成,Ironic通知裸金屬重啓,則進入租戶網絡運行。

3

不一樣網絡模式下的裸金屬部署

原生Ironic支持Flat和VLAN模式的裸金屬部署,而對於Vxlan模式不支持,咱們結合networking-l2gw這個項目,實現了Vxlan網絡模式下的裸金屬部署。下面介紹一下每種模式的組網場景。

flat網絡模式

image.png

1) ironic控制節點所在的管理網絡(management network)要和裸機的ipmi網絡互通,由於要對裸機作開關機,設置bios啓動項等操做;

2) 裸機的deploy網絡及tenant網絡使用的是同一個flat網絡(圖中的external network),無需進行切換,且該網絡要與管理網絡互通;

3) 下圖爲裸機tftp的一個截圖,deploy階段分配了一個external ip,部署結束後的租戶網絡依然是使用這個ip。


image.png

vlan網絡模式

image.png

(1) 使用直通網絡部署,須要在neutron里加入networking-generic-switch這個插件,

(2) Ironic服務在部署階段,會通知插件將裸金屬所接的交換機端口配置爲使用deploy vlan(藍色實線)

(3) 在運行階段,插件將裸金屬所接的交換機端口配置爲使用tenant vlan(橘色實線)

(4) 部署階段和運行階段也能夠使用同一個vlan,那麼會分配一個相同的IP,無需進行切換。

vxlan網絡模式


(1) 安裝networking-l2gw後,在neutron裏配置並啓動neutron-l2gw-agent

(2) 裸金屬鏈接的交換機開啓ovsdb的功能。

(3) 在neutron裏建立l2gw及l2gw connection, neutron會調用l2gw對應的plugin去創建控制節點到交換機,以及計算節點到交換機的隧道,從而來打通虛機到裸機的vpc網絡。



image.png

(4) 在Ironic控制節點上須要建立一個部署網絡裏的虛擬網卡,經過這個虛擬網卡,裸金屬能夠與Ironic控制節點上的ironic服務/tftp server/http server互通,從而獲取到部署鏡像及用戶系統鏡像。

(5) 計算節點與交換機創建的隧道信息,以及交換機上學習到的虛機MAC地址信息能夠經過執行ovsdb-client dump --pretty tcp:<交換機ip>:6632 看到



image.png

image.png


相關文章

  • https://docs.openstack.org/ironic/latest/

  • http://kimizhang.com/neutron-l2-gateway-hp-5930-switch-ovsdb-integration/

相關文章
相關標籤/搜索