DevOps Toolchain: Download 3 Free Tools Used By Pros (Ansible, Git, Jenkins)

DevOps ToolsHack Your Resume with DevOps Skills

Lately, I’ve been getting a lot of questions about DevOps so I thought I’d share some free tools to get you started on your DevOps journey and give you a starting place for hacking your resume with awesome skills and experience.

As discussed in my free DevOps eBook, DevOps is a term for the streamlined processes used to improve communication and work between Software Developers and IT Operations (A. K. A. SysAdmins).

What is toolchain automation?

I’m always asked, “Where do I start?” a good question because when you search for DevOps tools there are pages and pages of search results about tools to pick from – it’s overwhelming where to begin. But in this lesson, we’re going to narrow the search results for you and focus on 3 tools used by Pros already crushing-it with Continuous Integration/Continuous Delivery (CI/CD).

Are you ready to get down to business? In this lesson, we’re going to quickly cover:

  • Ansible
  • Git
  • Jenkins

You may wonder why you should download and learn these 3 DevOps tools, first?

How about because they’re used by the Pros and YOU want to be the Guy/Gal who stands out during interviews because you have relevant skills and experience that IT Managers need!

Let’s begin…

DevOps Toolchain For Beginners

DevOps ToolchainAnsible (Configuration Management)

First, we’ll begin with one of my favorite DevOps tools.

Ansible is a powerful automation platform that can help you run tasks and chains of events which must happen on several different servers or devices at a certain time.

What does that mean?

It means Ansible can run multiple tasks at the same time so this tool will definitely help you get more done in a shorter period of time.

This sweet tool manages machines over the SSH protocol, thus you would only be required to install it on one central machine. From there, Ansible can run a set of remote machines easily.

This may not sound like a big deal, but imagine being a single Linux admin with 100’s of Linux boxes that required updates. With Ansible you could handle code releases or Linux patching with a runbook and few commands.

According to their website, Ansible releases new versions every four months or so and in each new version, minor bugs are fixed. You can choose the latest version with the least amount of bugs but most people go for the development version because it’s the easiest to use and does not require any installations.

When installing Ansible, it’s recommended to use the Python package manager or the OS package manager.

Current versions of Ansible can be installed on any machine with Python 2.6 or version 2.7. Other than that you may have to make a few tweaks, and some installations might have additional requirements. No big deal, because this all adds to your experience.

So go ahead, Download Ansible and start expanding your DevOps skills. Ansible experience and skills make awesome bullet points to have on your resume. Here’s a related post about using Ansible to bootstrap new Docker nodes

DevOps Tool ChainGit (Version Control System)

Next on the DevOps toolchain is Git.

Git is not just any Version Control System (VCS), in my opinion, it’s the best.

Look:

While most other tools of this kind will keep information as a set of files and sets of changes made to each file over time, Git stores its information differently.

Every time you save a specific file in Git, it will immediately take a picture of what your file looks like and save that snapshot. Once you save the same file again, if there hadn’t been any changes to it, Git won’t store the file again but it will simply link the previous identical file that has already been saved. Sounds cool, right?

Operations in Git require only local resources to function. No information from another computer or network is needed. If you were to look for a project history, Git will simply read it from your local database. This allows you easy access to your information even when you’re offline, which is why this DevOps tool is very versatile.

Git allows you to do work while you don’t have Internet access and/or finish important tasks on the go…

A key feature this DevOps tool provides is it’s impossible to change the content of any file without Git knowing about it which is exactly why it’s recommended for use in DevOps.

You can’t lose your files or have them corrupt without Git detecting it. After you create a snapshot in Git it’s difficult to lose it because everything is stored in Git’s database. You can freely experiment with your files and make changes because whether or not you save them, you will still have that original version of the database.

Picture this:

Git has three important states where your files will be stored. Those are: committed, modified and staged. If your files are stored as committed, it means that the data is safely placed into your local database. Modified means that the file had been changed but it had not yet been committed to your database. And finally, staged means that you have marked a modified file in its current version to be committed, which basically means it will get placed in the database.

The most important part of Git is the directory because that’s where Git stores all the metadata for your project. The second part is the working tree which is kind of like a checkout. This is where your file is pulled out of the database and put on a disk for you to use. In the third part, the staging area, a file stores information about what will go next to the committed state.

Working in Git is fairly easy. You modify your files in the working tree after which you stage them and create a snapshot of them. Lastly, you commit the files and they get permanently saved in your local database.

Git is another DevOps tool that is used a lot, and a good understanding how to set up Git and how to use the VCS is a must for SysAdmins working alongside developers.

Well, what are you waiting for? Download Git and get going…

DevOps Toolchain for BeginnersJenkins (Automation Server)

I saved the best of the DevOps toolchain for last…

Jenkins is an automation server used by lots of DevOps engineers. This tool is used in small startups, all the way up to the giant service providers we use every day.

Its value is many but a couple of key features are the ability to automate tasks for deployments and testing of software code. With bunches of plugins for every imaginable configuration, customers can get all sorts of functions out of the Jenkins, including integration with Git.

