Ubuntu 12.04 LTS 上安装swift1.4.8
Ubuntu 12.04 LTS 上安装swift1.4.8
- 4.1 apt-get install安装
- 4.2源代码安装
0.环境
操作系统:Ubuntu 12.04 LTS,swift版本:1.4.8。四台机器,IP地址分别为: 192.168.1.11, 192.168.1.12, 192.168.1.13, 192.168.1.14. 由于swift的全分布式特点,故每个节点都作为存储节点,并选用192.168.1.11作为proxy server。 磁盘分区如下:1.安装依赖库
所有节点都需要安装的:python-netifaces python-setuptools python-eventlet python-pastedeploy python-xattr xfsprogs以上软件包可以直接使用apt-get install来安装。一个比较特殊的包:python-webob。该包在ubuntu软件源中的版本是1.1.1(ubuntu12.04).而这个版本有个bug,会导致swift client使用HEAD无法正常的获取content-length。比如,获取文件尺寸,得到的结果永远是 13。解决方法是在ubuntu软件包网站下载1.0.8版本的deb安装包,然后手工安装。安装包我已经下载,见附件。
2.准备磁盘
选取某一个磁盘分区做存储,本例使用sda5.mkfs.xfs -i size=1024 /dev/sda5在/etc/fstab中添加
/dev/sda5 /srv/node/sda5 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0挂载磁盘分区
sudo mount /srv/node/sda5
3.构建ring
swift-ring-builder account.builder create 18 3 118: 用于指定分区数。分区数目为2的幂次,如18,则分区数是2的18次方。 3:文件副本数目 1:分区移动的最小时间间隔,单位是小时。
swift-ring-builder account.builder add z1-192.168.1.11:6002/sda5 100 swift-ring-builder account.builder add z2-192.168.1.12:6002/sda5 100 swift-ring-builder account.builder add z3-192.168.1.13:6002/sda5 100 swift-ring-builder account.builder add z4-192.168.1.14:6002/sda5 100100 代表设备的权重。可以根据磁盘的容量设定对应值,比如2T的100,则1T的可以是50。 swift-ring-builder account.builder可以检测配置,确认无误后,使用swift-ring-builder account.builder rebalance重新平衡。成功之后会在当前目录生成 account.ring.gz 文件。 使用同样的方式构建 container和object的ring。container服务端口是6001,object的服务端口是6000。特别需要注意的是:一旦ring投入使用,更改配置的时候要针对该ring,不能重新构建,否则,很多数据可能会404. 最后将生成的account.ring.gz,container.ring.gz,object.ring.gz分发至各个节点的/etc/swift目录。
|
评论暂时关闭