在 Oracle® Solaris 中安装和配置 OpenStack (Juno)

退出打印视图

更新时间: 2016 年 6 月
 
 

如何配置 Swift 代理控制器服务节点

此任务假定您已在为 Swift 指定的节点上安装了 OpenStack 软件包。请在配置存储节点中查看要使用的安装命令。

  1. 安装 Swift 软件包。
    proxy-node # pkg install swift swiftclient
  2. 创建 ZFS 数据集。
    proxy-node # /usr/sbin/zfs create -o mountpoint=none rpool/export/swift
    proxy-node # /usr/sbin/zfs create -o mountpoint=/srv rpool/export/swift/srv
    proxy-node # /usr/sbin/zfs create -p rpool/export/swift/srv/node/disk0
    proxy-node # /usr/bin/chown -R swift:swift /srv
    
  3. 执行以下八进制转储。

    保留转储的值。这两个值在后续步骤中称为 $OD_1$OPD_2

    proxy-node # od -t x8 -N 8 -A n < /dev/random
    proxy-node # od -t x8 -N 8 -A n < /dev/random
  4. 使用以下参数编辑 /etc/swift/swift.conf 文件。
    [swift-hash]
    swift_hash_path_suffix = $OD_1
    swift_hash_path_prefix = $OD_2
  5. 使用以下参数编辑 /etc/swift/proxy-server.conf 文件。
    [DEFAULT]
    bind_port = 8080
    
    [filter:tempauth]
    use = egg:swift#tempauth
    
    operator_roles = admin, swiftoperator 
    
    [filter:authtoken]
    auth_uri = http://$CONTROLLER_IP:5000/
    identity_uri = http://$CONTROLLER_IP:35357
    admin_tenant_name = service
    admin_user = swift
    admin_password = swiftpass
    
    [filter:cache]
    memcache_servers = $CONTROLLER_IP:11211
    
  6. 启用 memcached 守护进程。
    proxy-node # svcadm enable -rs memcached
  7. 构建环。
    proxy-node # cd /etc/swift
    proxy-node # swift-ring-builder account.builder create 18 3 1
    proxy-node # swift-ring-builder container.builder create 18 3 1
    proxy-node # swift-ring-builder object.builder create 18 3 1
    proxy-node # swift-ring-builder account.builder add r1z1-$STORAGE_IP_1:6002/disk0 100
    proxy-node # swift-ring-builder container.builder add r1z1-$STORAGE_IP_1:6001/disk0 100
    proxy-node # swift-ring-builder object.builder add r1z1-$STORAGE_IP_1:6000/disk0 100
    proxy-node # swift-ring-builder account.builder add r1z1-$STORAGE_IP_2:6002/disk0 100
    proxy-node # swift-ring-builder container.builder add r1z1-$STORAGE_IP_2:6001/disk0 100
    proxy-node # swift-ring-builder object.builder add r1z1-$STORAGE_IP_2:6000/disk0 100
    proxy-node # swift-ring-builder account.builder rebalance
    proxy-node # swift-ring-builder container.builder rebalance
    proxy-node # swift-ring-builder object.builder rebalance
    proxy-node # chown -R swift:swift /etc/swift
    
  8. 启用 Swift 服务。
    proxy-node # svcadm enable swift-proxy-server