聽(tīng)說(shuō)我司在準備
OpenStack,未雨綢繆,得提前學(xué)習一下。自己不是云計算提供商,運營(yíng)而已,最多可以做點(diǎn)定制開(kāi)發(fā),因此目的很簡(jiǎn)單。了解其從運營(yíng)方面的各個(gè)環(huán)節,從安裝到交付到后期的收費與維護。關(guān)于
OpenStack的介紹,可以參考
OpenStack架構預覽。關(guān)于其和其他云平臺的比較,可以參考
四大主流云平臺對比:CloudStack、Eucalyptus、vCloud Director和OpenStack及
OpenStack 與 CloudStack 比較。
自己之前也研究了一段VMware vCould,教程可以參考
這里。
本文接下來(lái)使完全參考
羅勇的博客,唯一的不同時(shí)我采用的是
VMware Player來(lái)搭配環(huán)境。由于
VMware Player不支持自定義網(wǎng)絡(luò ),需要手工編輯虛擬機文件??梢詤⒖?a target="_blank" >VMware Player 添加定制網(wǎng)卡。最終的結果是一切順便,除了最后一步創(chuàng )建虛擬機實(shí)例失敗,原因有待考察。
轉載開(kāi)始:
一直以來(lái),對于
OpenStack的初學(xué)者來(lái)講,安裝往往是入門(mén)的頭大難題。在E版本之前,要搭建一個(gè)基本能用的OpenStack環(huán)境那是相當麻煩,自己要裝機,自己搞源,自己照著(zhù)文檔敲命令,又沒(méi)有靠譜的文檔,官方給出的文檔依舊有好多坑,語(yǔ)言問(wèn)題……
往往用上好幾天時(shí)間都裝不起來(lái),慢慢地就喪失了學(xué)習OpenStack的信心!不過(guò)后來(lái)情況有了很大改觀(guān),從E版本開(kāi)始,以后安裝過(guò)程簡(jiǎn)化許多,文檔質(zhì)量提高不少。盡管如此對于初學(xué)者還講還是比較復雜,其實(shí)很多時(shí)候,很多人只是想體會(huì )一下OpenStack,完全不關(guān)注安裝這門(mén)子事情。還好OpenStack社區足夠活躍,很快就有公司做出了比較友好的安裝工具,比如今天要向大家介紹的
Fuel這個(gè)工具,其實(shí)這里還可以叫她mirantis OpenStack,由
Mirantis 公司開(kāi)發(fā)。
關(guān)于 Mirantis
Mirantis,一家很牛逼的OpenStack服務(wù)集成商,他是社區貢獻排名前5名中唯一一個(gè)靠軟件和服務(wù)吃飯的公司(其他分別是Red Hat, HP, IBM, Rackspace)。相對于其他幾個(gè)社區發(fā)行版,
Fuel的版本節奏很快,平均每?jì)蓚€(gè)月就能提供一個(gè)相對穩定的社區版。
Fuel 是什么?
Fuel 是一個(gè)為OpenStack端到端”一鍵部署“設計的工具,其功能含蓋自動(dòng)的PXE方式的操作系統安裝,DHCP服務(wù),Orchestration服務(wù) 和puppet 配置管理相關(guān)服務(wù)等,此外還有OpenStack關(guān)鍵業(yè)務(wù)健康檢查和log 實(shí)時(shí)查看等非常好用的服務(wù)。
Fuel 3.2基于Grizzly版本,而最新將發(fā)布的4.0版本是基于Havana版本的技術(shù)預覽版,不可用作生產(chǎn)環(huán)境使用,同時(shí),4.0版本仍然不包含Heat和Ceilometer組件。
Fuel 的優(yōu)勢
總結一下,Fuel 有以下幾個(gè)優(yōu)點(diǎn):
節點(diǎn)的自動(dòng)發(fā)現和預校驗
配置簡(jiǎn)單、快速
支持多種操作系統和發(fā)行版,支持HA部署
對外提供API對環(huán)境進(jìn)行管理和配置,例如動(dòng)態(tài)添加計算/存儲節點(diǎn)
自帶健康檢查工具
支持Neutron,例如GRE和namespace都做進(jìn)來(lái)了,子網(wǎng)能配置具體使用哪個(gè)物理網(wǎng)卡等
Fuel 的架構是怎樣的呢?
Fuel 主節點(diǎn):用于提供PXE方式操作系統安裝服務(wù)由開(kāi)源軟件Cobbler 提供,另外由Mcollective和puppet 分別提供orchestration服務(wù)和配置管理服務(wù)。Fuel iso 包發(fā)部的時(shí)候已經(jīng)一同打包了Centos6.4 和ubuntu 12.04 安裝包,如果需要使用紅帽子企業(yè)版RHEL6.4 需要自己手動(dòng)上傳。
目前可以支持OpenStackSA 或者HA 的安裝?,F在我們已經(jīng)對Fuel 有了大致了解,現在來(lái)看看用她來(lái)安裝OpenStack有多么的方便!
Fuel OpenStack安裝
首先要說(shuō)明的是Fuel 針對目標就是生產(chǎn)環(huán)境OpenStack部署,這里為了講解安裝過(guò)程就在虛擬機上演示說(shuō)明。我的環(huán)境是HP筆記本Folio 9470 ,其實(shí)是辦公用的普通筆記本,讀者可以根據實(shí)際機器情況自行修改虛擬機配置,我給出了我的配置僅供參考。
安裝說(shuō)明
硬件要求:
啟用虛擬化技術(shù)支持:開(kāi)啟BIOS設置里的虛擬化技術(shù)支持相關(guān)選項,這個(gè)會(huì )很大程度上影響你的虛擬機性能。
最低硬件配置:cpu:雙核2.6GHZ+;內存:4g+;磁盤(pán):80G+
虛擬化工具:Oracle Virtualbox 4.2.18
安裝包準備:
下載virtualbox 包
https://www.virtualbox.org/wiki/Downloads下載fuel ios包,先要注冊一個(gè)mirantis 用戶(hù)賬戶(hù),目前最新版本是3.2.1 這個(gè)版本, MirantisOpenStack-3.2.1.iso (1.8G)
http://www.openstack.cn/p383.html安裝步驟介紹:
虛擬環(huán)境設置
安裝Fuel 主節點(diǎn)
部署OpenStack節點(diǎn)
部署結果檢查
虛擬環(huán)境設置
網(wǎng)絡(luò )拓撲說(shuō)明
首先在virtualbox 里面自定義如下3個(gè)網(wǎng)絡(luò )
Net1:
–Network name: VirtualBox host-only Ethernet Adapter#2
–Purpose: Fuel administrator network
–IP block: 10.20.0.0/24
–Linux device: eth0
Net2:
–Network name: VirtualBox host-only Ethernet Adapter#3
–Purpose: public/ floating network
–IP block: 172.16.0.0/24
–Linux device: eth1
Net3
–Network name: VirtualBox host-only Ethernet Adapter#4
–Purpose: Storage/ management/ internal network
–IP block: 192.168.4.0/24
–Linux device: eth2
虛擬機創(chuàng )建
VM1
–Name: Fuel_3.2.1
–vCPU:1
–Memory :1G
–Disk:30G
–Networks: net1
VM2
–Name : Fuel_3.2.1_controller
–vCPU:1
–Memory :1G
–Disk:30G
–Network:net1,net2,net3
VM3
–Name: Fuel_3.2.1_compute1
–vCPU:2
–Memory :2G
–Disk:30G
–Networks:net1,net2,net3
網(wǎng)絡(luò )拓撲如下
創(chuàng )建網(wǎng)絡(luò )Net1,注意不要啟用dhcp,這個(gè)會(huì )干擾fuel 自己的dhcp服務(wù)。
創(chuàng )建網(wǎng)絡(luò )net2
創(chuàng )建網(wǎng)絡(luò )net3
安裝fuel 主節點(diǎn)
創(chuàng )建fuel 主節點(diǎn)虛擬機,虛擬機名字為“fuel_3.2.1“。注意網(wǎng)卡選用net1,也就是virtualbox 的”VirtualBox host-only Ethernet Adapter#2“ 網(wǎng)絡(luò )。
設置完成后啟動(dòng)虛擬機,顯示boot menu時(shí)候,如果需要修改ip地址可以自行修改,默認是不需要修改。
開(kāi)始安裝操作系統
出現該畫(huà)面時(shí)按任意鍵進(jìn)入修改fuel 主節點(diǎn)相關(guān)配置,可以不修改使用默認值,幾秒后進(jìn)行軟件包安裝。
puppet 安裝fuel 相關(guān)軟件,比如Cobbler 等。
fuel 主節點(diǎn)安裝完成。
看fuel 安裝是否完成,就登錄http://10.20.0.2:8000/ 顯示如下頁(yè)面。
可能的問(wèn)題:
如果web 頁(yè)面不能正常訪(fǎng)問(wèn),可能是你本機的防火墻把本地的網(wǎng)絡(luò )拒掉,請先禁用防火墻再試。
如果使用了瀏覽器http代理,請關(guān)閉代理直接訪(fǎng)問(wèn)。
接下來(lái)就開(kāi)始安裝OpenStack環(huán)境了。
安裝OpenStack環(huán)境
首先在Fuel web 上創(chuàng )建一個(gè)OpenStack環(huán)境,名字為”demo“,這個(gè)環(huán)境是可以創(chuàng )多個(gè)的,可見(jiàn)fuel可以同時(shí)管理多個(gè)OpenStack環(huán)境。這里選擇的os 有三種,這里默認選擇centos,當然你也可以選擇ubuntu 和rhle ,不過(guò)rhle 需要手動(dòng)上傳鏡像或者提供紅帽子官網(wǎng)用戶(hù)名和密碼,fuel 為你自動(dòng)下載,不過(guò)時(shí)間比較長(cháng),不推薦。
這里選擇部署OpenStack多節點(diǎn)非HA模式。
由于我們是在虛擬機中再跑虛擬機,這里選擇hypervisor類(lèi)型為”qemu“。
這里選擇OpenStack的網(wǎng)絡(luò )部署模式,我們選最簡(jiǎn)單的方式也是目前最成熟的方式nova-network實(shí)現。
最后一路使用default 配置,不做更改完成環(huán)境創(chuàng )建。
創(chuàng )建OpenStack節點(diǎn)虛擬機VM2和VM3,分別命名為fuel_3.2.1_controller和fuel_3.2.1_compute1,注意計算節點(diǎn)多分配寫(xiě)cpu core ,至少2個(gè),內存2G,當然如果機器配置不夠也可以1個(gè)core 1G內存,至少后邊創(chuàng )建OpenStack的instance比較慢。
設置系統由network啟動(dòng)
配置網(wǎng)卡1,接入net1,注意一定要選擇 網(wǎng)卡類(lèi)型為:Pcnet-PCI II,并且開(kāi)啟混雜模式:Allow All.
配置網(wǎng)卡2,接入net2.
配置網(wǎng)卡3,接入net3
讓后分別啟動(dòng)VM2和VM3
畫(huà)面出現bootstrap login 后,在fuel web 頁(yè)面才可以看到節點(diǎn)被fuel發(fā)現。
回到fuel web 可以看到兩個(gè)節點(diǎn)被發(fā)現
接下來(lái)開(kāi)始針對這兩個(gè)被發(fā)現的節點(diǎn)VM2,VM3配置OpenStack環(huán)境了。
首先需要配置VM2和VM3在OpenStack中的角色。點(diǎn)擊”add nodes“ 添加VM2作為OpenStack的控制節點(diǎn)。
在點(diǎn)擊”add nodes“ 添加VM3作為OpenStack的計算節點(diǎn)。
修改兩個(gè)節點(diǎn)的物理網(wǎng)卡和OpenStack邏輯網(wǎng)絡(luò )的映射關(guān)系,這里只需要拖拽就搞定。admin 網(wǎng)絡(luò )已經(jīng)設置到eth0不能再作修改10.20.0.0/24,public和 instance floating 網(wǎng)絡(luò )共用eth1 且共用同一個(gè)地址塊172.16.0.0/24,而private ,management 和storage 共用eth2 但是網(wǎng)絡(luò )ip不同,需要通過(guò)vlan tag 方式實(shí)現二層網(wǎng)絡(luò )隔離。
修改兩個(gè)節點(diǎn)磁盤(pán)的分區情況,這里使用默認值,注意storage 分區不能小于10g,否則不能通過(guò)驗證。
再來(lái)配置OpenStack最復雜的一塊網(wǎng)絡(luò ),其實(shí)按照我給的網(wǎng)絡(luò )拓撲使用默認值就可以安裝啦,是不是很方便?不過(guò)還是要啰嗦一下:
public IP用于物理機器和外界通信,floating IP 用于動(dòng)態(tài)分配給OpenStackinstance 實(shí)現和外界通信。注意這里地址塊不能重疊。
由于private ,management 和storage 共用同一網(wǎng)卡且IP 塊不同要實(shí)現二層隔離就需要打上vlan 的tag,如果是接在真實(shí)的交換機,必須啟用trunk 模式。
一旦網(wǎng)絡(luò )配置完畢并安裝完成,這個(gè)地址是永久不能改變的,所以生產(chǎn)環(huán)境下一定要先規劃好在部署。
配置完成后點(diǎn)擊 ”networking verification“ 按鈕,檢查網(wǎng)絡(luò )設置是否正確。
驗證通過(guò)后保持設置,開(kāi)始部署節點(diǎn)。
此時(shí)可以發(fā)現兩個(gè)VM開(kāi)始自動(dòng)重啟開(kāi)始安裝OS。
這里比較古怪,安裝進(jìn)度到33%時(shí)需要等很久才能往下走。這個(gè)時(shí)候兩個(gè)節點(diǎn)的OS都已經(jīng)安裝完成。
有什么辦法能看到安裝的log呢?當然有,這時(shí)候可以去log 標簽視圖查看安裝log,選取”other server“,在選對應節點(diǎn)的puppet log 看log 跳動(dòng)。
最后,一切順利的話(huà),大概20 幾分鐘安裝就會(huì )完成了,不過(guò)具體時(shí)間取決于機器性能,這時(shí)候點(diǎn)擊http://172.16.0.2 或者 http://10.20.0.4 都可以訪(fǎng)問(wèn)OpenStack的dashboard .區別在于172.16.0.2 所謂的公網(wǎng)ip 地址,這個(gè)登后dashboard 可以直接使用vnc 訪(fǎng)問(wèn)instance,而10.20.0.4不能。
點(diǎn)擊鏈接進(jìn)入OpenStack登錄頁(yè)面,輸入admin/admin
至此,OpenStack的環(huán)境部署完成,這里部署了一個(gè)計算節點(diǎn),一個(gè)控制節點(diǎn)。沒(méi)有部署cinder ,沒(méi)有部署多計算節點(diǎn)。如果需要部署,請重復上述步驟即可。
最后,就是驗證一下OpenStack環(huán)境是否正確部署。其實(shí)fuel 有個(gè)非常好的而一個(gè)功能,可以快速檢測OpenStack環(huán)境”健康“情況。進(jìn)入healthcheck 標簽,可以一鍵安全檢測,注意不會(huì )全部都通過(guò),應為cinder 沒(méi)有安裝,所以create volume 相關(guān)的服務(wù)會(huì )失敗。
最后我們還是創(chuàng )個(gè)instance 來(lái)驗證吧?
安裝OpenStack環(huán)境驗證
先登錄后進(jìn)入OpenStack主管理界面,創(chuàng )建一個(gè)instance,進(jìn)入project view – > 打開(kāi)instances tab -> 點(diǎn)擊右上方luanch 按鈕。instance 名字為test0
instance 創(chuàng )建成功后,同時(shí)點(diǎn)擊相應instance test0右邊的”more“ 按鈕,選擇”allocation floating ip“,為其分配一個(gè)floating ip 地址。
直接在web 頁(yè)面訪(fǎng)問(wèn)instance: 點(diǎn)擊 右端 ”more“ -> “console” 按鈕進(jìn)入該頁(yè)面,這是是用web socket 技術(shù)實(shí)現的VNC 客戶(hù)端,用它可以做一些簡(jiǎn)單instance 管理,不足是不能粘貼拷貝比較麻煩。
最后在筆記本上打開(kāi)一個(gè)”cmd“ 終端看一下floating ip 是否通暢。
至此fuel web OpenStack安裝介紹結束,如果要安裝更多節點(diǎn)請重復上面操作即可。
其他工具
當然,OpenStack安裝工具不只是有fuel ,還有紅帽子的packstack 也是不錯的,并且支持最新版本的OpenStack安裝。這里有篇文章對二者做了比較全面的介紹
http://www.openstack.cn/p383.html。
參考文檔:
http://openstack-huawei.github.io/mirantis-openstack/http://software.mirantis.com/quick-start/http://www.openstack.cn/p383.html分享百度空間QQ空間新浪微博一鍵通 4