自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

OpenStack 入門及三大存儲組件淺析

存儲 存儲軟件 OpenStack
大家好,想必大家也聽說過 openstack ,很多人在學(xué)習(xí)過程中都感覺openstack 整個架構(gòu)比較復(fù)雜,涉及到的組件較多,學(xué)習(xí)也比較吃力。

 大家好,想必大家也聽說過 openstack ,很多人在學(xué)習(xí)過程中都感覺openstack 整個架構(gòu)比較復(fù)雜,涉及到的組件較多,學(xué)習(xí)也比較吃力。

一、認(rèn)識 OpenStack

OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.

以上是官網(wǎng)對 OpenStack 的定義,OpenStack 對整個數(shù)據(jù)中心的計(jì)算、存儲以及網(wǎng)絡(luò)資源進(jìn)行統(tǒng)一的管理。云計(jì)算平臺是一個面向服務(wù)層面的架構(gòu),按照提供服務(wù)的不同可分為 IaaS(Infrastructure as a Service,基礎(chǔ)設(shè)施即服務(wù))、PaaS(Platform as a Service,平臺即服務(wù))和 SaaS(Software as a Service,軟件即服務(wù))。由上述官網(wǎng)定義來看,OpenStack 針對的是 IT 基礎(chǔ)設(shè)施,是 IaaS 層的云操作系統(tǒng)。

OpenStack 已經(jīng)走過了 9 個年頭。每半年會發(fā)布一個新的版本,版本以字母順序命名?,F(xiàn)在已經(jīng)到了第 18 個版本 Rocky(版本 R),從最初的只有兩個模塊(服務(wù)),發(fā)展到現(xiàn)在的數(shù)十個模塊,每個模塊都作為獨(dú)立的子項(xiàng)目開發(fā)。那么,既然有那么多的服務(wù)模塊,我們應(yīng)該如何去進(jìn)行高效的學(xué)習(xí)呢——抓住 openstack 最本質(zhì)的東西(計(jì)算,存儲,網(wǎng)絡(luò)資源的統(tǒng)一管控),如下圖所示:

 

在 openstack 這么龐大的架構(gòu)里面,究竟哪些組件模塊是負(fù)責(zé)管理計(jì)算,存儲,網(wǎng)絡(luò)資源的呢?組件之間又是如何進(jìn)行協(xié)調(diào)工作的呢?(下圖被稱為「神圖」,圖片有點(diǎn)大,請橫屏來看)

 

架構(gòu)是個好東西,它能夠幫助我們站在高處看清楚事物的整體結(jié)構(gòu),上圖是 openstack 各個組件之間以及組件內(nèi)部的交互圖,其實(shí)也并不復(fù)雜。今天我們先來學(xué)習(xí)一下 openstack 的三大存儲組件 Glance,Cinder,Swift。

二、淺析 OpenStack 的三大存儲組件 Glance,Cinder,Swift

I.Glance,Cinder,Swift 是什么?

首先咱們要明白,Glance,Cinder,Swift 究竟是什么東西?在 openstack 當(dāng)中,Glance 是負(fù)責(zé)提供 Image Service(鏡像服務(wù))的,這個所謂的鏡像服務(wù)指的就是去管理 Image,讓用戶能夠發(fā)現(xiàn)、獲取和保存 Image。Image 是一個模板,里面包含了基本的操作系統(tǒng)和其他的應(yīng)用軟件,在云環(huán)境的大需求下,(大規(guī)模)手動去安裝部署系統(tǒng)比較不靈活,時間較長,效率低下,這個時候就需要更加高效的解決方案————Image。再來看 Cinder,在 openstack 當(dāng)中,Cinder 是用來提供塊存儲服務(wù)的。什么是塊存儲?大家其實(shí)可以簡單理解為裸硬盤,通過某種協(xié)議(SCSI,iSCSI,SAN 等)掛接裸硬盤,然后進(jìn)行分區(qū)、格式化、創(chuàng)建文件系統(tǒng),或者直接使用裸硬盤提供存儲空間,進(jìn)行數(shù)據(jù)存儲。Swift,為 openstack 提供一種分布式、持續(xù)虛擬對象存儲,他其實(shí)類似于 Amazon Web Service 的 S3 簡單存儲服務(wù)。Swift 具有跨節(jié)點(diǎn)百級對象的存儲能力,內(nèi)建冗余和失效備援管理,也能夠處理歸檔和媒體流,特別是對大數(shù)據(jù)(千兆字節(jié))和大容量(多對象數(shù)量)的測度非常有效。該服務(wù)不是必需的,為可選服務(wù)。接下來咱們具體來看下三大組件的內(nèi)部架構(gòu)以及各個子組件的作用。

