171 lines
7.9 KiB
Markdown
171 lines
7.9 KiB
Markdown
# 2022 Edition
|
|
|
|
<p align="center">
|
|
<img src="../logo.png?raw=true" alt="90DaysOfDevOps Logo" width="50%" height="50%" />
|
|
</p>
|
|
|
|
English Version | [Versión en Castellano](2022/es/README.md) | [中文版本](2022/zh_cn/README.md) | [繁體中文版本](2022/zh_tw/README.md)| [日本語版](2022/ja/README.md) | [Wersja Polska](2022/pl/README.md) | [Tiếng Việt](2022/vi/README.md) | [한국어](2022/ko/README.md)
|
|
|
|
This repository is used to document my journey on getting a better foundational knowledge of "DevOps". I will be starting this journey on the 1st January 2022 but the idea is that we take 90 days which just so happens to be January 1st to March 31st.
|
|
|
|
The reason for documenting these days is so that others can take something from it and also hopefully enhance the resources.
|
|
|
|
The goal is to take 90 days, 1 hour each a day, to tackle over 13 areas of "DevOps" to a foundational knowledge.
|
|
|
|
This will **not cover all things** "DevOps" but it will cover the areas that I feel will benefit my learning and understanding overall.
|
|
|
|
[](https://ko-fi.com/N4N33YRCS)
|
|
|
|
[](https://discord.gg/vqwPrNQsyK)
|
|
|
|
The quickest way to get in touch is going to be via Twitter, my handle is [@MichaelCade1](https://twitter.com/MichaelCade1)
|
|
|
|
## Progress
|
|
|
|
- [✔️] ♾️ 1 > [Introduction](day01)
|
|
|
|
### What is and why do we use DevOps
|
|
|
|
- [✔️] ♾️ 2 > [Responsibilities of a DevOps Engineer](day02)
|
|
- [✔️] ♾️ 3 > [DevOps Lifecycle - Application Focused](day03)
|
|
- [✔️] ♾️ 4 > [DevOps & Agile](day04)
|
|
- [✔️] ♾️ 5 > [Plan > Code > Build > Testing > Release > Deploy > Operate > Monitor >](day05)
|
|
- [✔️] ♾️ 6 > [DevOps - The real stories](day06)
|
|
|
|
### Learning a Programming Language
|
|
|
|
- [✔️] ⌨️ 7 > [The Big Picture: DevOps & Learning a Programming Language](day07)
|
|
- [✔️] ⌨️ 8 > [Setting up your DevOps environment for Go & Hello World](day08)
|
|
- [✔️] ⌨️ 9 > [Let's explain the Hello World code](day09)
|
|
- [✔️] ⌨️ 10 > [The Go Workspace & Compiling & running code](day10)
|
|
- [✔️] ⌨️ 11 > [Variables, Constants & Data Types](day11)
|
|
- [✔️] ⌨️ 12 > [Getting user input with Pointers and a finished program](day12)
|
|
- [✔️] ⌨️ 13 > [Tweet your progress with our new App](day13)
|
|
|
|
### Knowing Linux Basics
|
|
|
|
- [✔️] 🐧 14 > [The Big Picture: DevOps and Linux](day14)
|
|
- [✔️] 🐧 15 > [Linux Commands for DevOps (Actually everyone)](day15)
|
|
- [✔️] 🐧 16 > [Managing your Linux System, Filesystem & Storage](day16)
|
|
- [✔️] 🐧 17 > [Text Editors - nano vs vim](day17)
|
|
- [✔️] 🐧 18 > [SSH & Web Server(LAMP)](day18)
|
|
- [✔️] 🐧 19 > [Automate tasks with bash scripts](day19)
|
|
- [✔️] 🐧 20 > [Dev workstation setup - All the pretty things](day20)
|
|
|
|
### Understand Networking
|
|
|
|
- [✔️] 🌐 21 > [The Big Picture: DevOps and Networking](day21)
|
|
- [✔️] 🌐 22 > [The OSI Model - The 7 Layers](day22)
|
|
- [✔️] 🌐 23 > [Network Protocols](day23)
|
|
- [✔️] 🌐 24 > [Network Automation](day24)
|
|
- [✔️] 🌐 25 > [Python for Network Automation](day25)
|
|
- [✔️] 🌐 26 > [Building our Lab](day26)
|
|
- [✔️] 🌐 27 > [Getting Hands-On with Python & Network](day27)
|
|
|
|
### Stick to one Cloud Provider
|
|
|
|
- [✔️] ☁️ 28 > [The Big Picture: DevOps & The Cloud](day28)
|
|
- [✔️] ☁️ 29 > [Microsoft Azure Fundamentals](day29)
|
|
- [✔️] ☁️ 30 > [Microsoft Azure Security Models](day30)
|
|
- [✔️] ☁️ 31 > [Microsoft Azure Compute Models](day31)
|
|
- [✔️] ☁️ 32 > [Microsoft Azure Storage & Database Models](day32)
|
|
- [✔️] ☁️ 33 > [Microsoft Azure Networking Models + Azure Management](day33)
|
|
- [✔️] ☁️ 34 > [Microsoft Azure Hands-On Scenarios](day34)
|
|
|
|
### Use Git Effectively
|
|
|
|
- [✔️] 📚 35 > [The Big Picture: Git - Version Control](day35)
|
|
- [✔️] 📚 36 > [Installing & Configuring Git](day36)
|
|
- [✔️] 📚 37 > [Gitting to know Git](day37)
|
|
- [✔️] 📚 38 > [Staging & Changing](day38)
|
|
- [✔️] 📚 39 > [Viewing, unstaging, discarding & restoring](day39)
|
|
- [✔️] 📚 40 > [Social Network for code](day40)
|
|
- [✔️] 📚 41 > [The Open Source Workflow](day41)
|
|
|
|
### Containers
|
|
|
|
- [✔️] 🏗️ 42 > [The Big Picture: Containers](day42)
|
|
- [✔️] 🏗️ 43 > [What is Docker & Getting installed](day43)
|
|
- [✔️] 🏗️ 44 > [Docker Images & Hands-On with Docker Desktop](day44)
|
|
- [✔️] 🏗️ 45 > [The anatomy of a Docker Image](day45)
|
|
- [✔️] 🏗️ 46 > [Docker Compose](day46)
|
|
- [✔️] 🏗️ 47 > [Docker Networking & Security](day47)
|
|
- [✔️] 🏗️ 48 > [Alternatives to Docker](day48)
|
|
|
|
### Kubernetes
|
|
|
|
- [✔️] ☸ 49 > [The Big Picture: Kubernetes](day49)
|
|
- [✔️] ☸ 50 > [Choosing your Kubernetes platform](day50)
|
|
- [✔️] ☸ 51 > [Deploying your first Kubernetes Cluster](day51)
|
|
- [✔️] ☸ 52 > [Setting up a multinode Kubernetes Cluster](day52)
|
|
- [✔️] ☸ 53 > [Rancher Overview - Hands On](day53)
|
|
- [✔️] ☸ 54 > [Kubernetes Application Deployment](day54)
|
|
- [✔️] ☸ 55 > [State and Ingress in Kubernetes](day55)
|
|
|
|
### Learn Infrastructure as Code
|
|
|
|
- [✔️] 🤖 56 > [The Big Picture: IaC](day56)
|
|
- [✔️] 🤖 57 > [An intro to Terraform](day57)
|
|
- [✔️] 🤖 58 > [HashiCorp Configuration Language (HCL)](day58)
|
|
- [✔️] 🤖 59 > [Create a VM with Terraform & Variables](day59)
|
|
- [✔️] 🤖 60 > [Docker Containers, Provisioners & Modules](day60)
|
|
- [✔️] 🤖 61 > [Kubernetes & Multiple Environments](day61)
|
|
- [✔️] 🤖 62 > [Testing, Tools & Alternatives](day62)
|
|
|
|
### Automate Configuration Management
|
|
|
|
- [✔️] 📜 63 > [The Big Picture: Configuration Management](day63)
|
|
- [✔️] 📜 64 > [Ansible: Getting Started](day64)
|
|
- [✔️] 📜 65 > [Ansible Playbooks](day65)
|
|
- [✔️] 📜 66 > [Ansible Playbooks Continued...](day66)
|
|
- [✔️] 📜 67 > [Using Roles & Deploying a Loadbalancer](day67)
|
|
- [✔️] 📜 68 > [Tags, Variables, Inventory & Database Server config](day68)
|
|
- [✔️] 📜 69 > [All other things Ansible - Automation Controller, AWX, Vault](day69)
|
|
|
|
### Create CI/CD Pipelines
|
|
|
|
- [✔️] 🔄 70 > [The Big Picture: CI/CD Pipelines](day70)
|
|
- [✔️] 🔄 71 > [What is Jenkins?](day71)
|
|
- [✔️] 🔄 72 > [Getting hands on with Jenkins](day72)
|
|
- [✔️] 🔄 73 > [Building a Jenkins pipeline](day73)
|
|
- [✔️] 🔄 74 > [Hello World - Jenkinsfile App Pipeline](day74)
|
|
- [✔️] 🔄 75 > [GitHub Actions Overview](day75)
|
|
- [✔️] 🔄 76 > [ArgoCD Overview](day76)
|
|
|
|
### Monitoring, Log Management, and Data Visualisation
|
|
|
|
- [✔️] 📈 77 > [The Big Picture: Monitoring](day77)
|
|
- [✔️] 📈 78 > [Hands-On Monitoring Tools](day78)
|
|
- [✔️] 📈 79 > [The Big Picture: Log Management](day79)
|
|
- [✔️] 📈 80 > [ELK Stack](day80)
|
|
- [✔️] 📈 81 > [Fluentd & FluentBit](day81)
|
|
- [✔️] 📈 82 > [EFK Stack](day82)
|
|
- [✔️] 📈 83 > [Data Visualisation - Grafana](day83)
|
|
|
|
### Store & Protect Your Data
|
|
|
|
- [✔️] 🗃️ 84 > [The Big Picture: Data Management](day84)
|
|
- [✔️] 🗃️ 85 > [Data Services](day85)
|
|
- [✔️] 🗃️ 86 > [Backup all the platforms](day86)
|
|
- [✔️] 🗃️ 87 > [Hands-On Backup & Recovery](day87)
|
|
- [✔️] 🗃️ 88 > [Application Focused Backups](day88)
|
|
- [✔️] 🗃️ 89 > [Disaster Recovery](day89)
|
|
- [✔️] 🗃️ 90 > [Data & Application Mobility](day90)
|
|
|
|
## License
|
|
|
|
Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]
|
|
|
|
This work is licensed under a
|
|
[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa].
|
|
|
|
[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]
|
|
|
|
## Star History
|
|
|
|
[](https://star-history.com/#MichaelCade/90DaysOfDevOps&Timeline)
|
|
|
|
[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/
|
|
[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png
|
|
[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg
|