原文地址:http://swift.openstack.org/howto_installmultinode.html
多结点 Swift 安装 (Ubuntu)¶
先决条件¶
- Ubuntu Server 12.04 LTS 安装媒介
- 网络配置
-
编辑 /etc/network/interfaces:
-
auto lo
iface lo inet loopbackauto eth0
iface eth0 inet static
address 10.1.0.35
netmask 255.255.255.0
broadcast 10.1.0.255
gateway 10.1.0.1
dns-nameservers 8.8.8.8auto eth1
iface eth1 inet static
address 192.168.3.1
netmask 255.255.255.0
network 192.168.3.0
broadcast 192.168.3.255Restart the network now
sudo /etc/init.d/networking restart
基本结构和一些术语¶
- node - 提供一种或多种 Swift 服务的主机
- Proxy node - 提供 Proxy 服务的node; 同时也提供 TempAuth 的服务
- Storage node - 提供 Account, Container, 和 Object services服务
- ring - Swift数据和物理设备之间的一系列映射
本文介绍一个由以下node组成的机群:
-
一个 Proxy node
-
-
运行 swift-proxy-server 进程, 会转送来自客户端的 request 到合适的
-
Storage nodes。 proxy server 也可以提供 WSGI 中间件形式的 TempAuth 服务
-
-
-
五个 Storage node
- 运行 swift-account-server, swift-container-server, 和swift-object-server 进程, 管理account、container数据和实际存储的object。
本文描述的每个 Storage node 都安排在 ring 中不同的 zone 里。推荐至少配置5个 zone. 一个 zone 是一组隔离的 node (各自隔离的服务器,网络,电源配置,甚至是地理位置)。ring 维护着每个副本( replica )存储在不同的 zone 上。关于 ring 和 zone 的更多信息请查看:The Rings.
为了增强可靠性,你可能会增加其他的 Proxy server,这里你会得到帮助 增加一个 Proxy Server.
网络配置的一些注意事项¶
本文提到了两个网络。“外部网络”用来连接 Proxy server, “内部存储网络”在机群外则是不可见的。内部网络用来node之间的互联。所有的Swift 服务,包括每个Storage node中的 rsync 守护进程,都时时监听STORAGE_LOCAL_NET,即内网中分配到的IP地址。
通用的 OS 配置¶
-
<