II.Glance

 

Glance-api:接收 REST API 請求,通過其他模塊(glance-registry 及 image store)來完成諸如鏡像的查找、獲取、上傳、刪除等操作。

glance-registry:用于與 MySQL 數(shù)據(jù)庫交互,用于存儲或獲取鏡像的元數(shù)據(jù)(metadata)。

image store:是一個存儲的接口層,通過這個接口,glance 可以獲取鏡像,image store 支持的存儲有 Amazon 的 S3、OpenStack 本身的 Swift,還有諸如 ceph,sheepdog,GlusterFS 等分布式存儲。

III.Cinder

 

Cinder Client 封裝 Cinder 提供的 rest 接口,以 CLI 形式供用戶使用。

Cinder API 對外提供 rest API,對操作需求進(jìn)行解析,對 API 進(jìn)行路由尋找相應(yīng)的處理方法。包含卷的增刪改查(包括從源卷、鏡像、快照創(chuàng)建)、快照增刪改查、備份、volume type 管理、掛載/卸載(Nova 調(diào)用)等。

Cinder scheduler 負(fù)責(zé)收集 backend 上報(bào)的容量、能力信息,根據(jù)設(shè)定的算法完成卷到指定 cinder-volume 的調(diào)度。

Cinder volume 多節(jié)點(diǎn)部署,使用不同的配置文件、接入不同的 backend 設(shè)備,由各存儲廠商插入 driver 代碼與設(shè)備交互完成設(shè)備容量和能力信息收集、卷操作。

Cinder backup 實(shí)現(xiàn)將卷的數(shù)據(jù)備份到其他存儲介質(zhì)(目前 Swift/Ceph/TSM 提供了驅(qū)動)。

SQL DB 提供存儲卷、快照、備份等數(shù)據(jù),支持 Mysql、PG、MSSQL 等 SQL 數(shù)據(jù)庫。

IV.Swift

 

Proxy Server:對外提供對象服務(wù) API,由于采用無狀態(tài)的 REST 請求協(xié)議,可以進(jìn)行橫向擴(kuò)展來均衡負(fù)載。 ◎Account Server:提供賬戶元數(shù)據(jù)和統(tǒng)計(jì)信息,并維護(hù)所含容器列表的服務(wù),每個賬戶的信息被存儲在一個 SQLite 數(shù)據(jù)庫中。 ◎Container Server:提供容器元數(shù)據(jù)和統(tǒng)計(jì)信息,并維護(hù)所含對象列表的服務(wù),每個容器的信息也存儲在一個 SQLite 數(shù)據(jù)庫中。 ◎Object Server:提供對象元數(shù)據(jù)和內(nèi)容服務(wù),每個對象的內(nèi)容會以文件的形式存儲在文件系統(tǒng)中,元數(shù)據(jù)會作為文件屬性來存儲,建議采用支持?jǐn)U展屬性的 XFS 文件系統(tǒng)。

Replicator:檢測本地分區(qū)副本和遠(yuǎn)程副本是否一致,發(fā)現(xiàn)不一致時會采用推式(Push)更新遠(yuǎn)程副本,并且確保被標(biāo)記刪除的對象從文件系統(tǒng)中移除。 ◎Updater:當(dāng)對象由于高負(fù)載的原因而無法立即更新時,任務(wù)將會被序列化到在本地文件系統(tǒng)中進(jìn)行排隊(duì),以便服務(wù)恢復(fù)后進(jìn)行異步更新。 ◎Auditor:檢查對象,容器和賬戶的完整性,如果發(fā)現(xiàn)比特級的錯誤,文件將被隔離,并復(fù)制其他的副本以覆蓋本地?fù)p壞的副本;其他類型的錯誤會被記錄到日志中。

Account Reaper:移除被標(biāo)記為刪除的賬戶,刪除其所包含的所有容器和對象。

三、三大存儲組件的區(qū)別

功能上的區(qū)別

Glance 提供鏡像服務(wù),他負(fù)責(zé)對鏡像進(jìn)行管理,例如發(fā)現(xiàn)、注冊,鏡像是產(chǎn)生虛擬機(jī)系統(tǒng)盤的模板;Cinder 給虛擬機(jī)提供塊級的持久化卷,通過 Cinder 可以實(shí)現(xiàn)卷的創(chuàng)建、掛載、快照等功能;Swift 是 openstack 提供的一種分布式、持續(xù)虛擬對象存儲。

存儲空間的區(qū)別

Glance 并不保存鏡像,他將數(shù)據(jù)交給后端存儲去進(jìn)行保存:Swift、本地存儲、OBS 等;Cinder 本身也不保存卷,但他可以通過 Driver 來接管各種存儲,并通過這些存儲給虛擬機(jī)提供空間。他可以接管華為 VRM Datastore、VMware Datastore、華為 FusionStorage、華為 OceanStorV3、LVM 等;Swift 它本身維持空間并對外提供對象存儲服務(wù),通常使用本地存儲+XFS 文件系統(tǒng)。

總結(jié)一下,今天我們學(xué)習(xí)了 openstack 以及三大存儲組件的本質(zhì)以及作用,想要深入學(xué)習(xí)的同學(xué)可以課下去查閱 openstack 相關(guān)的文檔,參照對應(yīng)的文檔不妨可以搭建 openstack 實(shí)驗(yàn)環(huán)境來進(jìn)行一個系統(tǒng)的學(xué)習(xí)。Openstack經(jīng)過多年的發(fā)展,整個組織架構(gòu)變得越來越龐大。本身提供多種存儲服務(wù),這也是為了滿足更多不同的需求,體現(xiàn)出開源項(xiàng)目靈活快速的特性??偟恼f來,當(dāng)需要去選擇存儲的時候,如果考慮到將來會被多個應(yīng)用所共同使用,應(yīng)該視為長期的決策。Openstack作為一個開放的系統(tǒng),最主要是解決軟硬件供應(yīng)商鎖定的問題,可以隨時選擇新的硬件供應(yīng)商,將新的硬件和已有的硬件組成混合的集群,統(tǒng)一管理,當(dāng)然也可以替換軟件技術(shù)服務(wù)的提供商,不用動應(yīng)用。這是開源本身的優(yōu)勢。

責(zé)任編輯:武曉燕 來源: Cloud云說
相關(guān)推薦

2014-11-27 13:29:29

OpenStackSwift開源

2013-04-01 09:55:03

OpenStack存儲

2018-09-12 10:10:11

云存儲種類特征

2017-09-08 09:18:24

主流對象存儲

2018-01-17 22:44:46

云存儲云服務(wù)存儲

2023-03-17 08:04:15

云存儲安全Veritas

2009-08-21 15:06:27

C#網(wǎng)絡(luò)聊天程序

2013-11-06 14:16:23

流程

2013-11-29 09:26:40

綜合布線萬兆銅纜智能管理

2015-08-27 10:18:35

VMwareOpenStack架構(gòu)整合

2009-09-16 15:33:22

LINQ to XML

2014-11-11 13:39:31

云存儲監(jiān)控存儲

2018-11-13 09:49:11

存儲云存儲云備份

2018-06-21 16:20:48

云存儲云計(jì)算IO

2009-08-18 15:31:07

C# 操作Excel

2009-01-16 09:42:19

SQL Server算法IO成本

2023-11-17 16:29:38

2015-01-21 09:10:43

OpenStackVMwareDebian Linu

2009-07-17 09:44:40

iBATIS教程

2013-08-01 11:31:50

存儲虛擬化虛擬化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號