简述openstack
大家好,我顧某人又回來了,開學(xué)第一更。。。。
以下內(nèi)容均為個(gè)人理解和整理,有不對的地方還望dalao指正。。。。。
本文所用圖片均已標(biāo)明來源。
openstack是什么?
OpenStack是一個(gè)開源的云計(jì)算管理平臺項(xiàng)目,由幾個(gè)主要的組件組合起來完成具體工作。OpenStack支持幾乎所有類型的云環(huán)境,項(xiàng)目目標(biāo)是提供實(shí)施簡單、可大規(guī)模擴(kuò)展、豐富、標(biāo)準(zhǔn)統(tǒng)一的云計(jì)算管理平臺。
openstack組成
openstack由以下七個(gè)主要部分組成:
- Nova:計(jì)算服務(wù)
- Neutron:網(wǎng)絡(luò)管理服務(wù)
- Keystone:認(rèn)證服務(wù)
- Swift:對象存儲服務(wù)
- Cinder:塊存儲服務(wù)
- Glance:鏡像管理服務(wù)
- Horizon:操作界面
openstack整體架構(gòu)
圖源網(wǎng)絡(luò)
openstack組成詳解
Nova
Nova提供CPU、內(nèi)存、網(wǎng)絡(luò)適配器和硬件驅(qū)動器等服務(wù)器資源虛擬化的功能,提高了資源的利用率。
通過Nova api來接受和響應(yīng)用戶的請求,實(shí)時(shí)對VM進(jìn)行啟動、掛起、停止等功能。
Nova主要包含的組件有:
- Nova-api
響應(yīng)用戶的請求 - Nova-scheduler
負(fù)責(zé)VM的調(diào)度,決定了VM運(yùn)行在哪臺主機(jī)上。 - Nova-compute
管理VM實(shí)例的生命周期 - Nova-conductor
計(jì)算服務(wù)與數(shù)據(jù)庫的交互中介,避免直接訪問數(shù)據(jù)庫 - Nova-console
提供訪問VM的控制臺 - Nova-consoleauth
負(fù)責(zé)對VM控制臺的請求提供Token認(rèn)證 - Nova-cert
提供證書 - Hypervisor
虛擬化管理程序,用于實(shí)現(xiàn)硬件的虛擬化 - database
用于存放一些Nova的數(shù)據(jù) - message queue
用于Nova子服務(wù)之間的相互協(xié)調(diào)和通信
Neutron
Neutron架構(gòu),圖源CloudMan
Neutron通過plugin和agent提供的網(wǎng)絡(luò)服務(wù)。
調(diào)用網(wǎng)絡(luò)的API分為以下兩種:
- Core API
對外提供network、subnet和port的API - Resource and Attribute Extension API
對外提供管理router、load balance、firewall等資源的API。
Neutron的plugin分為Neutron Core Plugins和Neutron Service Plugins。
- Neutron Core Plugins
Neutron的核心插件,實(shí)現(xiàn)Core API在數(shù)據(jù)庫中維護(hù)network、subnet和port的狀態(tài),并負(fù)責(zé)調(diào)用相應(yīng)的agent在network provider上執(zhí)行相關(guān)操作. - Neutron Service Plugins
Neutron的擴(kuò)展插件,實(shí)現(xiàn)Extension Plugin API,在數(shù)據(jù)庫中維護(hù)router、load balance、security group等資源的狀態(tài),并負(fù)責(zé)調(diào)用相應(yīng)的agent在network provider上執(zhí)行相關(guān)操作.
Message Queue:消息隊(duì)列
用于Plugins和Agent相互之間的調(diào)用.
Keystone
keystone為openstack組件提供認(rèn)證服務(wù)和管理用戶及其權(quán)限。
keystone中有幾個(gè)重要的概念要了解一下:User(用戶)、Role(角色)、Tenant(租戶)、Service(服務(wù))。
- User 用戶,keystone的授權(quán)用戶
- Role 角色,表示用戶可以訪問資源的權(quán)限
- Tenant 租戶,各個(gè)服務(wù)中可以訪問的資源合集
- Service 服務(wù),租戶可以提供的服務(wù)
keystone的運(yùn)作流程大概是這樣的:當(dāng)User想要去訪問某個(gè)Service時(shí),首先他要向keystone出示它的Credentials,Keystone認(rèn)證之后會給User一個(gè)Token,然后User就可以使用這個(gè)Token去訪問Service,這時(shí)這個(gè)Service就會向keystone去驗(yàn)證User的Token,如果驗(yàn)證成功,那么User就成功訪問到Service中的Endpoint,且User的Role越高,訪問到的Service越多。
通俗的來講是這樣的:
User|住酒店的人
|:-|:-
Tenant|酒店
Credentials|酒店房間鑰匙
Authentication|房客認(rèn)證機(jī)制
Token|發(fā)給能打開房間的人的憑證,用于享受酒店的服務(wù)
Service|酒店提供的一種服務(wù)
Endpoint|酒店提供服務(wù)中的具體服務(wù)
Role|酒店會員等級
Swift
Swift為OpenStack提供一種分布式、持續(xù)虛擬對象存儲,主要用于存儲大的對象文件,比如虛擬機(jī)的備份。
Cinder
openstack的一種塊存儲方式,掛載給虛擬機(jī)使用,可以給虛擬機(jī)提供額外的空間。
swift和cinder的比較
swift類似于保存PC的系統(tǒng),而cinder類似于保存PC里面的文件。
Glance
openstack中用于保存創(chuàng)建VM的鏡像,比如,現(xiàn)在現(xiàn)在需要安裝一個(gè)win7的操作系統(tǒng)給公司的某個(gè)員工使用,按照傳統(tǒng)的操作方式需要花費(fèi)大量時(shí)間,但是現(xiàn)在在云環(huán)境中,只需要直接從glance中按模板啟動win7即可,二七人只許耗費(fèi)幾秒鐘的時(shí)間
glance包括glance-api、glance-registry和store backend.
- glance-api
對外提供API,用于響應(yīng)image的查詢、獲取等調(diào)用。 - glance-registry
用于處理和存取image的的元數(shù)據(jù),例如大小、類型等,并且戴護(hù)具對應(yīng)到Database。 - store backend
用于存放image。
Horizon
簡單的來說,Horizon是一個(gè)web接口,用于將openstack的資源聚集到一起并進(jìn)行圖形化管理。
最后騙一波流量個(gè)人博客
轉(zhuǎn)載于:https://www.cnblogs.com/Timesi/p/9588352.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的简述openstack的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [BZOJ2655] calc
- 下一篇: Building designing U