1. 程式人生 > >CloudStack那些事兒2 : 主儲存與二級儲存

CloudStack那些事兒2 : 主儲存與二級儲存

CloudStack的管理的儲存按用途分為主儲存(Primary Storage)和二級儲存(Secondary Storage),主儲存用來儲存虛擬機器的卷,二級儲存用來存放虛擬機器的模板,ISO映象和快照。值得一提的是,這裡的主儲存並不是指我們平時說的主存(RAM),它是Storage而不是Memory,可以理解為是硬碟,主儲存和二級儲存僅僅是存放的檔案型別不同,使用的儲存裝置的型別是一樣的。

主儲存

當我們建立一臺虛擬機器時,需要為它指定至少一個卷(Volume),對於虛擬機器來說,一個卷就相當於一個硬碟。在CloudStack中,虛擬機器的卷被存放在主儲存中:
這裡寫圖片描述

如上如所示,在CloudStack中 ,主儲存有兩種:本地儲存(Local)和共享儲存(Shared)。本地儲存在宿主機上,所以當虛擬機器的卷使用本地儲存時,只能被和它處於同一宿主機的虛擬機器訪問,而使用共享儲存時,任意一臺宿主機只要能訪問該儲存,宿主機上的虛擬機器也就能訪問該儲存,也就是說該儲存是被多臺宿主機上的虛擬機器共享的。

虛擬機器遷移

當虛擬機器使用共享儲存時,虛擬機器可以線上遷移到其他宿主機上,因為虛擬機器本質上只是一個程序,只需要把該程序複製到另外一臺可以訪問它的卷的宿主機上,即可完成虛擬機器的遷移。但使用本地儲存的虛擬機器無法實現線上遷移,因為其他宿主機無法訪問該虛擬機器位於本地儲存上的卷,如圖所示,我們將虛擬機器VM3從Host1遷移到Host2:
這裡寫圖片描述

卷遷移

在CloudStack中,使用本地儲存的虛擬機器不僅虛擬機器本身不能遷移,虛擬機器的卷也是不能遷移的,也就是說一旦建立虛擬機器時選擇了本地儲存,那麼這臺虛擬機器永遠只會跑在同一臺宿主機上,而它的卷也只能存放在該宿主機的本地儲存上。但是使用共享儲存的虛擬機器的卷是可以遷移到其他共享儲存上去的,如圖所示,我們把卷4從共享儲存1遷移到共享儲存2
這裡寫圖片描述

在實際生產中,我們並不能保證宿主機永遠狀態正常,因為種種原因宕機的情況也是難以避免的事,如果我們的虛擬機器使用的是本地儲存,那麼一旦宿主機掛掉虛擬機器也要跟著掛掉,如果宿主機的硬碟壞了有可能導致虛擬機器的卷也丟失了,對於重要的業務,特別是單節點(沒有啟用主備)執行的業務,使用本地盤是比較危險的方式,更為保險的方式是使用共享儲存,這樣一旦宿主機掛掉可以快速地將業務遷移到其他可用的宿主機上,從而保證跑在雲上的業務穩定執行。但使用本地儲存也是有一定好處的,現在許多伺服器的硬碟都是SSD盤,使用SSD盤做本地儲存IO效能會好一些。所以當我們建立虛擬機器時要根據我們的需求權衡一下利弊來選擇虛擬機器是使用本地儲存還是共享儲存。

二級儲存

二級儲存上存放的是ISO映象,模板,快照。三者的作用分別如下:

  1. ISO映象:就是作業系統的ISO檔案,當我們建立虛擬機器時,如果我們為虛擬機器指定的是一個ISO映象,那麼當虛擬機器啟動時,就會進入作業系統的安裝介面,按步驟安裝完作業系統以後,下次啟動虛擬機器時就可以直接進入安裝好的作業系統中了。
  2. 模板:使用ISO映象時,每次建立一臺虛擬機器都需要安裝一次作業系統,這顯然效率低下,我們可以把安裝完作業系統的虛擬機器的卷作為模板上傳上去,建立虛擬機器時選擇相應的虛擬機器模板,創建出來的虛擬機器就是安裝好作業系統的,啟動後可以直接進入作業系統。
  3. 快照:我們可以在任意時刻對虛擬機器的卷拍攝快照,然後把快照做成自定義模板,通過自定義模板創建出來的虛擬機器的卷和拍攝快照時的虛擬機器的卷是一模一樣的,我們可以通過這種方式在模板中預裝好一些常用的軟體或儲存一些配置資訊。

    三者的作用其實是類似,這裡我們以模板為例,介紹一下建立虛擬機器時模板的作用。我們知道,虛擬機器要正常執行至少要有一個ROOT卷(卷分兩種:ROOT卷和DATA卷),ROOT卷需要安裝好作業系統,虛擬機器啟動時才能進入作業系統正常使用,那麼這個ROOT卷是哪裡來的呢?當我們在CloudStack建立虛擬機器時,需要為其指定一個模板,虛擬機器的ROOT卷就是通過從二級儲存上覆制這個模板到主儲存上得到的,但一個主儲存第一次使用一個模板時,模板會從二級儲存上覆制一份放到主儲存上,以後這個主儲存上的ROOT卷再使用這個模板時,就可以直接從主儲存上拷貝,無需每次都去二級儲存上拷貝,大體流程如下圖所示:
    這裡寫圖片描述

相關推薦

CloudStack那些事兒2 : 儲存二級儲存

CloudStack的管理的儲存按用途分為主儲存(Primary Storage)和二級儲存(Secondary Storage),主儲存用來儲存虛擬機器的卷,二級儲存用來存放虛擬機器的模板,ISO映象和快照。值得一提的是,這裡的主儲存並不是指我們平時說的主存(

關於開發入門的那些事兒2

開發入門 eclips 自己 設置 C# 集成 F5 env rate 說一個新的名詞,開發工具,有了開發工具,你後續的工作才會更輕松。 先簡介一個新的東西IDE全名 Integrated Dexelopment Environment 翻譯過來就是集成開發環境,這是用

找工作筆試面試那些事兒(2)---函式那些

作者:寒小陽 時間:2013年8月。 出處:http://blog.csdn.net/han_xiaoyang/article/details/10539723。 宣告:版權所有,轉載請註明出處,謝謝。   六、函式那些事        

儲存管理2-頁式段式儲存管理

頁式儲存管理 計算機儲存的層次結構:暫存器,快取記憶體cache,主儲存器DRAM,DDRAM,外部儲存器 分割槽是程序的連續儲存;以下是分散儲存 原理:實體記憶體劃分許多固定大小的塊,稱物理頁面,

裝系統那些事兒-2-作業系統安裝分類和原理

上次介紹了電腦的啟動流程,在此基礎上介紹一下作業系統的安裝分類和原理。 安裝方法分類介紹 現在作業系統的常用安裝方法現在主要有如下幾種: 1.作業系統安裝光碟安裝 Windows安裝光碟,裝過盜版系統的都知道那些年赫赫有名的“番茄家園”、“雨林木風”吧,最開始知道這些就是從

View那些事兒(2) -- 理解MeasureSpec

View的繪製的三大流程的第一步就是Measure(測量),想要理解View的測量過程,必須要先理解MeasureSpec,從字面上看,MeasureSpec就是“測量規格”的意思。其實它在一定程度上決定了View的測量過程,具體來講它包含了一個View的尺寸規

儲存儲存

1 為什麼要按列儲存 列式儲存(Columnar or column-based)是相對於傳統關係型資料庫的行式儲存(Row-basedstorage)來說的。簡單來說兩者的區別就是如何組織表(翻譯不好,直接抄原文了): Ø  Row-based storage stores

物件儲存儲存

什麼是塊儲存 資料被儲存在固定大小的塊內。塊內只儲存資料本身;Address就是塊唯一的識別資訊;對於塊儲存,沒有metadata. 當應用和資料都在本地的時候,效能會比較好;當應用和資料在地理位置上分離較遠的時候,效能會較差。 常見的企業級塊儲存由SAN提供。 適用場景: 塊儲

vue-x儲存本地儲存(localstorage、sessionstorage)

sessionstorage 也稱會話快取,當用戶關閉瀏覽器視窗後,資料就會被刪除; localstorage 儲存的資料沒有時間限制,只要不刪除,都會存在 vue-x 一個專為 Vue.js 應用程式開發的狀態管理模式。它採用集中式儲存管理應用的所有元件的狀態,並以

佇列的鏈式儲存順序儲存

佇列是一種先進先出的線性表,佇列也有兩種結構:順序儲存和鏈式儲存 一:佇列的鏈式儲存結構 為了實現鏈式儲存,就要設定結點資訊——元素和指向下一個結點的指標。為了實現佇列的先進先出(FIFO)的功能,就要有兩個指標指向開始和結尾,才能方便的進行插入和刪除。但是如何表示佇列

儲存儲存的區別

寫入:行儲存的寫入是一次完成,資料的完整性因此可以確定。列儲存需要把一行記錄拆分成單列儲存,寫入次數明顯比行儲存多。行儲存在寫入上佔有很大的優勢資料修改:行儲存是在指定位置寫入一次,列儲存是將磁碟定位到多個列上分別寫入。行儲存在資料修改也是佔優的資料讀取:行儲存通常將一行資料

NoSQL中的行儲存儲存

 在已知的幾種大資料處理軟體中,Hadoop的HBase採用列儲存,MongoDB是文件型的行儲存,Lexst是二進位制型的行儲存。在這裡,我不討論這些軟體的技術和優缺點,只圍繞機械磁碟的物理特質,分析行儲存和列儲存的儲存特點,以及由此產生的一些問題和解決辦法。   一

內部儲存外部儲存的區別

內部儲存: 內部儲存不是記憶體,而是一個位於系統中很特殊的一個位置。放入內部儲存中的資料一般都只能被你的應用訪問到,且一個應用所建立的所有檔案都在應用包名相同的目錄下,即/data/data/pack

徹底理解android中的內部儲存外部儲存

我們先來考慮這樣一個問題: 開啟手機設定,選擇應用管理,選擇任意一個App,然後你會看到兩個按鈕,一個是清除快取,另一個是清除資料,那麼當我們點選清除快取的時候清除的是哪裡的資料?當我們點選清除資料的時候又是清除的哪裡的資料?讀完本文相信你會有答案。 在android開發中

linux磁碟檔案系統管理的那些事兒2

我們接著第一篇文章講起。 檔案系統掛載與解除安裝 建立完檔案系統,我們需要將新建的檔案系統掛載到根檔案系統上的某個目錄上,進而我們便可以通過該目錄來訪問該檔案系統。建立這種關聯關係的過程稱為掛載,所掛載的目錄稱為掛載點;若解除這種關聯關係,則稱之為解除安裝; 由

多執行緒的那些事兒2)-- 程序執行緒的區別聯絡

  在進行多執行緒程式設計之前我們先解決一個基本問題:什麼是執行緒、什麼是程序,他們之間有什麼區別與聯絡。 (1)程序:執行環境                   執行緒:執行單位         用書面一點的知說,程序是一個計算機中程式執行的一個實體,執行緒是作業系

【黑金原創教程】【FPGA那些事兒-驅動篇I 】實驗九:PS/2模組③ — 鍵盤多組合鍵

實驗九:PS/2模組③ — 鍵盤與多組合鍵 筆者曾經說過,通碼除了單位元組以外,也有雙位元組通碼,而且雙位元組通碼都是 8’hE0開頭,別名又是 E0按鍵。常見的的E0按鍵有,<↑>,<↓>,<←>,<→>,<HOME>,<PRTSC>

【黑金原創教程】【FPGA那些事兒-驅動篇I 】實驗八:PS/2模組② — 鍵盤組合鍵

實驗八:PS/2模組② — 鍵盤與組合鍵 實驗七之際,我們學習如何讀取PS/2鍵盤傳送過來的通碼與斷碼,不過實驗內容也是一鍵按下然後釋放,簡單按鍵行為而已。然而,實驗八的實驗內容卻是學習組合鍵的按鍵行為。 不知讀者是否有類似的經歷?當我們使用鍵盤的時候,如果5~6按鍵同時按下,電腦隨之便會發出“嗶嗶”的警

分布式系統的那些事兒(三) - 系統系統之間的調用

數據格式 轉換 處理 分布 互調 圖片處理 動作 人性 並且 系統與系統之間的調用通俗來講,分為本地同一臺服務器上的服務相互調用與遠程服務調用,這個都可以稱之為RPC通信。淺白點講,客戶訪問服務器A,此時服務器要完成某個動作必須訪問服務器B,服務器A與B互相通信,相互調用,

c/c++面試12-18------關sizeof那些事兒

none 不同 都是 include png com rtu 偏移量 ecc 12 使用sizeof計算普通變量所占空間大小 (1)不同數據類型所占字節數不同(32位 64位系統不同) int----->4 double----->4 char-------&g