openstack虛擬機做存儲分區問題的解決方案之一

openstack實例存儲分區的構建方案


     對於在openstack的實例中做存儲,不管是做cinder還是swift首先就是要解決分區問題。今天在openstack的實例中構建swift存儲是就就遇到這樣的問題。對於分區我們可以使用一下的幾種方案:

  1. 構建共享存儲,或者做iscsi存儲服務器等

  2. 使用實例自帶的硬盤進行分區

  3. 使用迴環設備作爲服務器的存儲設備

  4. 在本地的服務器中構建swift使用openstack的雲硬盤將其掛載至所需的實例中。(還未做測試,只是一種方案)

所用的文件系統官方推薦使用xfs。

接下來就是具體的實施過程:

      第一條命令:if=/dev/zero表示空輸入,即自動填充0of= /srv/swift-disk表示輸出到指定文件;bs=1024表示同時設置讀入/輸出的塊大小(字節),即每次讀入/輸出1024字節的數據塊;count=0表示拷貝0個塊,塊大小由bs指定;seek=15000000從輸出文件開頭跳過15000000個塊後再開始複製。第一條命令的結果是創建了一個15000000*1024字節大小的文件(約15GB,未自動填充0),爲創建迴環設備做準備,這裏我的實例總共爲30G,因此分這麼大。用戶可以根據自己的實際情況進行設定。 

      第二條命令:.xfs表示創建的是XFS格式的迴環設備;-i size=1024,當數據小於1024KB時,寫入inode中,當數據大於1024KB時,寫入block中,默認值爲256KB;還可以考慮設置 -l size=128m,可顯著提升XFS文件系統刪除文件、拷貝文件等操作的速度,但需要大內存的支持,默認值的是10m。第二條命令的結果是在上述文件的基礎上創建了XFS迴環設備。


1. 創建存儲文件夾。

# mkdir /srv/

2.在所創建的存儲文件夾中創建我們上面所說的XFS文件格式,來構建迴環設備

# dd if=/dev/zero of=/srv/swift-disk bs=1024 count=0 seek=15000000
# mkfs.xfs -f -i size=1024 /srv/swift-disk

3.將所創建好的迴環設備寫入開機掛載當中,使其進行開機自動掛載。

#vi  /etc/fstab
#/srv/swift-disk /srv/node/sdb1 xfs loop,noatime,nodiratime,nobarrier,logbufs=8 0 0

4.創建迴環設備的掛載點,並對其進行掛載。

# mkdir -p /srv/node/sda4 
# mount /srv/node/sda4

5.添加掛載文件的所屬用戶和所屬組爲root

# chown -R root:root /srv/node

這裏需要說的一點就是dd命令。關鍵是要對dd命令進行學習。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章