Kickstarting My DevOps Journey: From 0 to 100

Kickstarting My DevOps Journey: From 0 to 100

Introduction :

Welcome to my DevOps blog series! Here, I’ll be documenting my journey into the world of DevOps, sharing what I learn each week, the tools I explore, and the challenges I overcome. If you're just starting or looking for insights, join me as we dive into the essentials of DevOps, step by step.

Why DevOps?

DevOps isn’t just a role you fill—it’s a culture shift that brings development and operations teams together, breaking down silos and fostering better collaboration. It creates a smoother, faster software development process, ensuring that code is built, tested, and deployed more efficiently and reliably. As technology evolves rapidly, staying relevant means continuously learning and adopting new tools and practices, and DevOps is at the core of this transformation.

What is DevOps?

DevOps is the integration of "Development" and "Operations," aiming to improve the software development lifecycle by streamlining processes and boosting security, speed, and efficiency. This approach enables businesses to deliver software faster, with fewer errors, giving them a competitive edge. By encouraging continuous integration, delivery, and deployment, DevOps helps teams innovate quickly while maintaining high-quality standards.

Week 1: Exploring DevOps - My Learning Path

In my first week of learning DevOps, I focused on understanding the fundamentals. I explored several resources across the internet, and here are the ones that were most helpful to me:

  • GitLab DevOps Guide: A great blog that provides a beginner-friendly overview of what DevOps is, its key concepts, and why it's important.

  • Kunal Kushwaha’s DevOps Bootcamp: This is the best DevOps course I found for beginners on YouTube. The content is well-structured, starting from the basics and covering practical examples.


What I Learned This Week

1. Refreshing My Knowledge on Computer Networks

Before diving into DevOps tools, I started by strengthening my foundation in computer networks. Understanding how data flows through networks is critical for working with DevOps tools like Docker, Kubernetes, and cloud platforms.

  • Video Resource: Computer Networks Basics
    This video explains the internet and all network protocols, layer by layer, in a very simple and detailed manner. It covers topics from what the internet is to all the protocols that operate across different layers of the network.

  • Key Takeaways:

    • Learned the OSI Model and its layers.

    • Understood the roles of key protocols like TCP/IP, HTTP, FTP, DNS, and more.

    • Gained clarity on how data is routed through the internet.

  • My Notes on Networking: Networking Concepts on Notion


2. Introduction to Linux

Linux is a fundamental part of the DevOps ecosystem, powering servers and cloud environments. I started learning the basics of Linux to get comfortable working in terminal environments.

Popular Linux Distributions:

  • Debian: A stable, free OS known for its reliability and long history of open-source development.

  • Red Hat Enterprise Linux (RHEL): Targeted at enterprises, it’s a robust solution for server environments.

  • Ubuntu: A beginner-friendly version of Linux, commonly used for personal computers and servers.

  • Linux Mint: A light alternative to Ubuntu, ideal for desktops and laptops.

  • Fedora: A community-driven distribution that focuses on incorporating the latest open-source software.

What I Learned in Linux:

  • Basic Linux commands like pwd, cd, ls, mkdir, and rm.

  • Understood how to navigate through the Linux file system, manage directories, and create files.

Important Shell Commands:

  • pwd – Print Working Directory

  • cd – Change Directory

  • ls – List Files and Directories

  • touch – Create a New File

  • cp – Copy Files

  • mv – Move Files

  • rm – Remove Files

  • cat – Concatenate and Display File Content

  • history – View Command History

Basic Text Manipulation Commands:

  • stdout, stdin, stderr – Understanding how standard input/output/error streams work.

  • pipe (|) and tee – Use of pipes to combine commands and redirect outputs.

  • grep – Searching for patterns in text.

  • head and tail – View the beginning or end of files.

  • sort – Sort text data.

  • uniq – Remove duplicate lines.

  • wc – Word count of files.


Exploring Linux Distributions

When starting with Linux, you need to choose the right distribution based on your goals. Here's a breakdown of some popular distributions:

  • Debian: Known for its stability, this is ideal for servers and environments where reliability is key.

  • Ubuntu: A popular choice for beginners and a great option for desktops and servers.

  • Linux Mint: Perfect for those who want a lightweight OS on their personal computers.

  • Fedora: Ideal for users who want a user-friendly Red Hat-based OS.


Conclusion

In my first week, I explored the foundational concepts of DevOps by focusing on computer networks and Linux. These are critical areas for any DevOps engineer. Going forward, I'll dive deeper into containerization, version control, and cloud infrastructure. I’m excited to continue this journey and share more of my learnings every week.

Stay tuned for more updates as I progress through my DevOps bootcamp! Feel free to connect with me on LinkedIn or Twitter if you're also exploring DevOps or have any questions!


Follow My Journey: