summaryrefslogtreecommitdiffstats
path: root/manifests
Commit message (Collapse)AuthorAgeFilesLines
* Improved UUID validation logic for manual UUID selection.rhsJames Shubin2014-03-161-1/+1
| | | | Fixed the logic that was backwards when you chose a UUID manually.
* Type name should be 'array', not 'list'.James Shubin2014-03-161-1/+1
| | | | Small bug due to lesser used code path, now squashed!
* Add typing for storage-{uid,gid} volume properties.James Shubin2014-03-161-2/+2
|
* Add automatic generation of fs UUID's per brick filesystem.James Shubin2014-03-162-20/+80
| | | | | | | | | | This automatically generates UUID's for each physical filesystem, or alternatively, you can specify one manually with the $fsuuid argument. This will make a _big_ difference when using gluster::simple to automatically deploy a large cluster of physical machines, since you don't have to manually generate one uuid per device (which is time consuming and could be a lot to do and a lot to maintain).
* Setting volume properties should be race-free.James Shubin2014-03-163-14/+30
| | | | | | | 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
|
* Silence unnecessary warnings if we know they're unnecessary.James Shubin2014-03-161-2/+5
|
* Add per volume support for brick chaining.James Shubin2014-03-162-1/+13
| | | | | | | | | | * 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 and warnings.James Shubin2014-03-161-2/+2
|
* Fix small bugs for setgroups.James Shubin2014-03-164-11/+18
|
* Add advanced set group support for anyone without stock support.James Shubin2014-03-162-12/+63
| | | | | | | This adds custom set group support for users that might not have the feature (I think it might only exist in RHS) and also to users who want to add their own custom groups! Please ping me if the stock groups gain or lose parameters, or if their set values change!
* Small fixes to avoid warnings.James Shubin2014-03-161-5/+5
|
* Add support for volume set groups.James Shubin2014-03-165-3/+97
| | | | | | | | 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.
* Add in a custom sponge utility to break the dependence on the EPEL repo.James Shubin2014-03-162-3/+15
|
* 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-162-4/+64
| | | | | 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.
* Lower case use of k, not upper case, as per performance documentation.James Shubin2014-03-161-1/+1
|
* Small LVM fixes.James Shubin2014-03-161-5/+12
| | | | | | | Secret pop quiz Q: What characters are [in]valid in LVM VG names? Hint: The + char is valid, but the # char is not.
* Add LVM support, and use recommended xfs settings, as per RHS.James Shubin2014-03-161-24/+197
| | | | | | | | * Add LVM support. * Add optional partitioning. * Set xfs inode size, for xattr performance. * Set xfs logical block size for directory performance. * Set xfs stripe unit size and stripe width for RAID alignment.
* Add consistent arg ordering.James Shubin2014-02-042-7/+7
|
* Small bugfixes.James Shubin2014-01-241-2/+2
| | | | | | | It seems the seluser is now server_t. If someone thinks it should be different, please let me know! I think the --xml output of gluster volume status --xml <v> changed.
* Add support for more volume options.James Shubin2014-01-242-44/+94
|
* Add support for setting: 'rpc-auth-allow-insecure' in glusterd.vol.James Shubin2014-01-242-0/+8
|
* Add support for specifying the base-port option in glusterd.volJames Shubin2014-01-232-1/+8
| | | | See: https://bugzilla.redhat.com/show_bug.cgi?id=987555 for info.
* Add client mounting and associated magic.James Shubin2014-01-217-108/+267
| | | | | | | | | | | * Rename gluster::client to gluster::mount * Add support to gluster::mount * Add client machines and mounts to vagrant setup * Fixed version interface for gluster::mount and gluster::server * Improved firewall support for gluster::mount * Update examples to use gluster::mount instead of gluster::client * Update documentation * Other small fixes
* Add support for automatic qa-release detection.James Shubin2014-01-161-1/+15
| | | | | Did this at the last minute for the "glusterfest". John Mark Walker now owes me two t-shirts, and a polo. Now it's in the permanent record ;)
* This is Puppet-Gluster+Vagrant! (https://ttboj.wordpress.com/)James Shubin2014-01-082-7/+24
| | | | Puppet-Gluster, now with Vagrant! - Initial release. Happy hacking!
* Keepalived should properly integrate with shorewall zone.James Shubin2014-01-041-0/+2
|
* Try and pick the _right_ default IP address.James Shubin2014-01-021-6/+17
| | | | | | If you choose your IP addresses manually, this won't affect you. If you're automatically deploying Puppet-Gluster with Vagrant, this will probably be the missing piece that makes your build more automatic.
* The volume create script shouldn't depend on VIP existence.James Shubin2013-12-311-19/+16
| | | | | | | * If VIP comes and goes, the create script gets added/deleted too. * If VIP isn't present on first run (it usually isn't) then the Exec['again'] won't get run because it's inside the VIP check. * This also consolidates the two identical conditional blocks.
* Update template variables to use the '@' prefix.James Shubin2013-12-315-30/+30
| | | | I've updated wrapper.pp too, but I haven't tested it recently.
* Add VRRP integration.James Shubin2013-12-313-1/+103
| | | | | | | | | | | | | | | | 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.
* Updated shell scripts to use sponge.James Shubin2013-12-242-2/+7
| | | | Avoids any chance of a race due to modifying the file in place.
* Added preliminary Exec['again'] support to puppet-gluster.James Shubin2013-12-242-1/+51
| | | | | | | * This will make magic things happen faster. * This doesn't give you an option to disable it. * This doesn't let you set the timeout. * This isn't necessarily complete. There might be more notify's needed.
* Removed three (mostly) harmless slashes.James Shubin2013-12-221-3/+3
|
* Improved auto repo management and version selection.James Shubin2013-12-223-11/+41
| | | | | | | | | | | | | | 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-173-1/+117
| | | | | Support for other operating systems will have to come later, even if this needs to be refactored. For now, CentOS/RHEL are automatic.
* Woops, tiny bugfix.James Shubin2013-10-301-1/+1
|
* Set the generated UUID to have the value of the user generated one.James Shubin2013-10-261-0/+15
| | | | | | | If a user decides to manually set a host UUID, then save that UUID so that subsequent removal of manual UUID settings won't cause the UUID to change. This is useful if you want to start using automatic UUID's when you weren't previously.
* Ensure user selected UUID's are valid.James Shubin2013-10-261-0/+4
|
* Small fixes for gluster::simple.James Shubin2013-10-262-3/+6
|
* Automatic brick ordering and finite state machine support.James Shubin2013-10-106-20/+346
| | | | | | | | | | | | | 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.
* Module needs a better description.James Shubin2013-10-1017-17/+17
| | | | | | | While the module can still be used in a simple way: * It is pretty complicated at this point. It does some advanced stuff. * I wanted to avoid confusion with gluster::simple which is coming soon.
* Small VIP fixes.James Shubin2013-10-102-4/+9
| | | | This lets us specify the VIP in ::server, and inherit it in all volumes.
* Use better namespacing for volume create tmp log files.James Shubin2013-10-101-1/+1
|
* Add gluster version fact and operating-version templating.James Shubin2013-09-231-3/+27
| | | | | | Puppet-gluster now correctly picks the operating-version value from a table of known version -> value correspondences. Future value additions should be added to this table.
* Give glusterd a chance to settle down before we create a volume.James Shubin2013-09-191-1/+3
| | | | | | | | | | This is usually only relevant right after initial peering if we're doing a hot (clean) puppet build. This probably happens because puppet is eager to run things as soon as possible, and after glusterd is restarted, it takes a short moment for glusterd to see the other nodes as fully peered. Ideally puppet should really only check the $onlyif conditions *right* before it runs the command. I think that it might be cheating here and running it in parallel slightly before... Who knows.
* Added fancy volume creation.James Shubin2013-09-182-1/+52
| | | | | | This moves the command into a separate file. This also adds temporary saving of stdout and stderr to /tmp for easy debugging of command output.
* Better notification of glusterd reloads.James Shubin2013-09-181-4/+20
| | | | It seems the propagate up isn't 100% reliable.