5 Project Ideas for Junior Linux System Administrators

Introduction

If you are getting started with programming, there are countless articles with ideas for projects that you could build, but not that many project ideas for purely Ops-related roles.

For anyone who is getting started with Linux and wants a DevOps/SysOps practical task or a challenge to boost your knowledge, you could try configuring up the following setups.

Prerequisites

Before you get started, you would need to either have Virtual Box installed on your laptop so that you could create Linux virtual machines on there.

Or as an alternative, you could create an account with DigitalOcean using the link below and start creating actual servers:

Setup a LAMP or LEMP Stack

Nginx and Apache are some of the most popular web servers, so you will most likely have to work with both at some point in your career.

Challange:

Setup 1 server and install the following:

For the sake of practice, try out the same setup but with Apache instead!

MySQL replication

Scaling MySQL could be challenging. This is why I would encourage you to try and setup MySQL replication with 2 or more servers and get your hands dirty!

Challange

Setup 2 servers with MySQL installed and configured MySQL replication so that you have 1 main server and 1 replica.

Setup NFS

NFS stands for Network File System, and it allows you to share files and folders between servers/computers over a network, much like local storage.

Challange

Set up an NFS server and with a few NFS clients.

Setup Redis for PHP sessions

If you are going to scale your PHP application with multiple web servers, you would need a way to share your PHP sessions. Otherwise, your users would lose their sessions each time they reach a different server.

Challange

Try setting up a separate Redis server and configure the LEMP/LAMP server so that it stores its PHP sessions on your Redis server.

Complete Solution

Once you've done the above a few times and you feel confident, then try to combine all of the things into one and set up the following solution:

Linux DevOps Challange

Challange

Setup the following

This could be considered as an 'old school' solution compared to technologies like Kubernetes and etc., but I think that it is a great exercise for anyone interested in system administration, SRE, and DevOps roles!

Finally, try doing a load test with Siege.

Other Ideas

Some other ideas would be:

If you are getting into the DevOps world, make sure to check out Ansible, Docker, and Kubernetes!

Conclusion

You can spin up a few servers on DigitalOcean and start playing around!

If you have any other ideas, make sure to share them with me by tagging me on Twitter:

@bobbyiliev_

Bobby

© 2023 Bobby Iliev - Personal Blog

Facebook 𝕏 GitHub YouTube Instagram