mirror of
https://github.com/MichaelCade/90DaysOfDevOps.git
synced 2025-02-06 09:09:23 +07:00
Preparation of documents
This commit is contained in:
parent
250bbed52f
commit
7a35a5948b
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Application Focused - Day 3'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Application Focused
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048825
|
||||
---
|
||||
|
||||
## DevOps Lifecycle - Application Focused
|
||||
|
||||
As we continue through these next few weeks we are 100% going to come across these titles (Continuous Development, Testing, Deployment, Monitor) over and over again, If you are heading towards the DevOps Engineer role then repeatability will be something you will get used to but constantly enhancing each time is another thing that keeps things interesting.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - DevOps & Agile - Day 4'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - DevOps & Agile
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048700
|
||||
---
|
||||
|
||||
## DevOps & Agile
|
||||
|
||||
Do you know the difference between DevOps and Agile? They were formed as standalone concepts. But now the two terms are getting fused.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Plan > Code > Build > Testing > Release > Deploy > Operate > Monitor > - Day 5'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Plan > Code > Build > Testing > Release > Deploy > Operate > Monitor >
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048830
|
||||
---
|
||||
|
||||
## Plan > Code > Build > Testing > Release > Deploy > Operate > Monitor >
|
||||
|
||||
Today we are going to focus on the individual steps from start to finish and the continuous cycle of an Application in a DevOps world.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - DevOps - The real stories - Day 6'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - DevOps - The real stories
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048855
|
||||
---
|
||||
|
||||
## DevOps - The real stories
|
||||
|
||||
DevOps to begin with was seen to be out of reach for a lot of us as we didn't have companies like Netflix or a fortune 500 company practising it but I think that now it's beginning to sway into the normal as businesses start adopting a DevOps practice.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Learning a Programming Language - Day 7'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture DevOps & Learning a Programming Language
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048856
|
||||
---
|
||||
|
||||
## The Big Picture: DevOps & Learning a Programming Language
|
||||
|
||||
I think it is fair to say to be successful in the long term as a DevOps engineer you've got to know at least one programming language at a foundational level. I want to take this first session of this section to explore why this is such a critical skill to have, and hopefully, by the end of this week or section, you are going to have a better understanding of the why, how and what to do to progress with your learning journey.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Setting up your DevOps environment for Go & Hello World - Day 8'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Setting up your DevOps environment for Go & Hello World
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048857
|
||||
---
|
||||
|
||||
## Setting up your DevOps environment for Go & Hello World
|
||||
|
||||
Before we get into some of the fundamentals of Go we should get Go installed on our workstation and do what every "learning programming 101" module teaches us which is to create the Hello World app. As this one is going to be walking through the steps to get Go installed on your workstation we are going to attempt to document the process in pictures so people can easily follow along.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Let''s explain the Hello World code - Day 9'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Let's explain the Hello World code
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1099682
|
||||
---
|
||||
|
||||
## Let's explain the Hello World code
|
||||
|
||||
### How Go works
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Go Workspace - Day 10'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Go Workspace
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048701
|
||||
---
|
||||
|
||||
### The Go Workspace
|
||||
|
||||
On [Day 8](day08.md) we briefly covered the Go workspace to get Go up and running to get to the demo of `Hello #90DaysOfDevOps` But we should explain a little more about the Go workspace.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Variables & Constants in Go - Day 11'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Variables & Constants in Go
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048862
|
||||
---
|
||||
|
||||
Before we get into the topics for today I want to give a massive shout out to [Techworld with Nana](https://www.youtube.com/watch?v=yyUHQIec83I) and this fantastic concise journey through the fundamentals of Go.
|
||||
|
||||
On [Day8](day08.md) we set our environment up, on [Day9](day09.md) we walked through the Hello #90DaysOfDevOps code and on [Day10](day10.md)) we looked at our Go workspace and went a little deeper into compiling and running the code.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Getting user input with Pointers and a finished program - Day 12'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Getting user input with Pointers and a finished program
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048864
|
||||
---
|
||||
|
||||
## Getting user input with Pointers and a finished program
|
||||
|
||||
Yesterday ([Day 11](day11.md)), we created our first Go program that was self-contained and the parts we wanted to get user input for were created as variables within our code and given values, we now want to ask the user for their input to give the variable the value for the end message.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Tweet your progress with our new App - Day 13'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Tweet your progress with our new App
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048865
|
||||
---
|
||||
|
||||
## Tweet your progress with our new App
|
||||
|
||||
On the final day of looking into this programming language, we have only just touched the surface here of the language but it is at that start that I think we need to get interested and excited and want to dive more into it.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: DevOps and Linux - Day 14'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture DevOps and Linux
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049033
|
||||
---
|
||||
|
||||
## The Big Picture: DevOps and Linux
|
||||
|
||||
Linux and DevOps share very similar cultures and perspectives; both are focused on customization and scalability. Both of these aspects of Linux are of particular importance for DevOps.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Linux Commands for DevOps (Actually everyone) - Day 15'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Linux Commands for DevOps (Actually everyone)
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048834
|
||||
---
|
||||
|
||||
## Linux Commands for DevOps (Actually everyone)
|
||||
|
||||
I mentioned [yesterday](day14.md) that we are going to be spending a lot of time in the terminal with some commands to get stuff done.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Managing your Linux System, Filesystem & Storage - Day 16'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Managing your Linux System, Filesystem & Storage'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048702
|
||||
---
|
||||
|
||||
## Managing your Linux System, Filesystem & Storage
|
||||
|
||||
So far we have had a brief overview of Linux and DevOps and then we got our lab environment set up using Vagrant [(Day 14)](day14.md), we then touched on a small portion of commands that will be in your daily toolkit when in the terminal and getting things done [(Day 15)](day15.md).
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Text Editors - nano vs vim - Day 17'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Text Editors - nano vs vim
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048703
|
||||
---
|
||||
|
||||
## Text Editors - nano vs vim
|
||||
|
||||
The majority of your Linux systems are going to be servers and these are not going to have a GUI. I also mentioned in the last session that Linux is mostly made up of configuration files, to make changes you are going to need to be able to edit those configuration files to change anything on the system.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - SSH & Web Server - Day 18'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - SSH & Web Server
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048733
|
||||
---
|
||||
|
||||
## SSH & Web Server
|
||||
|
||||
As we have mentioned throughout you are going to most likely be managing lots of remote Linux servers, because of this, you will need to make sure that your connectivity to these remote servers is secure. In this section, we want to cover some of the basics of SSH that everyone should know that will help you with that secure tunnel to your remote systems.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Automate tasks with bash scripts - Day 19'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Automate tasks with bash scripts
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048774
|
||||
---
|
||||
|
||||
## Automate tasks with bash scripts
|
||||
|
||||
The shell that we are going to use today is the bash but we will cover another shell tomorrow when we dive into ZSH.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Dev workstation setup - All the pretty things - Day 20'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Dev workstation setup - All the pretty things
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048734
|
||||
---
|
||||
|
||||
## Dev workstation setup - All the pretty things
|
||||
|
||||
Not to be confused with us setting Linux servers up this way but I wanted to also show off the choice and flexibility that we have within the Linux desktop.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: DevOps and Networking - Day 21'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture DevOps and Networking
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048761
|
||||
---
|
||||
|
||||
## The Big Picture: DevOps and Networking
|
||||
|
||||
As with all sections, I am using open and free training materials and a lot of the content can be attributed to others. In the case of the networking section a large majority of the content shown is from [Practical Networking](https://www.practicalnetworking.net/)'s free [Networking Fundamentals series](https://www.youtube.com/playlist?list=PLIFyRwBY_4bRLmKfP1KnZA6rZbRHtxmXi). It is mentioned in the resources as well as a link but it's appropriate to highlight this as from a community point of view, I have leveraged this course to help myself understand more about particular areas of technologies. This repository is a repository for my note taking and enabling the community to hopefully benefit from this and the listed resources.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The OSI Model - The 7 Layers - Day 22'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The OSI Model - The 7 Layers
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049037
|
||||
---
|
||||
|
||||
The content below comes mostly from Practical Networking's [Networking Fundamentals series](https://www.youtube.com/playlist?list=PLIFyRwBY_4bRLmKfP1KnZA6rZbRHtxmXi). If you prefer this content in video form, check out these two videos:
|
||||
|
||||
* [The OSI Model: A Practical Perspective - Layers 1 / 2 / 3](https://www.youtube.com/watch?v=LkolbURrtTs&list=PLIFyRwBY_4bRLmKfP1KnZA6rZbRHtxmXi&index=3)
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Network Protocols - Day 23'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Network Protocols
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048704
|
||||
---
|
||||
|
||||
The content below comes mostly from Practical Networking's [Networking Fundamentals series](https://www.youtube.com/playlist?list=PLIFyRwBY_4bRLmKfP1KnZA6rZbRHtxmXi). If you prefer this content in video form, check out this video:
|
||||
|
||||
* [Network Protocols - ARP, FTP, SMTP, HTTP, SSL, TLS, HTTPS, DNS, DHCP](https://www.youtube.com/watch?v=E5bSumTAHZE&list=PLIFyRwBY_4bRLmKfP1KnZA6rZbRHtxmXi&index=12)
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Network Automation - Day 24'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Network Automation
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048805
|
||||
---
|
||||
|
||||
## Network Automation
|
||||
|
||||
### Basics of network automation
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Python for Network Automation - Day 25'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Python for Network Automation
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049038
|
||||
---
|
||||
|
||||
## Python for Network Automation
|
||||
|
||||
Python is the standard language used for automated network operations.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Building our Lab - Day 26'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Building our Lab
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048762
|
||||
---
|
||||
|
||||
## Building our Lab
|
||||
|
||||
We are going to continue our setup of our emulated network using EVE-NG and then hopefully get some devices deployed and start thinking about how we can automate the configuration of these devices. On [Day 25](day25.md) we covered the installation of EVE-NG onto our machine using VMware Workstation.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Getting Hands-On with Python & Network - Day 27'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Getting Hands-On with Python & Network
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048735
|
||||
---
|
||||
|
||||
## Getting Hands-On with Python & Network
|
||||
|
||||
In this final section of Networking fundamentals, we are going to cover some automation tasks and tools with our lab environment created on [Day 26](day26.md)
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: DevOps & The Cloud - Day 28'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture DevOps & The Cloud
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048737
|
||||
---
|
||||
|
||||
## The Big Picture: DevOps & The Cloud
|
||||
|
||||
When it comes to cloud computing and what is offered, it goes very nicely with the DevOps ethos and processes. We can think of Cloud Computing as bringing the technology and services whilst DevOps as we have mentioned many times before is about the process and process improvement.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Fundamentals - Day 29'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Fundamentals
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048705
|
||||
---
|
||||
|
||||
## Microsoft Azure Fundamentals
|
||||
|
||||
Before we get going, the winner of the Twitter poll was Microsoft Azure, hence the title of the page. It was close and also quite interesting to see the results come in over the 24 hours.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Security Models - Day 30'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Security Models
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049039
|
||||
---
|
||||
|
||||
## Microsoft Azure Security Models
|
||||
|
||||
Following on from the Microsoft Azure Overview, we are going to start with Azure Security and see where this can help in our day to day. For the most part, I have found the built-in roles have been sufficient but knowing that we can create and work with many different areas of authentication and configurations. I have found Microsoft Azure to be quite advanced with its Active Directory background compared to other public clouds.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Compute Models - Day 31'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Compute Models
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049040
|
||||
---
|
||||
|
||||
## Microsoft Azure Compute Models
|
||||
|
||||
Following on from covering the basics around security models within Microsoft Azure yesterday today we are going to look into the various compute services available to us in Azure.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Storage Models - Day 32'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Storage Models
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048775
|
||||
---
|
||||
|
||||
## Microsoft Azure Storage Models
|
||||
|
||||
### Storage Services
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Networking Models + Azure Management - Day 33'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Networking Models + Azure Management
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048706
|
||||
---
|
||||
|
||||
## Microsoft Azure Networking Models + Azure Management
|
||||
|
||||
As if today marks the anniversary of Microsoft Azure and its 12th Birthday! (1st February 2022) Anyway, we are going to cover the networking models within Microsoft Azure and some of the management options for Azure. So far we have only used the Azure portal but we have mentioned other areas that can be used to drive and create our resources within the platform.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Microsoft Azure Hands-On Scenarios - Day 34'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Microsoft Azure Hands-On Scenarios
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048763
|
||||
---
|
||||
|
||||
## Microsoft Azure Hands-On Scenarios
|
||||
|
||||
The last 6 days have been focused on Microsoft Azure and the public cloud in general, a lot of this foundation had to contain a lot of theory to understand the building blocks of Azure but also this will nicely translate to the other major cloud providers as well.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Git - Version Control - Day 35'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Git - Version Control
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049041
|
||||
---
|
||||
|
||||
## The Big Picture: Git - Version Control
|
||||
|
||||
Before we get into git, we need to understand what version control is and why? In this opener for Git, we will take a look at what version control is, and the basics of git.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Installing & Configuring Git - Day 36'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Installing & Configuring Git
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048738
|
||||
---
|
||||
|
||||
## Installing & Configuring Git
|
||||
|
||||
Git is an open source, cross-platform tool for version control. If you are like me, using Ubuntu or most Linux environments you might find that you already have git installed but we are going to run through the install and configuration.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Gitting to know Git - Day 37'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Gitting to know Git
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048707
|
||||
---
|
||||
|
||||
## Gitting to know Git
|
||||
|
||||
Apologies for the terrible puns in the title and throughout. I am surely not the first person to turn Git into a dad joke!
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Staging & Changing - Day 38'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Staging & Changing
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049042
|
||||
---
|
||||
|
||||
## Staging & Changing
|
||||
|
||||
We have already covered some of the basics but putting things into a walkthrough makes it better for me to learn and understand how and why we are doing it this way. Before we get into any git-based services such as GitHub, git has its powers that we can take advantage of on our local workstation.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Viewing, unstaging, discarding & restoring - Day 39'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Viewing, unstaging, discarding & restoring'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048827
|
||||
---
|
||||
|
||||
## Viewing, unstaging, discarding & restoring
|
||||
|
||||
Continuing from where we finished yesterday around some of the commands that we have with git and how to leverage git with your projects. Remember we have not touched GitHub or any other git-based services yet this is all to help you keep control of your projects locally at the moment, but they will all become useful when we start to integrate into those tools.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Social Network for code - Day 40'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Social Network for code
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049044
|
||||
---
|
||||
|
||||
## Social Network for code
|
||||
|
||||
Exploring GitHub | GitLab | BitBucket
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Containers - Day 42'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Containers
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048826
|
||||
---
|
||||
|
||||
## The Big Picture: Containers
|
||||
|
||||
We are now starting the next section and this section is going to be focused on containers in particular we are going to be looking into Docker getting into some of the key areas to understand more about Containers.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - What is Docker & Getting installed - Day 43'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - What is Docker & Getting installed
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048739
|
||||
---
|
||||
|
||||
## What is Docker & Getting installed
|
||||
|
||||
In the previous post, I mentioned Docker at least once and that is because Docker is innovative in making containers popular even though they have been around for such a long time.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Docker Images & Hands-On with Docker Desktop - Day 44'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Docker Images & Hands-On with Docker Desktop
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048708
|
||||
---
|
||||
|
||||
## Docker Images & Hands-On with Docker Desktop
|
||||
|
||||
We now have Docker Desktop installed on our system. (If you are running Linux then you still have options but no GUI but docker does work on Linux.)[Install Docker Engine on Ubuntu](https://docs.docker.com/engine/install/ubuntu/) (Other distributions also available.)
|
||||
|
@ -1,12 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The anatomy of a Docker Image - Day 45'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The anatomy of a Docker Image
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048777
|
||||
---
|
||||
## The anatomy of a Docker Image
|
||||
|
||||
In the last session, we covered some basics of how we can use Docker Desktop combined with DockerHub to deploy and run some verified images. A recap on what an image is, you won't forget things if I keep mentioning them.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Docker Compose - Day 46'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Docker Compose
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048740
|
||||
---
|
||||
|
||||
## Docker Compose
|
||||
|
||||
The ability to run one container could be great if you have a self-contained image that has everything you need for your single use case, where things get interesting is when you are looking to build multiple applications between different container images. For example, if I had a website front end but required a backend database I could put everything in one container but better and more efficient would be to have its container for the database.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Docker Networking & Security - Day 47'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Docker Networking & Security
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049078
|
||||
---
|
||||
|
||||
## Docker Networking & Security
|
||||
|
||||
During this container session so far we have made things happen but we have not looked at how things have worked behind the scenes either from a networking point of view also we have not touched on security, that is the plan for this session.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Alternatives to Docker - Day 48'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Alternatives to Docker
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048807
|
||||
---
|
||||
|
||||
## Alternatives to Docker
|
||||
|
||||
I did say at the very beginning of this section that we were going to be using Docker, simply because resource wise there is so much and the community is very big, but also this was really where the indents to making containers popular came from. I would encourage you to go and watch some of the history around Docker and how it came to be, I found it very useful.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Kubernetes - Day 49'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Kubernetes
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049049
|
||||
---
|
||||
|
||||
## The Big Picture: Kubernetes
|
||||
|
||||
In the last section we covered Containers, Containers fall short when it comes to scale and orchestration alone. The best we can do is use docker-compose to bring up multiple containers together. When it comes to Kubernetes which is a Container Orchestrator, this gives us the ability to scale up and down in an automated way or based on a load of your applications and services.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Choosing your Kubernetes platform - Day 50'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Choosing your Kubernetes platform
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049046
|
||||
---
|
||||
|
||||
## Choosing your Kubernetes platform
|
||||
|
||||
I wanted to use this session to break down some of the platforms or maybe distributions is a better term to use here, one thing that has been a challenge in the Kubernetes world is removing complexity.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Deploying your first Kubernetes Cluster - Day 51'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Deploying your first Kubernetes Cluster
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048778
|
||||
---
|
||||
|
||||
## Deploying your first Kubernetes Cluster
|
||||
|
||||
In this post we are going to get a Kubernetes cluster up and running on our local machine using minikube, this will give us a baseline Kubernetes cluster for the rest of the Kubernetes section, although we will look at deploying a Kubernetes cluster also in VirtualBox later on. The reason for choosing this method vs spinning a managed Kubernetes cluster up in the public cloud is that this is going to cost money even with the free tier, I shared some blogs though if you would like to spin up that environment in the previous section [Day 50](day50.md).
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Setting up a multinode Kubernetes Cluster - Day 52'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Setting up a multinode Kubernetes Cluster
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049050
|
||||
---
|
||||
|
||||
## Setting up a multinode Kubernetes Cluster
|
||||
|
||||
I wanted this title to be "Setting up a multinode Kubernetes cluster with Vagrant" but thought it might be a little too long!
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Rancher Overview - Hands On - Day 53'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Rancher Overview - Hands On
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048742
|
||||
---
|
||||
|
||||
## Rancher Overview - Hands On
|
||||
|
||||
In this section we are going to take a look at Rancher, so far everything we have done has been in the cli and using kubectl but we have a few good UIs and multi-cluster management tools to give our operations teams good visibility into our cluster management.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Kubernetes Application Deployment - Day 54'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Kubernetes Application Deployment
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048764
|
||||
---
|
||||
|
||||
## Kubernetes Application Deployment
|
||||
|
||||
Now we finally get to deploying some applications into our clusters, some would say this is the reason Kubernetes exists, for Application delivery.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - State and Ingress in Kubernetes - Day 55'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - State and Ingress in Kubernetes
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048779
|
||||
---
|
||||
|
||||
## State and Ingress in Kubernetes
|
||||
|
||||
In this closing section of Kubernetes, we are going to take a look at State and ingress.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: IaC - Day 56'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture IaC
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048709
|
||||
---
|
||||
|
||||
## The Big Picture: IaC
|
||||
|
||||
Humans make mistakes! Automation is the way to go!
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - An intro to Terraform - Day 57'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - An intro to Terraform
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048710
|
||||
---
|
||||
|
||||
## An intro to Terraform
|
||||
|
||||
"Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently"
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - HashiCorp Configuration Language (HCL) - Day 58'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - HashiCorp Configuration Language (HCL)
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048741
|
||||
---
|
||||
|
||||
## HashiCorp Configuration Language (HCL)
|
||||
|
||||
Before we start making stuff with Terraform we have to dive a little into HashiCorp Configuration Language (HCL). So far during our challenge, we have looked at a few different scripting and programming languages and here is another one. We touched on the [Go programming language](day07.md) then [bash scripts](day19.md) we even touched on a little python when it came to [network automation](day27.md)
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Create a VM with Terraform & Variables - Day 59'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Create a VM with Terraform & Variables
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049051
|
||||
---
|
||||
|
||||
## Create a VM with Terraform & Variables
|
||||
|
||||
In this session, we are going to be creating a VM or two VMs using terraform inside VirtualBox. This is not normal, VirtualBox is a workstation virtualisation option and this would not be a use case for Terraform but I am currently 36,000ft in the air and as much as I have deployed public cloud resources this high in the clouds it is much faster to do this locally on my laptop.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Docker Containers, Provisioners & Modules - Day 60'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Docker Containers, Provisioners & Modules'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049052
|
||||
---
|
||||
|
||||
## Docker Containers, Provisioners & Modules
|
||||
|
||||
On [Day 59](day59.md) we provisioned a virtual machine using Terraform to our local FREE VirtualBox environment. In this section, we are going to deploy a Docker container with some configuration to our local Docker environment.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Kubernetes & Multiple Environments - Day 61'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Kubernetes & Multiple Environments
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048743
|
||||
---
|
||||
|
||||
## Kubernetes & Multiple Environments
|
||||
|
||||
So far during this section on Infrastructure as code, we have looked at deploying virtual machines albeit to VirtualBox but the premise is the same really as we define in code what we want our virtual machine to look like and then we deploy. The same for Docker containers and in this session, we are going to take a look at how Terraform can be used to interact with resources supported by Kubernetes.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Testing, Tools & Alternatives - Day 62'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Testing, Tools & Alternatives'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049053
|
||||
---
|
||||
|
||||
## Testing, Tools & Alternatives
|
||||
|
||||
As we close out this section on Infrastructure as Code we must mention testing our code, the various tools available and then some of the alternatives to Terraform to achieve this. As I said at the start of the section my focus was on Terraform because it is firstly free and open source, secondly, it is cross-platform and agnostic to environments. But there are also alternatives out there that should be considered but the overall goal is to make people aware that this is the way to deploy your infrastructure.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Configuration Management - Day 63'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Configuration Management
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048711
|
||||
---
|
||||
|
||||
## The Big Picture: Configuration Management
|
||||
|
||||
Coming straight off the back of the section covering Infrastructure as Code, there is likely going to be some crossover as we talk about Configuration Management or Application Configuration Management.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Ansible: Getting Started - Day 64'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Ansible: Getting Started'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048765
|
||||
---
|
||||
|
||||
## Ansible: Getting Started
|
||||
|
||||
We covered a little about what Ansible is in the [big picture session yesterday](day63.md) But we are going to get started with a little more information on top of that here. Firstly Ansible comes from RedHat. Secondly, it is agentless, connects via SSH and runs commands. Thirdly it is cross-platform (Linux & macOS, WSL2) and open-source (there is also a paid-for enterprise option) Ansible pushes configuration vs other models.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Ansible Playbooks - Day 65'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Ansible Playbooks
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049054
|
||||
---
|
||||
|
||||
### Ansible Playbooks
|
||||
|
||||
In this section we will take a look at the main reason that I can see at least for Ansible, I mean it is great to take a single command and hit many different servers to perform simple commands such as rebooting a long list of servers and saving the hassle of having to connect to each one individually.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Ansible Playbooks Continued... - Day 66'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Ansible Playbooks Continued...
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048712
|
||||
---
|
||||
|
||||
## Ansible Playbooks (Continued)
|
||||
|
||||
In our last section, we started with creating our small lab using a Vagrantfile to deploy 4 machines and we used the Linux machine we created in that section as our ansible control system.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Using Roles & Deploying a Loadbalancer - Day 67'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Using Roles & Deploying a Loadbalancer'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048713
|
||||
---
|
||||
|
||||
## Using Roles & Deploying a Loadbalancer
|
||||
|
||||
In the last session, we covered roles and used the `ansible-galaxy` command to help create our folder structures for some roles that we are going to use. We finished up with a much tidier working repository for our configuration code as everything is hidden away in our role folders.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Tags, Variables, Inventory & Database Server config - Day 68'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - Tags, Variables, Inventory & Database Server config'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048780
|
||||
---
|
||||
|
||||
## Tags, Variables, Inventory & Database Server config
|
||||
|
||||
### Tags
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - All other things Ansible - Automation Controller (Tower), AWX, Vault - Day 69'
|
||||
published: false
|
||||
description: '90DaysOfDevOps - All other things Ansible - Automation Controller (Tower), AWX, Vault'
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048714
|
||||
---
|
||||
|
||||
## All other things Ansible - Automation Controller (Tower), AWX, Vault
|
||||
|
||||
Rounding out the section on Configuration Management I wanted to have a look into the other areas that you might come across when dealing with Ansible.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: CI/CD Pipelines - Day 70'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture CI/CD Pipelines
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048836
|
||||
---
|
||||
|
||||
## The Big Picture: CI/CD Pipelines
|
||||
|
||||
A CI/CD (Continuous Integration/Continuous Deployment) Pipeline implementation is the backbone of the modern DevOps environment.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - What is Jenkins? - Day 71'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - What is Jenkins?
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048745
|
||||
---
|
||||
|
||||
## What is Jenkins?
|
||||
|
||||
Jenkins is a continuous integration tool that allows continuous development, testing and deployment of newly created code.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Getting hands-on with Jenkins - Day 72'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Getting hands-on with Jenkins
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048829
|
||||
---
|
||||
|
||||
## Getting hands-on with Jenkins
|
||||
|
||||
The plan today is to get some hands-on with Jenkins and make something happen as part of our CI pipeline, looking at some example code bases that we can use.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Building a Jenkins Pipeline - Day 73'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Building a Jenkins Pipeline
|
||||
tags: 'DevOps, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048766
|
||||
---
|
||||
|
||||
## Building a Jenkins Pipeline
|
||||
|
||||
In the last section, we got Jenkins deployed to our Minikube cluster and we set up a very basic Jenkins Pipeline, that didn't do much at all other than echo out the stages of a Pipeline.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Hello World - Jenkinsfile App Pipeline - Day 74'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Hello World - Jenkinsfile App Pipeline
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048744
|
||||
---
|
||||
|
||||
## Hello World - Jenkinsfile App Pipeline
|
||||
|
||||
In the last section, we built a simple Pipeline in Jenkins that would push our docker image from our dockerfile in a public GitHub repository to our private Dockerhub repository.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - GitHub Actions Overview - Day 75'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - GitHub Actions Overview
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049070
|
||||
---
|
||||
|
||||
## GitHub Actions Overview
|
||||
|
||||
In this section, I wanted to move on and take a look at maybe a different approach to what we just spent time on. GitHub Actions is what we will focus on in this session.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - ArgoCD Overview - Day 76'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - ArgoCD Overview
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048809
|
||||
---
|
||||
|
||||
## ArgoCD Overview
|
||||
|
||||
“Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes”
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Monitoring - Day 77'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Monitoring
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048715
|
||||
---
|
||||
|
||||
## The Big Picture: Monitoring
|
||||
|
||||
In this section we are going to talk about monitoring, what is it and why do we need it?
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Hands-On Monitoring Tools - Day 78'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Hands-On Monitoring Tools
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049056
|
||||
---
|
||||
|
||||
## Hands-On Monitoring Tools
|
||||
|
||||
In the last session, I spoke about the big picture of monitoring and I took a look into Nagios, there were two reasons for doing this. The first was this is a piece of software I have heard a lot of over the years so wanted to know a little more about its capabilities.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Log Management - Day 79'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Log Management
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049057
|
||||
---
|
||||
|
||||
## The Big Picture: Log Management
|
||||
|
||||
A continuation of the infrastructure monitoring challenges and solutions, log management is another puzzle piece to the overall observability jigsaw.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - ELK Stack - Day 80'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - ELK Stack
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048746
|
||||
---
|
||||
|
||||
## ELK Stack
|
||||
|
||||
In this session, we are going to get a little more hands-on with some of the options we have mentioned.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Fluentd & FluentBit - Day 81'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Fluentd & FluentBit
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048716
|
||||
---
|
||||
|
||||
## Fluentd & FluentBit
|
||||
|
||||
Another data collector that I wanted to explore as part of this observability section was [Fluentd](https://docs.fluentd.org/). An Open-Source unified logging layer.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - EFK Stack - Day 82'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - EFK Stack
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049059
|
||||
---
|
||||
|
||||
### EFK Stack
|
||||
|
||||
In the previous section, we spoke about ELK Stack, which uses Logstash as the log collector in the stack, in the EFK Stack we are swapping that out for FluentD or FluentBit.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Data Visualisation - Grafana - Day 83'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Data Visualisation - Grafana
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048767
|
||||
---
|
||||
|
||||
## Data Visualisation - Grafana
|
||||
|
||||
We saw a lot of Kibana over this section around Observability. But we have to also take some time to cover Grafana. But also they are not the same and they are not completely competing against each other.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - The Big Picture: Data Management - Day 84'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - The Big Picture Data Management
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048747
|
||||
---
|
||||
|
||||
## The Big Picture: Data Management
|
||||
|
||||
![](Images/Day84_Data1.png)
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Data Services - Day 85'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Data Services
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048781
|
||||
---
|
||||
|
||||
## Data Services
|
||||
|
||||
Databases are going to be the most common data service that we come across in our environments. I wanted to take this session to explore some of those different types of Databases and some of the use cases they each have. Some we have used and seen throughout the challenge.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Backup all the platforms - Day 86'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Backup all the platforms
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1049058
|
||||
---
|
||||
|
||||
## Backup all the platforms
|
||||
|
||||
During this whole challenge, we discussed many different platforms and environments. One thing all of those have in common is the fact they all need some level of data protection!
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Hands-On Backup & Recovery - Day 87'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Hands-On Backup & Recovery
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048717
|
||||
---
|
||||
|
||||
## Hands-On Backup & Recovery
|
||||
|
||||
In the last session, we touched on [Kopia](https://kopia.io/) an Open-Source backup tool that we used to get some important data off to a local NAS and off to some cloud-based object storage.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Application Focused Backup - Day 88'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Application Focused Backups
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048749
|
||||
---
|
||||
|
||||
## Application-Focused Backups
|
||||
|
||||
We have already spent some time talking about data services or data-intensive applications such as databases on [Day 85](day85.md). For these data services, we have to consider how we manage consistency, especially when it comes to application consistency.
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Disaster Recovery - Day 89'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Disaster Recovery
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048718
|
||||
---
|
||||
|
||||
## Disaster Recovery
|
||||
|
||||
We have mentioned already how different failure scenarios will warrant different recovery requirements. When it comes to Fire, Flood and Blood scenarios we can consider these mostly disaster situations where we might need our workloads up and running in a completely different location as fast as possible or at least with near-zero recovery time objectives (RTO).
|
||||
|
@ -1,13 +1,3 @@
|
||||
---
|
||||
title: '#90DaysOfDevOps - Data & Application Mobility - Day 90'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Data & Application Mobility
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048748
|
||||
---
|
||||
|
||||
## Data & Application Mobility
|
||||
|
||||
Day 90 of the #90DaysOfDevOps Challenge! In this final session, I am going to cover the mobility of our data and applications. I am specifically going to focus on Kubernetes but the requirement across platforms and between platforms is something that is an ever-growing requirement and is seen in the field.
|
||||
|
Loading…
Reference in New Issue
Block a user