Skip to content

Adding a new storage node

Cristi Pufu edited this page Nov 6, 2015 · 4 revisions

Follow this full tutorial if you are adding a new node, or just the mounting part if you are adding a new disk - Storage node configuration.

After you've finished, follow the steps bellow:

  • Go to a proxy node and add the new storage devices to the rings using the swift-ring-builder utility (remember that data is never replicated to another disk or server in the same zone):
export REGION=                  # set the region number for that storage device
export ZONE=                    # set the zone number for that storage device
export STORAGE_LOCAL_NET_IP=    # and the IP address
export WEIGHT=100               # relative weight (higher for bigger/faster disks)
export DEVICE=sdb               # relative path to the /srv/node/ storage main mounting point
swift-ring-builder /etc/swift/account.builder add r$REGIONz$ZONE-$STORAGE_LOCAL_NET_IP:6002/$DEVICE $WEIGHT
swift-ring-builder /etc/swift/container.builder add r$REGIONz$ZONE-$STORAGE_LOCAL_NET_IP:6001/$DEVICE $WEIGHT
swift-ring-builder /etc/swift/object.builder add r$REGIONz$ZONE-$STORAGE_LOCAL_NET_IP:6000/$DEVICE $WEIGHT
  • Rebalance the rings:
swift-ring-builder /etc/swift/account.builder rebalance
swift-ring-builder /etc/swift/container.builder rebalance
swift-ring-builder /etc/swift/object.builder rebalance
  • Sync the nodes by copying the resulting *ring.gz files to all of them (proxy or storage nodes) and ensure they are owned by the correct user!