真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

openstack學習-理解存儲管理-創(chuàng)新互聯(lián)

openstack存儲類型

openstack中存儲可以分為兩類,如下圖所示:
openstack學習-理解存儲管理
目前openstack支持三種類型的持久存儲:塊存儲、對象存儲和文件系統(tǒng)存儲

創(chuàng)新互聯(lián)科技有限公司專業(yè)互聯(lián)網基礎服務商,為您提供聯(lián)通機房服務器托管,高防服務器,成都IDC機房托管,成都主機托管等互聯(lián)網服務。

openstack學習-理解存儲管理
因為目前Manila使用較少,重點為CInder和Swift
openstack學習-理解存儲管理

塊存儲Cinder

Cinder簡介

Cinder在OpenStack中的位置和作用
openstack學習-理解存儲管理
Cinder的核心功能是對卷的管理,允許對卷、卷的類型、卷的快照、卷備份進行處理。它為后端不同的存儲設備提供給了統(tǒng)一的接口,不同的塊設備服務廠商在Cinder中實現(xiàn)其驅動,可以被Openstack整合管理

Cinder的架構

openstack學習-理解存儲管理

  • Cinder Client封裝Cinder提供rest接口,以CLI形式提供用戶使用
  • Cinder API對外提供rest API,對操作需求進行解析,對API進行路由尋找對應的處理方法。包含卷的增刪改查(包括對源卷、鏡像、快照創(chuàng)建)、快照增刪改查、備份、volume type管理、掛載/卸載(Nova調用)等。
  • Cinder Scheduler負責收集backend上報的容量、能力信息,根設定的算法完成卷到指定cinder-volume的調度
  • Cinder Volume多節(jié)點部署,使用不同的配置文件,接入不同的backend設備,由各存儲廠商插入driver代碼與設備交互完成設備容量和能力信息的收集,卷操作
  • Cinder Backup實現(xiàn)將卷的數(shù)據(jù)備份到其他存儲介質(目前SWIFT/Ceph/TSM提供了驅動)
  • SQL DB提供儲卷、快照、備份、service等數(shù)據(jù),支持Mysql,PG,MSSQL等SQL數(shù)據(jù)庫

openstack學習-理解存儲管理

Cinder 組件-API

Cinder API對外提供REST API,對操作需求進行解析,并調用處理方法:

  • 卷create/delete/list/show
  • 快照create/delete/list/show
  • 卷attach/detach(nova調用)
  • 其他:
    Volume types
    Qutotas
    Backups

    Cinder組件-Scheduler

    Cinder scheduler負責收集后端上報的容量,能力信息,根據(jù)設定的算法完成卷到指定cinder-volume的調度,它通過過濾和稱權,篩選出合適的后端:
    openstack學習-理解存儲管理
    根據(jù)后端的能力進行篩選

  • Drivers定期報告后端的能力和狀態(tài)
  • 管理員創(chuàng)建的卷類型
  • 創(chuàng)建卷時,用戶指定卷類型

Cinder組件-Volume

Cinder volume多節(jié)點部署,使用不同的配置文件、接入不同的后端設備,由各存儲廠商插入Driver代碼與設備交互,完成設備容量和能力信息收集,卷操作等。
openstack學習-理解存儲管理
Cinder默認的后端驅動是LVM

典型工作流程

openstack學習-理解存儲管理
Cinder-volume會定期收集底層后端的容量信息,并通知Scheduler更新內存中的Backend信息

創(chuàng)建卷類型的目的是為了篩選不同的后端存儲,例如SSD,STAT,高性能,低性能,通過創(chuàng)建不同的自定義卷類型,創(chuàng)建卷時自動給篩選出合適的后端存儲

Cinder API

openstack學習-理解存儲管理

  • 檢查卷參數(shù)合法性(用戶輸入,權限,資源是否存在等)
  • 準備創(chuàng)建參數(shù)字典,預留和提交配額
  • 在數(shù)據(jù)庫中創(chuàng)建對應的數(shù)據(jù)記錄
  • 通過消息列隊將請求和參數(shù)發(fā)送到Scheduler

Cinder Scheduler

openstack學習-理解存儲管理
提取收到的請求參數(shù)
通過配置的filter和輸入參數(shù)后端進行過濾

  • Avialability_zone_filter
  • Capactiy_filter
  • Capabilities_filter
  • Affinity_filter
  • Weigher計算后端進行權重

  • CapactiyWeigher/AllocatedCapacityWeigher
  • ChanceWeigher
  • GoodnessWeigher
  • 選取最優(yōu)的Backend并通過消息列隊將請求發(fā)送到指定的后端

和Nova Scheduler類似,Cinder Scheduler也是經過Filter刪選合適條件的后端,然后使用Weigher計算后端進行權重排序,最終選擇出最合適的后端存儲

Cinder Volume

openstack學習-理解存儲管理

提供接收到的請求參數(shù)
調用對應的Driver在后端創(chuàng)建世紀的卷
使用Driver返回的模型更新數(shù)據(jù)庫中的記錄

Cinder掛載卷流程

openstack學習-理解存儲管理
掛卷流程:掛卷時通過Nova和Cinder的配合最終將遠端的卷連接到虛擬機所在的Host節(jié)點上,并最終通過虛擬機管理程序映射到內部的虛擬機中

  • Nova調用Cinder api創(chuàng)建卷,傳遞主機的信息,如hostname,ISCSI initiator name,FC WWWPNs
  • Cinder API將該信息傳遞給Cincer Volume
  • Cinder Volume通過創(chuàng)建卷時保存的host信息找到對應的Cinder Driver
  • Cinder Driver通知存儲允許該主機訪問該卷,并返回該存儲的連接信息(如ISCSI iqn,portal,FC target WWPN,NFS path)
  • Nova調用針對不同存儲類型進行主機識別磁盤的代碼(Cinder提供了brick模塊用于參考)實現(xiàn)識別磁盤或者文件設備
  • Nova通知Cinder已經進行了掛載
  • Nova將主機的設備信息傳遞給hypervisor來實現(xiàn)虛擬機掛載磁盤

    Cinder主要操作

    openstack學習-理解存儲管理

對象存儲Swift

Swift簡介

Swift提供高度可用、分布式、最終一致的對象存儲服務

openstack學習-理解存儲管理
Swift并不是文件系統(tǒng)或者試試的數(shù)據(jù)存儲系統(tǒng),它稱為對象存儲,用于永久類型的靜態(tài)數(shù)據(jù)的長期存儲,這些存儲可以檢索,調整,必要時進行更新
最蛇和存儲的數(shù)據(jù)類型的例子是虛擬機鏡像,圖片存儲,郵件存儲和存檔備份
因為沒有中心的單元或主控節(jié)點,Swift提供了更強的擴展性,冗余和持久性
Swift經常用于存儲鏡像或者用于存儲虛擬機實例卷的備份副本
openstack學習-理解存儲管理

Swift應用
鏡像存儲后端:在Openstack中與鏡像服務Glance結合,為其存儲鏡像文件
靜態(tài)數(shù)據(jù)存儲:由于swift的擴展能力,適合存儲日志文件和數(shù)據(jù)備份倉庫

Swift架構

openstack學習-理解存儲管理
Swift中對象存儲URL如下所示:
https://swift.example.com/va/account/container/object
URL有兩個部分:集權位置和存儲位置
集群位置:swift.example.com/v1/
存儲位置(對象):/account/containr/oject
存儲位置有如下三種:
/account
賬戶存儲位置是唯一命名的存儲區(qū)域,其中包含賬戶本身的元數(shù)據(jù)(描述性信息)以及賬戶中的容器列表
/account/container
容器存儲位置是賬號內的用戶定義的存儲區(qū)域,其中包含容器本身和容器中的對象列表的元數(shù)據(jù)
/account/container/object
對象存儲位置存儲了數(shù)據(jù)對象及元數(shù)據(jù)的位置。

Swift組件

Proxy Server:對外提供對象服務API,由于采用無狀態(tài)的REST請求協(xié)議,可以進行橫向擴展來負載均衡
Account Server:提供賬戶元數(shù)據(jù)和統(tǒng)計信息,并維護所含容器列表的服務,每個賬號的信息被存儲在一個SQLite數(shù)據(jù)庫中
Container Server:提供容器元數(shù)據(jù)和統(tǒng)計信息,并維護所含對象列表的服務,每個容器的信息也存儲在一個SQLite數(shù)據(jù)庫中
Object Server:提供對象元數(shù)據(jù)和內容服務,每個對象的內容會以文件的形式存儲在文件系統(tǒng)中,元數(shù)據(jù)會作為文件屬性來存儲
Replicator:檢測本地分區(qū)副本和遠程副本是否一致,發(fā)現(xiàn)不一致時會采用推式(Push)更新遠程副本,并且確保被標記刪除的對象從該文件系統(tǒng)中移除
Updater:當對象由于高負載的原因而無法立即更新時,任務將會被序列化在本地文件系統(tǒng)中進行排隊,以便服務恢復后進行異步更新
Auditor:檢查對象,容器和賬戶的完整性,如果發(fā)現(xiàn)比特級錯誤,文件將被隔離,并復制其他的副本以覆蓋本地損壞的副本;其他類型錯誤會被記錄到日志中
Account Reaper:移除標記為刪除的賬戶,刪除其所包含的所有容器和對象

Swift API

Swift通過Proxy server向外提供基于HTTP的REST服務接口,對賬戶、容器和對象進行CRUD等操作

openstack學習-理解存儲管理

Swift數(shù)據(jù)模型

三層邏輯結構:Accout/Contianer/Object
每層節(jié)點數(shù)沒有限制,可以任意擴展
openstack學習-理解存儲管理

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


網站題目:openstack學習-理解存儲管理-創(chuàng)新互聯(lián)
本文URL:http://weahome.cn/article/dpgopj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部