OpenStack swift安装
由于实验室项目需要云存储系统,因此在实验室服务器上搭建一个基于OpenStack swift的云存储系统。
最开始按照官方网站上介绍的方法,使用SAIO方式安装http://docs.openstack.org/developer/swift/development_saio.html,但是中间经常安装到最后,测试的时候,认证不成功,而且安装的过程比较繁琐,于是采用了git的安装方式git clone https://github.com/NewpTone/SAIO.git,将SAIO下载来之后,运行里面的脚本就自动安装,但是中间也出现了最后认证的问题,swift使用的是tempauth认证,于是按照http://blog.sina.com.cn/s/blog_4b8481f70100x9kk.html,将认证换成了swauth,最后才终于测试成功。
然后把SAIO里面的脚本研究了下,其实它就是把安装过程都写在了一个脚本里面,实现自动化,我就把swauth安装的过程加进去,再对swauth的部分进行配置,就完成了可以测试成功的安装脚本。
以下是安装脚本的内容:
#!/bin/bash
sudo apt-get install python-software-properties
sudo apt-get update
sudo 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
sudo pip install mock
if ! [ -e /srv ]
then
sudo mkdir /srv
fi
sudo mkfs.xfs -i size=1024 /srv/swift-disk
#the following has something wrong
sudo echo "/srv/swift-disk /mnt/sdb1 xfs loop,noatime,nodiratime,nobarrier,logbufs=8 0 0" >> /etc/fstab
sudo mkdir -p /mnt/sdb1
sudo mount /mnt/sdb1
sudo mkdir -p /mnt/sdb1/1 /mnt/sdb1/2 /mnt/sdb1/3 /mnt/sdb1/4
sudo chown swift:swift /mnt/sdb1/*
for x in 1 2 3 4
do
ln -f -s /mnt/sdb1/$x /srv/$X
done
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 swift:swift /etc/swift /srv/1/ /srv/2/ /srv/3/ /srv/4/ /var/run/swift
#Add to /etc/rc.local (before the exit 0):
#mkdir -p /var/cache/swift /var/cache/swift2 /var/cache/swift3 /var/cache/swift4
#chown <your-user-name>:<your-group-name> /var/cache/swift*
#mkdir -p /var/run/swift
#chown <your-user-name>:<your-group-name> /var/run/swift
#settting up rsync
sudo cp rsyncd.conf /etc/
echo "RSYNC_ENABLE=true" >> /etc/default/rsync
service rsync restart
sudo mkdir -p ~/bin
sudo git clone https://github.com/openstack/swift.git
cd swift
sudo python setup.py develop
cd ..
sudo git clone https://github.com/openstack/python-swiftclient.git
cd python-swiftclient
sudo python setup.py develop
cd ..
sudo git clone https://github.com/gholt/swauth.git
cd swauth
sudo python setup.py develop
cd ..
if [ -e /home/swift/.bashrc ]
then
sudo echo -e "export SWIFT_TEST_CONFIG_FILE=/etc/swift/test.conf \\n export PATH=${PATH}:~/bin" >> /home/swift/.bashrc
sudo source ~/.bashrc
fi
#configure swift and related conf
if ! [ -e /etc/swift ]
then
sudo mkdir /etc/swift
fi
sudo chown swift:swift /etc/swift
sudo cp --recursive conf/* /etc/swift/
#cp rsyncd.conf /etc
#sudo service rsync restart
#sudo cp --recursive bin/* ~/bin
sudo chmod +x bin/*
cd bin
sudo ./remakerings
cd ..
sudo cp ~/saio-setup/swift/test/sample.conf /etc/swift/test.conf
cd swift
sudo ./.unittests
cd ..
cd bin
sudo ./startmain
cd ..
swift-init proxy reload
swauth-prep -K swauth -A http://127.0.0.1/auth/
echo "swauth-prep finished"
echo "SAIO setup finished!"
其它的诸如rsyncd.conf,container-server等,按照官方SAIO安装方式进行配置即可。
然后就可以进行测试了:

在安装过程中会出现下面这种问题:

请忽略它,它并不会影响后面的操作。
OpenStack swift安装的更多相关文章
- openstack swift 安装(单独对象存储服务)
参考:https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/swift.html 安装YUM包 yum install centos-re ...
- 理解 OpenStack Swift (1):OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置
本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...
- openstack swift节点安装手册3-最后的安装配置及验证
以下步骤都在controller节点上执行 1.远程获取/etc/swift/swift.conf文件: curl -o /etc/swift/swift.conf https://git.opens ...
- openstack swift节点安装手册1-节点配置
本文参照官方教程:http://docs.openstack.org/project-install-guide/object-storage/draft/environment-networking ...
- Swift安装
Server1 .Update sudo apt-get update sudo apt-get upgrade . sudo apt-get install bridge-utils .IP 3.1 ...
- 理解 OpenStack Swift (3):监控和一些影响性能的因素 [Monitoring and Performance]
本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...
- 理解 OpenStack Swift (2):架构、原理及功能 [Architecture, Implementation and Features]
本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...
- OpenStack Swift集群与Keystone的整合使用说明
之前已经介绍了OpenStack Swift集群和Keystone的安装部署,最后来讲一讲Swift集群与Keystone的整合使用吧. 1. 简介 本文档描述了Keystone与Swift集群的整合 ...
- OpenStack Keystone安装部署流程
之前介绍了OpenStack Swift的安装部署,采用的都是tempauth认证模式,今天就来介绍一个新的组件,名为Keystone. 1. 简介 本文将详细描述Keystone的安装部署流程,并给 ...
随机推荐
- Linux下实现流水灯等功能的LED驱动代码及测试实例
驱动代码: #include <linux/errno.h> #include <linux/kernel.h> #include <linux/module.h> ...
- ssh中使用set的地方及ref
22:30 2014/5/2 1.层与层间的set: xml方式:在action中曾有service的set方法,service层要有dao的service的set方法,dao曾要有hibernat ...
- C# - implicit, explicit
如果类型直接没有继承关系,也没有共享接口,想在这两个类型之间进行转换,就必须重载转换运算符. 此时需要关键字implicit和explicit. 下面定义了类型ConvClass1和ConvClass ...
- cocos2dx 3.4 截图代码
Size size = Director::sharedDirector()->getWinSize(); //定义一个屏幕大小的渲染纹理 RenderTexture* pScreen = Re ...
- 读取Excel列内容
http://blog.sina.com.cn/s/blog_6e001be701016yi8.html
- ul 、ol li 继承原有样式的问题
如: 1.为什么我的服务器无法远程了? 2.为什么我的服务器总是自动重启? 3.为什么我的服务器总是自动重启? 以前写这种类型的列表,都是自己用键盘输入这些数字,其实不然,ul .ol li本身就自带 ...
- PHP 系统常量及自定义常量
__FILE__ 这个默认常量是 PHP 程序文件名.若引用文件 (include 或 require)则在引用文件内的该常量为引用文件名,而不是引用它的文件名. __LINE__ 这个默认常量是 P ...
- memcached远程 telnet 无法连接,解决方案
因为默认的Memcached配置,使用了本机ip:127.0.0.1 ,此时利用VI修改下配置 vi /etc/memcached.conf 文件打开后,修改下,把-l前面加入#号注释掉,重启服务器就 ...
- 如何在Blog中使用feedburner管理RSS订阅
http://www.cnblogs.com/procoder/archive/2010/02/12/feedburner.html
- Android:MD5加密
/** * @author gongchaobin * * MD5加密 * * @version 2013-8-22 */ public class MD5Util { // 用来将字节转换成 16 ...