安装环境
所需软件及版本
VMware®Workstation 11.1.0 build-2496824(桌面虚拟计算机软件)
ubuntu-12.04.5-desktop-amd64.iso(ubuntu14.04桌面版,server版也可)
SSH(linux远程连接工具,putty之类的也可)
环境安装
安装VMware®Workstation(尽量不要安装在固态硬盘上,偶尔会报错误)
新建ubantu虚拟机(选择之前的ubuntu镜像进行安装即可,硬盘分了20个G)
Ssh使用root用户连接:
ubuntu默认是不启用root用户也不允许root远程登录的,通过如下步骤解决。
启用root用户:sudopasswd root //修改密码后就启用了。
在此之前先执行apt-getupdate
安装OpenSSHserver:
1. 使用apt命令安装opensshserver
$ sudo apt-get install openssh-server
2. 可以对 openssh server进行配置
$ sudo vi /etc/ssh/sshd_config(如果这一步显示newfile则sshclient未安装上)
找到PermitRootLoginno一行,改为PermitRootLogin yes
3. 重启 openssh server
$ sudo service ssh restart
安装过程
1. 安装依赖包和核心代码
1. 以root身份登录。
# sudo su - root |
2. 安装必须的依赖包、库。
# apt-get install python-software-properties # add-apt-repository ppa:swift-core/release//注掉 # apt-get update # apt-get install curl gcc git-core memcached python-coverage python-dev python-nose python-setuptools python-simplejson python-xattr sqlite3 xfsprogs python-eventlet python-greenlet python-pastedeploy python-netifaces python-pip # pip install mock |
3. 创建swift用户和组。在此,我们直接使用root作为用户名和组名。
接下来,需要选择使用一个分区作为存储(Using a partition for storage)或使用一个回环设备作为存储(Using a loopback device for storage),本文档使用回环设备作为存储。若希望使用一个单独的分区作为存储,请参阅这里。
2. 使用回环设备作为存储
1. 创建存储文件夹。
# mkdir /srv //提示文件夹已存在 |
2. 调整seek的值,可以创建一个更大或更小的分区。
# dd if=/dev/zero of=/srv/swift-disk bs=1024 count=0 seek=1000000 # mkfs.xfs -i size=1024 /srv/swift-disk |
3. 编辑/etc/fstab并添加如下一行。
/srv/swift-disk /mnt/sdb1 xfs loop,noatime,nodiratime,nobarrier,logbufs=8 0 0 |
4. 创建挂载文件夹,并挂载。
# mkdir /mnt/sdb1 # mount /mnt/sdb1 |
5. 创建4个子节点文件夹。
# mkdir /mnt/sdb1/1 /mnt/sdb1/2 /mnt/sdb1/3 /mnt/sdb1/4 |
6. 改变权限,root:root对应<your-user-name>:<your-group-name>。
# chown root:root /mnt/sdb1/* |
7. 为4个子节点创建同步链接。
# for x in {1..4}; do ln -s /mnt/sdb1/$x /srv/$x; done |
8. 创建server等文件夹,并改编权限。注意,不要忘记/etc/swift/srv/[1-4]/最后一个“/”。
# mkdir -p /etc/swift/object-server /etc/swift/container-server /etc/swift/account-server /srv/1/node/sdb1 /srv/2/node/sdb2 /srv/3/node/sdb3 /srv/4/node/sdb4 /var/run/swift # chown -R root:root /etc/swift /srv/[1-4]/ /var/run/swift |
9. 编辑文件/etc/rc.local,在exit 0 之前添加如下4行。
mkdir -p /var/cache/swift /var/cache/swift2 /var/cache/swift3 /var/cache/swift4 chown root:root /var/cache/swift* mkdir -p /var/run/swift chown root:root /var/run/swift |
3. 设置Rsync
1. 创建文件/etc/rsyncd.conf,内容如下:
uid = root gid = root log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid address = 127.0.0.1
[account6012] max connections = 25 path = /srv/1/node/ read only = false lock file = /var/lock/account6012.lock
[account6022] max connections = 25 path = /srv/2/node/ read only = false lock file = /var/lock/account6022.lock
[account6032] max connections = 25 path = /srv/3/node/ read only = false lock file = /var/lock/account6032.lock
[account6042] max connections = 25 path = /srv/4/node/ read only = false lock file = /var/lock/account6042.lock
[container6011] max connections = 25 path = /srv/1/node/ read only = false lock file = /var/lock/container6011.lock
[container6021] max connections = 25 path = /srv/2/node/ read only = false lock file = /var/lock/container6021.lock
[container6031] max connections = 25 path = /srv/3/node/ read only = false lock file = /var/lock/container6031.lock
[container6041] max connections = 25 path = /srv/4/node/ read only = false lock file = /var/lock/container6041.lock
[object6010] max connections = 25 path = /srv/1/node/ read only = false lock file = /var/lock/object6010.lock
[object6020] max connections = 25 path = /srv/2/node/ read only = false lock file = /var/lock/object6020.lock
[object6030] max connections = 25 path = /srv/3/node/ read only = false lock file = /var/lock/object6030.lock
[object6040] max connections = 25 path = /srv/4/node/ read only = false lock file = /var/lock/object6040.lock |
2. 编辑文件/etc/default/rsync,设置参数RSYNC_ENABLE为true。
RSYNC_ENABLE=true |
3. 启动rsync服务
# service rsync restart |
4. 设置独立日志(可选)
1. 创建文件/etc/rsyslog.d/10-swift.conf,内容如下: