OpenStack Ubuntu Swift多节点安装手册.docx

上传人:b****1 文档编号:1164302 上传时间:2023-04-30 格式:DOCX 页数:11 大小:58.42KB
下载 相关 举报
OpenStack Ubuntu Swift多节点安装手册.docx_第1页
第1页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第2页
第2页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第3页
第3页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第4页
第4页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第5页
第5页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第6页
第6页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第7页
第7页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第8页
第8页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第9页
第9页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第10页
第10页 / 共11页
OpenStack Ubuntu Swift多节点安装手册.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

OpenStack Ubuntu Swift多节点安装手册.docx

《OpenStack Ubuntu Swift多节点安装手册.docx》由会员分享,可在线阅读,更多相关《OpenStack Ubuntu Swift多节点安装手册.docx(11页珍藏版)》请在冰点文库上搜索。

OpenStack Ubuntu Swift多节点安装手册.docx

OpenStackUbuntuSwift多节点安装手册

展云科技

Openstack控制节点安装

Ubuntu版

 

版本

作者

联系方式

日期

备注

v0.1

曾云龙

QQ:

283912449

2012-9-1

初稿

目录

1安装前说明3

1系统配置3

1.1网卡配置3

1.2安装bridge4

1.3设置NTP4

2安装swift4

2.1安装swift相关组件5

2.2创建并配置目录5

2.3配置swift/etc/swift/swift.conf文件5

3安装Proxy节点5

3.1安装代理节点5

3.2创建SSL自签名认证5

3.3修改memcached监听接口6

3.4配置proxy-server.conf6

4配置节点信息(Ring)6

4.1创建账户、容器、对象配置信息6

4.2为存储节点添加物理映射信息6

4.3验证ring的内容7

4.4平衡ring7

4.5确保/etc/swift所有权属于swift用户7

4.6重启代理服务7

5配置存储节点7

5.1安装swift相关组件7

5.2在每个节点的设备上安装XFS卷7

5.3创建备份配置文件/etc/rsyncd.conf8

5.4配置rsync开机启动8

5.5配置swift日志文件8

5.6创建/etc/swift/account-server.conf8

5.7创建/etc/swift/container-server.conf8

5.8创建/etc/swift/object-server.conf9

5.9启动swift所有服务9

5.10验证swift服务9

6备注9

6.1rsync相关错误9

1安装前说明

swift多节点安装,官方建议一台代理服务器,五台存储节点。

基本的结构和组成如下:

1、节点(node):

物理主机运行一个或者多个Swift服务。

2、代理节点(Proxynode):

该节点运行代理服务,同时运行临时授权服务。

3、存储节点(Storagenode):

节点运行账户(Account)、容器(Container)、对象服务(ObjectServices)。

4、环形(Ring):

Swift数据(或者称作实体)到物理设备的映射(Map)。

本文档的演示使用如下几种节点类型,代理节点和存储节点是安装在同一台服务器上的,因此代理节点和存储节点均为3台:

1、3个代理节点(Proxynode),提供网络响应效率和吞吐量以及性能问题:

运行的swift代理服务进程可以让请求到达时,找到合适的存储节点。

这个代理服务同样以服务器网关接口中间件(WSGIMiddleware,WSGI:

WebServerGatewayInterface)提供临时认证(TempAuth)服务。

2、3个存储节点(官方建议5台):

存储节点运行的服务swift-account-server、swift-container-server、swift-object-server分别控制着账户数据库、容器数据库以及真实存储的对象存储。

本文档描述了在ring中,每个存储节点是作为一个分离的zone(区域),3个存储节点就相当于三个区域。

每一个区域就是一个节点组,用来与其他节点分离的。

(分开服务、网络、功能、evengeography),RING保证所有的复制品被保存在隔离的区域。

因为三台swift服务器的安装和配置相同,因此下面的示例是单节点下的配置,其他配置雷同。

1系统配置

系统环境

型号

操作系统

CPU

内存

网卡

硬盘大小

DellR520

Ubuntu12.04server

16G

192.168.2.20/24

300G+6T

DellR520

Ubuntu12.04server

16G

192.168.2.21/24

300G+6T

DellR520

Ubuntu12.04server

16G

192.168.2.22/24

300G+6T

1.1网卡配置

修改/etc/network/interface文件,如下所示:

重启网络,让修改生效:

/etc/init.d/networkingrestart

1.2安装bridge

apt-getinstallbridge-utils

重启网络或者重启机器都可以

1.3设置NTP

apt-getinstallntp

编辑/etc/ntp.conf,在末尾添加如下内容:

server192.168.2.10

重启服务:

servicentprestart

2安装swift

安装python-software-properties

在资源仓库增加swift源:

add-apt-repositoryppa:

swift-core/release

更新:

apt-getupdate

安装依赖包:

apt-get--optionDpkg:

:

Options:

:

=--force-confold--assume-yesupdate

apt-getinstallpep8pylintpython-pipscreenunzipwgetpsmiscgit-corelsofopenssh-servervim-noxlocatepython-virtualenvpython-unittest2iputils-pingwgetcurltcpdumpeuca2oolspython-setuptoolspython-devpython-lxmlpython-pastescriptpython-pastedeploypython-pastesqlite3python-pysqlite2python-sqlalchemypython-mysqldbpython-webobpython-greenletpython-routeslibldap2-devlibsasl2-devpython-bcryptcurlgccpython-configobjpython-coveragepython-devpython-eventletpython-greenletpython-netifacespython-nosepython-pastedeploypython-setuptoolspython-simplejsonpython-webobpython-xattrsqlite3xfsprogs

2.1安装swift相关组件

apt-getinstallswiftpython-swiftopenssh-server

2.2创建并配置目录

创建目录:

mkdir–p/etc/swift

将目录/etc/swift的访问权限赋予swift用户:

chown–Rswift:

swift/etc/swift

 

2.3配置swift/etc/swift/swift.conf文件

修改/etc/swift/swift.conf文件,内容如下:

注意:

所有swift节点的swift_hash_path_suffix值可以随便取,但是都要一样。

3安装Proxy节点

3.1安装代理节点

apt-getinstallswift-proxymemcached

3.2创建SSL自签名认证

cd/etc/swift

opensslreq–new–x509–nodes–outcert.crt–keyoutcert.key

3.3修改memcached监听接口

perl–pi–e“s/-l127.0.0.1/-l192.168.2.20/”/etc/memcached.conf

重启缓存服务器:

servicememcachedrestart

3.4配置proxy-server.conf

proxy-server.conf配置信息如附件所示:

需要注意的是,proxy-server.conf文件里面没有下图所示的配置,会出现403错误:

proxy-server.conf通过ssl访问的话,需要在[DEFAULT]里面加上:

4配置节点信息(Ring)

4.1创建账户、容器、对象配置信息

cd/etc/swift

swift-ring-builderaccount.buildercreate1821

swift-ring-buildercontainer.buildercreate1821

swift-ring-builderobject.buildercreate1821

注意:

我们创建的这3个Ring文件,18表示将分区处理成2^18,2表示我们有3个zone,根据我们的zone数量来定义的,如果跟我们实际情况有差异,可能会在启动服务的时候报错。

第三个数字1表示限制分区数据的转移时间,这里为一小时。

4.2为存储节点添加物理映射信息

exportHOST_IP=192.168.2.20

swift-ring-builderobject.builderaddz1-${HOST_IP}:

6010/sdb1100

swift-ring-buildercontainer.builderaddz1-${HOST_IP}:

6011/sdb1100

swift-ring-builderaccount.builderaddz1-${HOST_IP}:

6012/sdb1100

exportHOST_IP=192.168.2.21

swift-ring-builderobject.builderaddz2-${HOST_IP}:

6010/sdb1100

swift-ring-buildercontainer.builderaddz2-${HOST_IP}:

6011/sdb1100

swift-ring-builderaccount.builderaddz2-${HOST_IP}:

6012/sdb1100

exportHOST_IP=192.168.2.22

swift-ring-builderobject.builderaddz3-${HOST_IP}:

6010/sdb1100

swift-ring-buildercontainer.builderaddz3-${HOST_IP}:

6011/sdb1100

swift-ring-builderaccount.builderaddz3-${HOST_IP}:

6012/sdb1100

4.3验证ring的内容

swift-ring-builderobject.builder

swift-ring-buildercontainer.builder

swift-ring-builderaccount.builder

4.4平衡ring

平衡ring的意思,实际上就是生成最终的ring。

执行下面的命令可能需要一点时间:

swift-ring-builderobject.builderrebalance

swift-ring-buildercontainer.builderrebalance

swift-ring-builderaccount.builderrebalance

4.5确保/etc/swift所有权属于swift用户

chown–Rswift:

swift/etc/swift/*

4.6重启代理服务

swift-initproxyrestart

5配置存储节点

5.1安装swift相关组件

apt-getinstallswift-accountswift-containerswift-objectxfsprogs

5.2在每个节点的设备上安装XFS卷

fdisk/dev/sdb

mkfs.xfs–Isize=1024/dev/sdb1

echo“/dev/sdb1/srv/node/sdb1xfsnoatime,nodiratime,nobarrier,logbufs=800”>>/etc/fstab

mkdir–p/srv/node/sdb1

mount/srv/node/sdb1

chown–Rswift:

swift/srv/node/*

5.3创建备份配置文件/etc/rsyncd.conf

相关配置在附件中:

5.4配置rsync开机启动

在/etc/default/rsync里将RSYNC_ENABLE=false改成true:

perl–pi-e‘s/RSYNC_ENABLE=false/RSYNC_ENABLE=true’/etc/default/rsync

启动rsync服务:

servicersyncstart

5.5配置swift日志文件

1、创建swift日志文件:

在/etc/rsyslog.d/目录下创建文件:

10-swift.conf

10-swift.conf配置信息如下:

2、创建日志目录

mkdir–p/var/log/swift/

3、重启日志服务进程

servicersyslogrestart

5.6创建/etc/swift/account-server.conf

5.7创建/etc/swift/container-server.conf

5.8创建/etc/swift/object-server.conf

5.9启动swift所有服务

swift-initallstart

5.10验证swift服务

1、通过curl

curl-d'{"auth":

{"tenantName":

"admin","passwordCredentials":

{"username":

"admin","password":

"zhanyunToken"}}}'-H"Content-type:

application/json"http:

//192.168.2.10:

35357/v2.0/tokens|python-mjson.tool

2、使用swift

 swift-V2-Ahttp:

//192.168.2.10:

5000/v2.0-Uadmin:

admin-KzhanyunTokenstat

3、使用swift创建文件夹

swift-V2-Ahttp:

//192.168.2.10:

5000/v2.0-Uadmin:

admin-KzhanyunTokenpostmyfiles

5、使用swift上传文件

swift-V2-Ahttp:

//192.168.2.10:

5000/v2.0-Uadmin:

admin-KzhanyunTokenoploadmyfilesyourfilepathandName

 

6备注

6.1rsync相关错误

1、namelookupfailedfor192.168.2.21:

Nameorservicenotknown

在每个swift节点修改/etc/hosts文件,加入其他swift节点的IP和hostname,如下:

2、container-replicatorERRORrsyncfailedwith5:

['rsync','--quiet','--no-motd','--timeout=10','--contimeout=1','--whole-file','

3、swifterror:

[Errno32]Brokenpipe

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2