Hi,
Hopefully this is the right place to ask for guidance! I'm deploying
OpenStack/Swift in a development environment and intend to create/deploy
multiple Swift clusters with different hardware configurations underneath and
then do performance benchmarking. For example, I'm now building 2 clusters with
each 1+3 nodes (1 proxy + 3 storage nodes), one cluster with NL-SAS disks and
another with SAS disks. I also have a single-node 'cluster' up & running
already. I'm setting up the configuration of all these clusters in Puppet.
I plan to do the ring creation as follows (please correct me if I'm saying
weird or dumb things, I'm fairly new to Puppet):
In the Puppet declaration for each storage node, I think I should create the
ring_account_device resources and export them, something like this:
hiera('swift_devices').each |String $device| {
@@ring_account_device { "$backbone_ip:6002/$device":
zone => hiera('swift_zone'),
weight => hiera('swift_device_weight'),
}
}
Then on the proxy node (once for each cluster), I include the
swift::ringbuilder which collects these resources and creates the ring. At
least for the single-node cluster this works.
However, if I would create multiple clusters, how does Puppet know which
exported resources are intended for Cluster 1 (with NL-SAS disks) and which are
for Cluster 2 (with SAS disks)? Is this at all possible using Puppet? I fear
that if I deploy this, I will have 2 proxies which build a ring, each using all
servers/drives on each storage node.
Also, I don't fully understand why (in modules/swift/ringbuilder.pp), I see the
following:
Swift::Ringbuilder::Create['account'] -> Ring_account_device <| |> ~>
Swift::Ringbuilder::Rebalance['account']
Here, it looks to me like the Ring is built with resource collector
(Ring_account_device <| |>) , while the syntax to realize exported resources
should use double angle brackets (<<| |>>)if I understand correctly? What am I
missing/overlooking here? Should I run the ring builder on the storage nodes
instead, and are things then synced in some other way? (That makes little sense
to me...).
Can I make this work, and if so, how? Any help is greatly appreciated!
Happy holidays & kind regards,
Pieter van Wijngaarden
________________________________
The information contained in this message may be confidential and legally
protected under applicable law. The message is intended solely for the
addressee(s). If you are not the intended recipient, you are hereby notified
that any use, forwarding, dissemination, or reproduction of this message is
strictly prohibited and may be unlawful. If you are not the intended recipient,
please contact the sender by return e-mail and destroy all copies of the
original message.
_______________________________________________
OpenStack-operators mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators