Installing and Configuring OpenStack (Juno) in Oracle® Solaris

Exit Print View

Updated: June 2016
 
 

How to Configure the Swift Proxy Controller Service Node

This task assumes that you have already installed the OpenStack packages on the node designated for Swift. See the install command to use in Configuring the Storage Node.

  1. Install the Swift packages.
    proxy-node # pkg install swift swiftclient
  2. Create ZFS datasets.
    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. Perform the following octal dumps.

    Retain the values of the dumps. These two values are referred to as $OD_1 and $OPD_2 in subsequent steps.

    proxy-node # od -t x8 -N 8 -A n < /dev/random
    proxy-node # od -t x8 -N 8 -A n < /dev/random
  4. Edit the /etc/swift/swift.conf file with the following parameters.
    [swift-hash]
    swift_hash_path_suffix = $OD_1
    swift_hash_path_prefix = $OD_2
  5. Edit the /etc/swift/proxy-server.conf file with the following parameters.
    [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. Enable the memcached daemon.
    proxy-node # svcadm enable -rs memcached
  7. Build the rings.
    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. Enable the Swift service.
    proxy-node # svcadm enable swift-proxy-server