summaryrefslogtreecommitdiffstats
path: root/manifests/simple.pp
Commit message (Collapse)AuthorAgeFilesLines
* This unifies the single brick case with the multi brick case.HEADmasterJames Shubin2015-03-101-9/+10
| | | | | | | | This avoids errors if you have only one brick vs. many. A small note: I haven't tested this ad-infinitum, but since nobody who has tested it privately has complained, I'm sticking this in git master so that it gets wider testing. If anyone has issues, please report!
* Make Exec['again'] optional. As a result puppet-common is optional.James Shubin2014-04-101-7/+6
| | | | Although if you remove all the features, it's not as awesome anymore :)
* Refactor the previous patch for the sake of future maintainability.James Shubin2014-03-241-37/+27
| | | | | | I wasn't able to test this patch, for lack of hardware at the moment. A patch for: https://github.com/pradels/vagrant-libvirt/issues/162 would also help solve my testing issue. Please report any issues!
* Add per brick defaults to gluster::simple for easier [physical] clusters.James Shubin2014-03-241-20/+36
| | | | | | | | | | | | | | | | | | | | | | | I've had most of this patch in my head for at least a week, and I finally got the time to implement it! If you are building a symmetrical cluster, that has consistent device naming across all of the hosts, then this patch is the magic that should make your life _significantly_ easier. (*cough, cough*: Ben England...) In the corner case that some of your device have different names, you can still use this feature in conjunction with the other parameters to first set global defaults, and then override as needed. If you don't specify an overriding parameter (such as $count) then the number of elements in this array will be used as the brick count! Please note that this patch provides the $brick_params_defaults option which is different from the $brick_param_defaults option which will still work, and is useful in conjunction with this option as the way to set brick defaults across the whole cluster. For more questions you'll be happy to see that this patch comes with documentation and example updates.
* Setting volume properties should be race-free.James Shubin2014-03-161-1/+2
| | | | | | | This isn't essential, as ensuring this is race-free is really up to glusterfs, but with this patch you reduce the likelihood to ~0% that you'll see a: "volume set: failed: Another transaction is in progress." error. The error isn't harmful, but now we'll see less unnecessary red.
* Improve brick count input and parsing.James Shubin2014-03-161-6/+6
|
* Add per volume support for brick chaining.James Shubin2014-03-161-0/+2
| | | | | | | | | | * Don't use this feature unless you _really_ know what you're doing. * Managing chained volumes is much harder than managing normal ones. * If some of the volumes in the cluster use this, and others don't, then you'll probably have an even crazier time with management. * Please verify my algorithm and feel free to suggest changes. * Some edge cases haven't been tested. * This patch breaks out brick layout ordering into individual functions.
* Fix small bugs for setgroups.James Shubin2014-03-161-2/+14
|
* Small fixes to avoid warnings.James Shubin2014-03-161-5/+5
|
* Add support for volume set groups.James Shubin2014-03-161-0/+2
| | | | | | | | This adds support for setting volume set groups which are groups of properties that are set all at once on a volume. This is managed in a clever way, so that if the definition of what a certain group contains gets updated by the package manager, your volumes will get updated too, on the next puppet run.
* Make use of ping (actually, fping) optional in gluster::simple.James Shubin2014-03-161-0/+2
| | | | | | This is useful for environments that don't include fping. Usage of fping (or similar) is still recommended to make you less likely to get an error on volume creation if one host isn't up.
* Allow specifying brick device and other parameters in gluster::simple.James Shubin2014-03-161-2/+61
| | | | | This patch adds support to specify the brick device values as a hash. It also allows for separate defaults that apply to the whole cluster.
* Add consistent arg ordering.James Shubin2014-02-041-4/+4
|
* Add support for setting: 'rpc-auth-allow-insecure' in glusterd.vol.James Shubin2014-01-241-0/+2
|
* Add support for specifying the base-port option in glusterd.volJames Shubin2014-01-231-0/+2
| | | | See: https://bugzilla.redhat.com/show_bug.cgi?id=987555 for info.
* Update template variables to use the '@' prefix.James Shubin2013-12-311-1/+1
| | | | I've updated wrapper.pp too, but I haven't tested it recently.
* Add VRRP integration.James Shubin2013-12-311-0/+4
| | | | | | | | | | | | | | | | This adds VRRP integration to puppet-gluster. All you need to do is set vrrp => true, and set a vip, and the rest should happen automatically. The shared keepalived password is built by a distributed password selection algorithm that I made up. Feel free to review this if you'd like. It's probably as secure as your puppet server and clients are. If you'd prefer to specify each token manually, you can do so in the gluster::host password argument, or you can set one global vrrp password in the gluster::server or gluster::simple classes. There's a chance that you'll see a bit of VRRP flip-flop when you add/remove hosts because the distributed password should change. The benefit is that by default you don't need to set or manage any of those passwords! This doesn't add firewalling so that the VIP can be used by clients.
* Improved auto repo management and version selection.James Shubin2013-12-221-0/+2
| | | | | | | | | | | | | | Introduced a split between repo management and version choosing. You can now: * Choose a package version or leave it at the default (latest). If you choose a package version it must include the release string. eg: in foobar-3.2.1-42.el6 the release is 42.el6 This doesn't check to see if your version is valid! * Choose whether you want a gluster repo added automatically. If you did specify a version, it will pick the correct repo. This doesn't check that the repo for your os/version exists!
* Catch DNS errors more easily.James Shubin2013-12-171-0/+4
| | | | This should help users figure out they have a DNS problem sooner.
* Automatically add yum repository.James Shubin2013-12-171-0/+2
| | | | | Support for other operating systems will have to come later, even if this needs to be refactored. For now, CentOS/RHEL are automatic.
* Small fixes for gluster::simple.James Shubin2013-10-261-2/+3
|
* Automatic brick ordering and finite state machine support.James Shubin2013-10-101-0/+89
This patch adds preliminary FSM support. This will be used and abused more extensively in later patches. Automatic brick ordering is an advanced feature and is meant for experienced puppet users. Changing the available bricks before the cluster is built is not currently supported. For that type of magic, please wait for gluster::elastic. This feature expects that you name your bricks and hosts intelligently. Future patches will recommend a specific nomenclature, but for now as long as the brick paths and hostnames follow a padded, incrementing integer pattern, with a common prefix, you shouldn't see any problems.