summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Properly iterate over all the peers.James Shubin2013-12-281-2/+5
| | | | | Not sure how this bug ever happened. Did the format of the xml ever change? In any case, now it's squashed.
* 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.
* README maintenanceJames Shubin2013-12-231-2/+4
|
* 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!
* Add missing line from gluster packages.James Shubin2013-12-171-0/+1
| | | | This prevents an unnecessary template change on puppet runs.
* 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.
* Fixed small typo.James Shubin2013-12-141-1/+1
|
* Suppress warnings when gluster is not installed.James Shubin2013-12-122-8/+8
|
* Updated documentation.James Shubin2013-11-181-22/+0
| | | | Github's markdown parser apparently can't figure out comments correctly.
* Added documentation to Puppet-Gluster.James Shubin2013-11-184-0/+533
| | | | | | | Run 'make docs' to generate an up-to-date .pdf of the documentation. Ironically, one reason I first started writing Puppet code, was so that I wouldn't have to write as much documentation anymore.
* Attempt to make puppet-gluster friendly for puppet forge users.James Shubin2013-10-302-0/+13
|
* Woops, tiny bugfix.James Shubin2013-10-301-1/+1
|
* Globals should be in CAPS.James Shubin2013-10-291-2/+2
|
* 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-109-20/+672
| | | | | | | | | | | | | 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-1020-20/+20
| | | | | | | 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-233-4/+62
| | | | | | 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.
* Set operating-version in glusterd.infoJames Shubin2013-09-182-0/+3
| | | | | | This should really be switched based on the operating gluster version. A table of values and gluster versions is needed. The gluster version could be created as a fact.
* Small cleanups.James Shubin2013-09-182-23/+6
|
* Also verify peer state for connection tool.James Shubin2013-09-181-2/+21
|
* Added short comment.James Shubin2013-09-181-0/+7
|
* Misc comments.James Shubin2013-09-182-0/+2
|
* Additional UUID facts.James Shubin2013-09-181-0/+16
|
* Finally, Fancy Firewalling...James Shubin2013-09-184-12/+150
| | | | | | | | | | | This adds experimental support for automatic firewalling. Initially, we don't know the other hosts (until they are exported and collected) so we start with an blank firewall to all hosts. After hosts start checking in, we start only allowing specify host ips. For the volume building, we can't predict (AFAICT) which ports will be used until after the volume is started, so we initially allow all ports inbound, until the fact gets the data from the started volume and uses those specific ports. This naturally takes multiple puppet runs to complete.
* Updated xml parser with new features...James Shubin2013-09-184-16/+115
|
* Nitpick cleanups.James Shubin2013-09-162-12/+12
|
* Better volume property management.James Shubin2013-09-162-15/+353
| | | | | | | This patch adds the beginning of better property management. Many properties need types and testing filled in to work properly. This is preliminary support to make it easier for others to test and offer patches for options they use.
* Some initial firewalling cleanups.James Shubin2013-09-162-65/+109
| | | | | | | Appropriate firewalling support is a hard thing in gluster if you take in to account all the bootstrapping problems of what needs to be open before subsequent things can work. Hopefully this patch is a good first step in finally doing the right things.
* Allow empty ips list.James Shubin2013-09-081-5/+10
|
* Remove unnecessary folder creation.James Shubin2013-09-081-11/+13
| | | | | | | | | | Gluster creates this folder on volume creation. Whether this is new in version 3.4 or not is unknown. If any of the hosts have this folder prior to volume creation, then volume creation will fail. It is not sure if this is needed when normal bricks on separate file systems are being used. If someone wants to donate some hardware, I'm happy to test this.
* Better slash handlingJames Shubin2013-09-081-4/+6
|
* Remove redundant hosts specification in gluster::server()James Shubin2013-09-084-5/+4
| | | | At the moment, this is redundant, and not needed.
* This patch adds fact magic to make specifying host uuid's optional.James Shubin2013-09-085-56/+227
| | | | | | | | | | | | If you would like to be ultra lazy and not specify any uuid's manually, the puppet module can now generate them on your behalf. This will take at least two puppet runs because of the distributed nature of gluster and because the uuid facts must be exported to all the nodes for peering. Please note that if you rebuild a node from scratch, you probably won't get the same UUID. You can either set it manually, or paste one in the /var/lib/puppet/tmp/gluster/uuid/uuid file. Watch the formatting!
* Set proper selinux context and perms. Keep Dan Walsh from crying.James Shubin2013-09-071-2/+6
| | | | | | This avoids the constant flip flops you'll see during puppet runs. I think glusterd might be setting them correctly, but puppet kept changing them back to the default. All fixed now :)
* Make it easier to use simple filesystem paths for bricks.James Shubin2013-09-072-17/+94
| | | | | The added example should make this obvious. Heed the warning in using this feature. I find it most useful for rapid prototyping using vm's.
* Add proper ping/status checks before volume creation.James Shubin2013-09-075-16/+125
| | | | | | | | | | | | This adds proper (optional) ping checks with fping and gluster peer status checks to ensure the peer are available before a volume create command. This required rewriting of the xml.py hack which helps puppet interface with the xml formatted gluster cli output. In addition, downstream commands such as volume::property gained checks to ensure the volume was present beforehand. While it is not obvious, it should be noted that because of the distributed nature of glusterfs, more than one puppet run will be required for complete deployment. With these patches, individual runs shouldn't ever end in temporary error as they used too.
* Small bugfixes.James Shubin2013-09-064-2/+6
|
* Small cleanups.James Shubin2013-08-203-7/+12
|
* Added a puppet-{gluster,nfs,ipa} example.James Shubin2013-06-231-0/+47
| | | | At the moment, the NFS and IPA portions are not HA.
* Added my .gitignoreJames Shubin2013-06-231-0/+2
|