Comment 0 for bug 1491660

Revision history for this message
Mark Kirkwood (mark-kirkwood) wrote :

There appears to be no way to separate storage and replication networks in swift-object-device and friends.

The naive way doing something like:

class profiles::swift::stor {

  $storage_ip = hiera('profiles::swift::storage_ip')
 $replication_ip = hiera('profiles::swift::replication_ip')

  @@ring_object_device { "${storage_ip}:6000R${replication_ip}:/6010/${name}":
      region => hiera('profiles::swift::region', 1),
      zone => hiera('profiles::swift::zone', 1),
      weight => hiera('profiles::swift::weight', 1),
  }

...while this sets up the two networks ok in the ring, it confuses the provider utterly and it tries to add the device repeatedly even if it is already there (I'm guessing - not a ruby pro - that it is comparing the storage part of the ring builder output to the entire passed in storage + replication string). If I've understood the problem properly this might be easy to correct!