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

把Sheepdog裝進OpenStack

運維 系統運維 OpenStack
Sheepdog是一個分布式存儲系統,并具有對象存儲功能。本文主要介紹Sheepdog的安裝、簡單使用方法,以及怎樣與OpenStack集成。

現在網上有關Sheepdog使用方面的資料還是少一些,本文主要介紹sheepdog的安裝、簡單使用方法,以及怎樣與OpenStack集成。

編譯安裝

Sheepdog提供源碼包(tarball)下載,同樣能夠安裝使用。不過,發(fā)布工作需要制作deb安裝包,而tarball制作安裝包時有個地方引用了git log命令,由于tarball源碼所在目錄不是git倉庫而導致出錯,所以,***還是通過git獲取sheepdog的源碼:

  1. mkdir -p download 
  2. cd download/ 
  3. git clone https://github.com/sheepdog/sheepdog.git sheepdog-github 

 

切換到***穩(wěn)定版0.7.6:

  1. cd sheepdog-github/ 
  2. git checkout v0.7.6 

 

執(zhí)行autogen.sh生成configure,在此之前,可能需要安裝依賴:

  1. sudo apt-get install autoconf libtool make pkg-config 
  2. ./autogen.sh 

 

正式編譯,sheepdog本身依賴于corosync、zookeeper等集群管理工具,如果制作deb包,還依賴于debian的一些工具:

  1. sudo apt-get install liburcu-dev corosync corosync-dev \ 
  2. zookeeper zookeeperd libzookeeper-mt-dev 
  3. ./configure --enable-zookeeper 
  4. sudo apt-get install debhelper dh-autoreconf devscripts 
  5. make deb 

 

生成的安裝包在上一層目錄,執(zhí)行安裝:

  1. cd .. 
  2. sudo dpkg -i sheepdog_0.7.6-1_amd64.deb 

 

完成后,重新登錄會遇到以下錯誤:

  1. Last login: Tue Dec 31 14:57:10 2013 from network 
  2. -bash: script/bash_completion_dog: No such file or directory 
  3. -bash: script/bash_completion_dog: No such file or directory 

 

這是因為0.7.6源碼中一個過時的文件沒有清理,可以在安裝之后清理:

  1. sudo rm -f /etc/bash_completion.d/sheepdog 

 

或者make deb之前清理:

  1. rm -f debian/sheepdog.bash-completion 

 

兩者唯一區(qū)別是后者執(zhí)行sheep -v查看版本時,會發(fā)現版本字符串后面加上dirty標識。

如果把sheepdog_0.7.6-1_amd64.deb拷貝到其它機器安裝,可能需要安裝依賴:

  1. sudo apt-get install zookeeperd libcfg4 libcpg4 \ 
  2. libzookeeper-mt2 libcoroipcc4 

 

某些Ubuntu源可能找不到libcfg4和libcoroipcc4,可以修改源或者到http://packages.ubuntu.com/下載

 


配置zookeeper

一般正式環(huán)境使用zookeeper作為sheepdog集群的管理工具,需要相關配置。如果只是單節(jié)點試用,可以不配置zookeeper。

首先修改myid文件,保證每個zookeeper節(jié)點的myid都不一樣,文件內容是1-255之間的數字:

  1. sudo vi /etc/zookeeper/conf/myid 

 

然后修改zoo.cfg文件,主要填寫各個zookeeper節(jié)點的信息:

  1. sudo vi /etc/zookeeper/conf/zoo.cfg 

 

修改內容如下所示,格式為server.myid=host:port1:port2

  1. server.11=sd1:2888:3888 
  2. server.12=sd2:2888:3888 
  3. server.13=sd3:2888:3888 
  4. server.14=sd4:2888:3888 
  5. server.15=sd5:2888:3888 

 

上面表示zookeeper節(jié)點共有5個,最多允許2臺節(jié)點掛掉,剩余3臺還能保持一個多數派。