For example, as an integration service, Jenkins merges codes from individual developers into a project and continuously tests it to avoid any possible bugs or issues. Or, as a delivery service, it makes sure that the merged code is ready for use at any given time. With Jenkins, you can automate these processes from end to end.

Besides managing workflows from source to delivery, many other DevOps tools work with Jenkins to add more functions. An example is how Jenkins is used with Docker containers to automatically deploy and scale environments. Although, for the record, Docker is more than a DevOps tool, click here to read more about Docker.

Continuous Integration (CI) is an important part of any development team, and Jenkins functionality allows engineers to automate various deployment processes while completely relying on tools and the power of automation for completing tasks.

Do you see the value of Jenkins?

It allows Dev teams to function more efficiently and with Jenkins, they can easily test for any type of error during the SDLC process.

According to their website, the first release of Jenkins took place back in 2005 and since then Jenkins has become an award-winning DevOps tool. When combining Jenkins with other DevOps tools you get endless possibilities in terms of development, deployment, and systems automation.

Do you see now why I saved Jenkins for last? Now Download Jenkins and enjoy building skills and experience that will stand out on your resume.

Recap:

You learned about the DevOps tool Ansible which is used to do systems automation. There are other tools like Ansible such as Chef and Puppet, but for the Linux admin who wants to get relevant DevOps skills fast, Ansible works best.

Then you learned about Git and how it works to keep versions of files organized. This tool is important for SysAdmins working alongside Developers. Setting up Git and/or Github, and helping the Dev team to get organized is part of the DevOps journey.

And finally, we covered Jenkins for automation of code deployments, testing, and everything in-between. Throw in a few plugins here and there and you have the makings of CI/CD and DevOps.

Now:

Obviously, there are many more tools we didn’t cover on the DevOps toolchain, but let me emphasize that becoming well-versed in these 3 important DevOps tools will go a long way for anyone who is looking for a job with a startup or a big shop that needs good automation talent. Start with this DevOps toolchain and you’ll be surprised how far it takes you.

P.S.

If after reading this lesson you’re still hungry for more information about DevOps, check out these lessons on DevOps SkillsBest Automation Training, and Microsoft DevOps.

Leave a Reply

vSphere Data Protection EOA
Finding The Best vSphere Backup Replacement For VDP (3 Alternatives)

Important Notification: vSphere Data Protection (VDP) End of Availability (EOA) That...

vSphere 6
8 Updates That Make vSphere 6 Better – Keith Barker

Editor’s note: Keith Barker has been a CBT Nuggets Trainer since 2012. Some...

VMware Interview Questions
25 VMware Interview Questions And Answers: Tough & Technical (Download PDF)

Free VMware vSphere Interview Guide In this VMinstall Guide, I’ll share...

Project Photon
VMware Project Photon: Technical Review for Linux Admins

My quick and dirty review of Project Photon. I was very happy...

DevOps Plan
Best DevOps Strategy Hack (Winners Start With Why)

What is DevOps? It’s a model. It’s a culture. It’s a...

DevOps Tools Download
DevOps Toolchain: Download 3 Free Tools Used By Pros (Ansible, Git, Jenkins)

Hack Your Resume with DevOps Skills Lately, I’ve been getting a...

DevOps Guide
The Best Microsoft DevOps Skills: 25+ For Windows SysAdmins

What is Microsoft DevOps? This is an interesting question because first off,...

continuous integration tools
The Best Automation Training Video Courses (DevOps Tools)

When I was just starting out as a Jr SysAdmin, I...

Assessing Your Company's Cloud Readiness
13 Cloud Readiness Assessment Tips To Guide Your Migration Success (Updated)

Planning your migration to the cloud? If you’re planning to move...

How Bare Metal Virtualization Made Cloud Computing A Reality
How Bare Metal Virtualization Made Cloud Computing A Reality

An Overview of Bare Metal Virtualization Let’s start by explaining what...

Advantages of Cloud Computing
Advantages of Cloud Computing (Private versus Public)

Advantages of Cloud Computing Whether you’re an enterprise IT department planning...

Free Offical Amazon VPC & EC2 Cloud Guides for Beginners

Free Cloud Guides for Beginners Are you researching Amazon’s AWS Virtual...

DesTechAZ
What’s So Interesting About Woz U?

On 10/12/2017, I had the privilege of attending the AZ Tech...

tensorflow training
TensorFlow Tools for Beginners (7 Easy Takeaways To Get You Started)

Introduction To Deep Learning As a follow-up to my book review...

job rut
How To Get MOVING When You’re Stuck In A Career Rut (Video)

You worked hard to get your degree and after graduation you...

Storage Engineer Skills
Why Storage Engineer Skills Are HOT! (Can You Say Big Data?)

3 BIG Skills New Storage Engineers Are Missing Out On… Behind...

VULTR Reviews
VULTR Review And Comparison: Best VPS Platforms Now Thru 2018
Website for Small Business
Best Small Business Website Packages (6 Alternatives That Rank!)
Click here to learn how to Optimize WordPress Speed
WordPress Speed Optimization: Learn To Rank Higher In Google
Best Hosting for WordPress
Case Study: Best VPS For Easy WordPress Migration