Vijay Bellur

Life, Technology and a little more…

GlusterFS 3.6.0 – Looking Back and Looking Ahead..

GlusterFS 3.6.0 was released over the last weekend. As I mulled over the release cycle during the weekend, several thoughts on both on the technical and project fronts crossed my mind. This post is an attempt to capture some of those thoughts.

On the technical front, several new features and significant number of bug fixes are part of GlusterFS 3.6.0. The release notes contains a comprehensive list of what’s new in this release. My noteworthy list includes:

  •  Volume Snapshots – Distributed lvm thin-pool based snapshots for backing up volumes in a Gluster Trusted Storage Pool.  Apart from providing cluster wide co-ordination to trigger a consistent snapshot, several improvements have been  performed through the GlusterFS stack to make translators more crash consistent. Snapshotting of volumes is tightly coupled with lvm today but one could also enhance the same framework to integrate with a backend storage technology like btrfs that can perform snapshots.
  •  Erasure Coding – Xavier Hernandez from Datalab added support to perform erasure coding of data in a GlusterFS volume across nodes in a Trusted Storage Pool. Erasure Coding requires fewer nodes to provide better redundancy than a n-way replicated volume and can help in reducing the overall deployment cost. We look forward to build on this foundation and deliver more enhancememnts in upcoming releases.
  • Meta translator – This translator provides a /proc like view for examining internal state of translators on the client stack of a GlusterFS volume and certainly looks like an interface that I would be heavily consuming for introspection of  GlusterFS.
  • Automatic File Replication (AFR) v2 – A significant re-factor of the synchronous replication translator, provides granular entry self-healing and reduced resource consumption with entry self-heals.
  • NetBSD, OSX and FreeBSD ports – Lot of fixes on the portability front. The NetBSD port passes most regression tests as of 3.6.0. At this point, none of these ports are ready to be deployed in production. However, with dedicated maintainers for each of these ports, we expect to reach production readiness on these platforms in a future release.

On the project front,  there have been several things of note happening as far as this release cycle goes. Here are my personal highlights from 3.6.0:

  • 3.6.0 marks the first occurrence of two major GlusterFS releases happening in a calendar year.
  • More patches merged in the 6 month cycle leading to 3.6.0 than any other major release. Addition of more maintainers for GlusterFS and revamp of our Jenkins based CI infrastructure seems to be helping here.

Looking ahead, there are already signs of what is coming up in GlusterFS 3.7. Projects like bitrot detection, volume tiering, Trash translator, Export/Netgroup style authentication for gluster NFS are already in progress and in all probability will be part of 3.7.0 along with other features. We have also started early discussions on what we would want to build for releases and more details will be available in the community soon. If you have thoughts on how addition of a new feature can address your problem(s), do let us know and that can help us in planning out the future of GlusterFS.

Overall, it has been a gratifying time for me to be in the Gluster Community. Personally I look forward to build on this feeling of gratification as we build the next versions of GlusterFS to play a significant role in the distributed storage segment.


November 4, 2014 - Posted by | Uncategorized


  1. Is there anything under way to improve “small files” performance?
    That really is the only thing holding back large companies from adopting Gluster for scale-out storage on commodity hardware..
    While there are recommendations to mount / connect to Gluster locally via NFS, unfortunately performance doesn’t improve much.

    Comment by Cami Sardinha | November 5, 2014 | Reply

  2. Thank you, that was a pretty informative read! As an admin working for a company that is willing/waiting to switch to Gluster and scale to multi-petabytes of storage, I’m eager to move away from the traditional SAN storage arrays and move to SSD/SATA drives and not have to worry about drives failing. The end result is for someone to walk through all our datacenters every morning, replace the faulty drives and business as usual.

    Since you do seem to know what is going on deep in the land of Glusterville, are there any plans to implement raid5 or raid6 (or even raid+X hotspares) in Gluster?

    Comment by Cami Sardinha | November 5, 2014 | Reply

    • Look forward to help with your migration to Gluster :).

      I assume you are referring to raid5 or raid6 across nodes. The erasure coding feature introduced in 3.6 provides raid5 like behavior across nodes and provides resilience if nodes were to fail. You could use some form of RAID (hardware or software) to protect from drive failures within a node.

      Comment by Vijay Bellur | November 7, 2014 | Reply

  3. better handeling for high latency, for example one gluster volume for multi data center

    Comment by ton | November 12, 2014 | Reply

  4. […] Community Lead to find out the latest on the GlusterFS 3.4 and 3.5 releases and how it impacts the Gluster FS 3.6 release. Additionally, hear Dave talk about the GlusterFS future features including Bit Rot detection. And […]

    Pingback by GlusterFS Update | Red Hat Storage | December 6, 2014 | Reply

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: