DevOps in 21 Days!

About Me

  • I am Mohammed Daoudi AKA iduoad
  • I am a DevOps engineer
  • I am a GitLab Hero
  • weCanTalkAbout([🐧, 🐳, 🦊, …])
  • More about me here !

Disclaimers

  • Work in progess
  • Subjective
  • Interactive
  • Good news: I am working on a DevOps Course 🎉🎉

Prerequisites

  • Good English (or not)
  • Programming
  • Problem Solving
  • Googling

Tools and techniques

Learn Operating Systems (especially Linux)

  • Best way to learn Linux is to use Linux
  • At first you only need to know you way in and out.
  • Get a bit of administration skills.
  • Always learn by doing (TASK based learning).

Learn about Git

  • Git 101: Working from home
    • git init
    • git add
    • git commit
    • git log/show
  • Git 102: Working remote

Script as much as you can

  • RegEx 101
  • Unix Filters (Grep, cut, sed, awk …)
  • Shells
  • Shell scripts

Learn Networking

  • OSI and TCP/IP
  • Dive into protocols (IP, TCP, HTTP, TLS …)
  • Wireshark things
  • Linux network stack (iproute2)

Learn Storage

  • Get some Storage theory
  • OS level: Linux storage stack (file systems, volume management …)
  • Software defined storage (Network storage).

Learn Compute

  • Get you feet wet with VirtualBox or virt-manager
  • Try vagrant (if you want to)
  • Go deeper with KVM, Xen or VMware ESXi.
  • Virtual compute, storage, networking…

Learn Security

  • Learn about firewalls.
  • Web security (OWASP top 10)
  • Participate in CTFs

Container 101

  • Install docker or podman and have fun with it.
  • Create your own dockerfiles
  • Learn docker compose
  • Learn OCI

Containers 102

  • Learn Kubernetes
  • Install Kubernetes
  • CKAD and/or CKA

CI/CD

  • Pick a project!
  • Pick a tool!
  • Create a CI/CD pipeline for the project using the tool.

Cloud Computing

  • Cloud is most underrated (and overrated) tool we have today.
  • Two steps
    • Define your needs
    • Choose your stack
  • Automate using IAC (Terraform, Pulumi, CDKs …)
  • Road to Architecture.

More things

  • Software engineering
  • Acceptance tests
  • Monitoting and Logging (Observability)

Mindset

  • Break things and try to fix them.
  • Patience is key.
  • Document you journey.
  • Delegate work.
  • Delegate learning.
  • Adopt Security from the beginning.
  • Everything as code.

Thank you

Let’s be friends! 🤗