Planet Gluster

Aggregated news from external sources

Catching up with Infrastructure Debt

November 5, 2017

If you run an infrastructure, there’s a good chance you have some debt tucked
in your system somewhere. There’s also a good chance that you’re not getting
enough time to fix those debts. There will most likely be a good reason why
something is done in the way it is. This is just how things are in general.
After I joined Gluster, I’ve worked with my fellow sysadmin to tackle our large
infrastructure technical debt over the course of time. It goes like this:

  • We run a pretty old version of Gerrit on CentOS 5.
  • We run a pretty old version of Jenkins on CentOS 6.
  • We run CentOS 6 for all our regressions machines.
  • We run CentOS 6 for all our build machines.
  • We run NetBSD on Rackspace in a setup that is not easy to automate nor is it
    currently part of our automation.
  • We have a bunch of physical machines in a DC, but we haven’t had time to move
    our VMs over and use Rackspace as burstable capacity.

That is in no way and exhaustive list. But we’ve managed to tackle 2.5 items
from the list. Here’s what we did in order:

  • Upgraded Gerrit to the then latest version.
  • Setup Gerrit staging to test newer versions regularly for scheduling
  • Created new CentOS 7 VMs on our hardware and moved the builds in there.
  • Moved Gerrit over to a new CentOS 7 host.
  • Wrote ansible scripts to manage most of Gerrit, but deployed currently only
    to staging.
  • Upgraded Jenkins to the latest LTS.
  • Moved Jenkins to a CentOS 7 host (Done last week, more details coming

If I look at it, it almost looks like I’ve failed. But again, like dealing with
most infrastructure debt, you touch one thing and you realize it’s broken in
someway and someone depended on that breakage. What I’ve done is I’ve had to
pick and prioritize what things I would spend my time on. At the end of the
day, I have to justify my time in terms of moving the project forward. Fixing
the infrastructure debt for Gerrit was a great example. I could actually focus
on it with everyone’s support. Fixing Jenkins was a priority since we wanted to
use some of the newer features, again I had backing to do that. Moving things
to our hardware is where things get tricky. There’s some financial goals we can
hit if we make the move, but outside of that, we have no reason to move. But
long-term, we want to me mostly in our hardware, since we spent money on it.
This is, understandably going slow. There’s a subtle capacity difference and
the noisy neighbor problem affects us quite strongly when we try to do anything
in this regard.

Source: nigelb (Catching up with Infrastructure Debt)


  • 12 Dec 2018
    Gluster Container Storage milestone...

    Today, we are announcing the availability of GCS (Gluster Container Storage) 0.4. The release was bit delayed to address some of the critical issues identified. This release brings in a good amount of bug fixes along with some key feature enhancements in GlusterD2. We’d request all of you to try...

    Read more
  • 05 Dec 2018
    Gluster Monthly Newsletter, Novembe...

    Gluster 6 – We’re in planning for our Gluster 6 release, currently scheduled for Feb 2019. More details on the mailing lists at Upcoming Community Meeting – December 19 – 15:00 UTC in #gluster-meeting on freenode. has the agenda. Want swag for your meetup? has a contact...

    Read more
  • 06 Nov 2018
    Gluster Monthly Newsletter, October...

    Gluster Monthly Newsletter, October 2018 Gluster 5 is out and our retrospective is currently open! This feedback is anonymous and goes to our release team. Upcoming Community Meeting  – November 7, November 21 – 15:00 UTC in #gluster-meeting on freenode. has the agenda. We’re participating in Outreachy...

    Read more