啟動服務,apt-get時已啟動,所以需要restart。

  1. sudo service zookeeper restart 

 


啟動sheepdog

建立工作目錄并賦予權限,僅作為例子,創(chuàng)建磁盤分區(qū)等細節(jié)不再贅述。如果以非root用戶使用sheepdog,例如sheepdog用戶,記得賦予相應目錄的權限。

  1. sudo mkdir /mnt/sheepdog 
  2. sudo mount -t ext4 -o noatime,barrier=0,user_xattr,data=writeback /dev/sda4 /mnt/sheepdog 
  3. sudo chown -R sheepdog:sheepdog /mnt/sheepdog 

 

簡單啟動sheepdog

  1. sheep /mnt/sheepdog \ 
  2. -c zookeeper:sd1:2181,sd2:2181,sd3:2181,sd4:2181,sd5:2181 

 

使用對象緩存

事先掛載SSD到/mnt/cache,以下啟動命令為所在的sheepdog節(jié)點分配約256G的對象緩存。注意有的版本不認size=256G,要寫成size=256000。

  1. sheep -w size=256000,dir=/mnt/cache,directio /mnt/sheepdog \ 
  2. -c zookeeper:sd1:2181,sd2:2181,sd3:2181,sd4:2181,sd5:2181 

 

如需要,創(chuàng)建開機啟動

Sheepdog安裝時會在/etc/init.d目錄創(chuàng)建sheepdog服務腳本,不過目前并不完善,***還是把上面的sheepdog啟動命令放到/etc/rc.local文件。


常用sheepdog及qemu命令

格式化sheepdog集群

如果單節(jié)點試用一下功能,副本數設置為1(–copies==1)即可。

  1. $ dog cluster format --copies=3 
  2. using backend plain store 

 

查看sheepdog集群

  1. $ dog cluster info 
  2. Cluster status: running, auto-recovery enabled 
  3. Cluster created at Tue Dec 31 17:40:29 2013 
  4. Epoch Time           Version 
  5. 2013-12-31 17:40:29      1 [10.1.48.44:7000, 192.168.1.2:7000, 192.168.1.3:7000, 192.168.1.4:7000, 192.168.1.5:7000] 

 

查看sheepdog節(jié)點

  1. $ dog node info 
  2. Id  Size    Used    Avail   Use% 
  3. 0  139 GB  0.0 MB  139 GB    0% 
  4. 1  139 GB  0.0 MB  139 GB    0% 
  5. 2  139 GB  0.0 MB  139 GB    0% 
  6. 3  435 GB  0.0 MB  435 GB    0% 
  7. 4  217 GB  0.0 MB  217 GB    0% 
  8. Total   1.0 TB  0.0 MB  1.0 TB    0% 
  9. Total virtual image size    0.0 MB 

 

導入一個鏡像到sheepdog

  1. $ qemu-img convert -t directsync mint15.img sheepdog:mint 

 

查看sheepdog鏡像列表

  1. $ dog vdi list 
  2. Name        Id    Size    Used  Shared    Creation time   VDI id  Copies  Tag 
  3. mint         0   16 GB  4.1 GB  0.0 MB 2013-12-31 17:50   8ec519     3               

 

再次查看sheepdog節(jié)點

  1. $ dog node info 
  2. Id  Size    Used    Avail   Use% 
  3. 0  139 GB  1.8 GB  137 GB    1% 
  4. 1  139 GB  1.9 GB  137 GB    1% 
  5. 2  139 GB  2.2 GB  137 GB    1% 
  6. 3  435 GB  3.7 GB  431 GB    0% 
  7. 4  217 GB  2.7 GB  215 GB    1% 
  8. Total   1.0 TB  12 GB   1.0 TB    1% 
  9. Total virtual image size    16 GB 

 

創(chuàng)建一個空的sheepdog鏡像

  1. $ dog vdi create data 100G 

 

再次查看sheepdog鏡像列表

  1. $ dog vdi list 
  2. Name        Id    Size    Used  Shared    Creation time   VDI id  Copies  Tag 
  3. mint         0   16 GB  4.1 GB  0.0 MB 2013-12-31 17:50   8ec519     3               
  4. data         0  100 GB  0.0 MB  0.0 MB 2013-12-31 18:05   a34a05     3               

 

啟動虛擬機

如果使用對象緩存,默認的緩存方式有的說是writeback,有的說是writethrough,所以建議寫上cache=writeback,以顯式區(qū)分。

  1. $ sudo qemu-system-x86_64 --enable-kvm -m 4096 -smp 2 \ 
  2. -drive file=sheepdog:mint,if=virtio,index=0,cache=writeback \ 
  3. -drive file=sheepdog:data,if=virtio,index=1,cache=writeback \ 
  4. -net nic,model=virtio -net user -vnc :1 -daemonize 

 

如需要,建立端口映射

如果在局域網內部啟動虛擬機,外部不能訪問,可以在跳板機建立端口映射

  1. $ sudo iptables -t nat -A PREROUTING -d 10.1.48.44 -p tcp \ 
  2. --dport 25901 -j DNAT --to 192.168.1.2:5901 
  3. $ sudo iptables -t nat -A POSTROUTING -j MASQUERADE 

 

這樣,外部網絡的機器就可以使用vncviewer連上虛擬機

  1. $ vncviewer 10.1.48.44:25901 

 


與OpenStack集成

Cinder存儲服務

Sheepdog可以作為Cinder服務的后端存儲。一般只需要修改/etc/cinder/cinder.conf文件,在DEFAULT一節(jié)中,修改volume_driver參數為sheepdog的cinder驅動:

  1. volume_driver = cinder.volume.drivers.sheepdog.SheepdogDriver 

 

修改之后,重啟cinder-volume服務即可。

如果開發(fā)者使用devstack,可以修改devstack的localrc文件,設置CINDER_DRIVER環(huán)境變量為sheepdog,修改之后,執(zhí)行./stack.sh即可。

Glance鏡像服務

Sheepdog也可以作為Glance服務的后端存儲。通常是修改/etc/glance/glance-api.conf文件,在DEFAULT一節(jié),加入或者修改對接sheepdog的相應參數:

  1. default_store = sheepdog 
  2. known_stores = glance.store.sheepdog.Store 
  3. sheepdog_store_address = 10.1.48.44 
  4. sheepdog_store_port = 7000 
  5. sheepdog_store_chunk_size = 64 

 

修改之后,重啟glance-api服務即可。

如果開發(fā)者使用devstack,目前還沒有相應的快捷設置對接sheepdog方法,可參考上面修改配置文件,然后重啟服務。

責任編輯:黃丹 來源: UC技術博客
相關推薦

2024-01-29 13:23:46

Chrome人工智能模型

2011-08-03 18:29:25

WindowsXP系統

2021-04-30 07:42:37

Windows10操作系統微軟

2022-07-20 07:13:45

Linuxsystemd

2009-09-03 08:49:13

2020-10-11 20:54:39

Python開發(fā)Docker

2011-09-06 17:56:50

BuildingsAndroid應用建筑

2011-09-15 15:48:38

iPhone應用Android應用在這兒IM

2014-10-14 11:06:25

2018-07-18 14:40:50

OPPO

2024-06-05 19:26:01

2015-07-30 15:58:15

EC企信企業(yè)即時通訊

2013-12-27 10:56:42

分布式對象存儲Sheepdog性能測試

2014-02-19 11:37:57

分布式對象存儲Sheepdog

2023-05-19 11:14:35

2010-01-12 14:58:29

2010-01-06 13:31:52

Ubuntu KDE

2009-12-31 10:43:01

Ubuntu 8.04

2020-04-29 16:25:36

WiFi人工智能技術
點贊
收藏

51CTO技術棧公眾號