December 17, 2014

Gain Experience as a Volunteer SysAdmin on an Open Source Project

raised hands

You won’t learn to swim by reading a book on swimming, so when you’re looking to bolster your experience while preparing for a Linux certification, open source projects are a good place to dive right in.

A recently released free exam prep guide for the Linux Foundation’s two new certifications -- Linux Foundation Certified System Administrator (LFCS) and Linux Foundation Certified Engineer (LFCE) – outlines the core competencies required for each of the exams.

Try to match those needed skills with the work the project needs. Sign up for the project mailing list and/or join its IRC. Approach the project with confidence and eagerness, and you’ll likely find a community equally eager to put you to work.

Take the oVirt Project, a KVM management application and open source alternative to VMware vSphere. It offers hands-on experience with the kernel and requires a lot of testing, according to David Caro, the project’s infrastructure lead.

His advice: Don’t be shy.

“Open communities usually allow for a lot of external people to come in and work with them. Don’t be shy in offering your ideas and asking for help even. If you’ve seen a new technology and you want to try it, open source communities are really open to trying new things. It’s a great place to investigate and try new technologies,” he said.

Getting involved in an open source project like Apache Drill, which is Linux-centric, is a great way to develop Linux skills towards certification, according to Tomer Shiran, a member of the Drill Project Management Committee.

Drill, a schema-free SQL query engine for multiple data sources, is an Apache project that is not owned by a single vendor. Its governance model allows anyone to contribute.

“Contributions can be as simple as writing some new documentation, or as complex as developing a significant new feature. There are opportunities in the area of administration/devops as well. For example, a user could contribute scripts that enable users to deploy Drill through a variety of Linux tools such as Puppet, Chef, Ansible and Docker,” Shiran said.

Drill is a distributed system that can run on one server, or a cluster of servers. Networking is key to Linux certifications, so working on a project like Drill can help improve networking skills, Shiran said. The same is true for Linux cluster management, which is also important for Linux certification.

It has an active developer community with a
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
 mailing list dedicated to helping contributors.

Contributors are able to help open source projects in multiple ways, according to Trevor Pott, a sysadmin, writer and consultant from Edmonton, Alberta, Canada.

Writing code for the project, though a critically important task, can be daunting and is beyond the skillset of many, he says. But all projects need testers.

“Install the application, test both the "stable" production versions and the pre-release test versions.  Throw fuzzers at it to look for security flaws.  Refine the user experience.  Try to break the application and find bugs.  This sort of testing is hugely important and there are never enough people willing to do it as a formal process,” he said.

Then there’s "back office work": Someone has to remember to renew the project's domain name.  Keep the e-mail servers running. Moderate the forums and raise funds to make sure everything works smoothly. 

All open source projects need people to:

  • Help other users

  • Triage bugs

  • Write documentation

  • Translate to other languages.

After all, one of the best ways to learn something yourself is to teach it to someone else.

Click Here!