SlideShare a Scribd company logo
1 of 27
Download to read offline
DevOps Foundations
Amr Fawzy
Sr. DevOps Engineer at Incorta
Outlines
● Approaches of S/W development process
○ Waterfall Model
○ Agile Model
● How far DevOps relates to Agile?
● What is DevOps?
● DevOps Culture
● DevOps Methodologies
○ People over process over tools
○ Lean Management
○ Infrastructure as code - IAC
■ IAC Practices : Configuration Management
■ IAC Practices : Orchestrated Deployment
■ IAC Toolchain
● Infrastructure Automation tools
● Systems and applications Configuration Management tools
● Orchestration Tools for container-based environments
○ Continuous Integration / Continuous Deployment
■ CI/CD definitions
■ CI/CD Key phases
Approaches of S/W development process
1. Waterfall Model
Approaches of S/W development process cont.
Waterfall cont.
It is called Waterfall and because it moves software down from stage to stage.
● First you get all the requirements completely done and documented
● Then process moved to development, who codes the requirements.
● Then process moved to QA who tests
● then process moved to whoever does release engineering
● then process moved to operations to deploy and maintain the environment.
Approaches of S/W development process cont.
2. Agile Model
Approaches of S/W development process cont.
Agile cont.
In Agile development the process is deliberately more iterative.
Agile leverage the collaboration between both workers and customers around frequent
deliverables of working software. This can quickly generate solutions that better address
customer needs with fewer quality problems.
Agile manifesto didn’t mention anything about the operation process!
Agile talks about working software but it wasn't customary to bring system administrators into
the product team. - Also the manifesto doesn't mention anything about the last part of the
software delivery pipeline, where infrastructure is built and the apps are deployed and
maintained in production.
How far DevOps relates to Agile?
DevOps should be implemented as an extension of Agile since Dev Ops has such strong
roots in Agile.
DevOps manifesto capture the heart of the Agile manifesto, Replace software with systems
and add operations to the list of stakeholders.
What is DevOps?
● The practice of Operations and Development engineers collaborating together in the
entire service lifecycle, from design through development process to production
deployment and support to deliver a better quality software at high speed to
users/clients.
● DevOps incorporate many ideas from agile S/W methodologies.
“DevOps is the application of agile methodology to system administration”
- Thomas Limoncelli | Site Reliability Engineer at stackoverflow
DevOps Culture
DevOps replaces the days where we have a team that writes the code, another team to test
it yet another team to deploy it and another team to operate it.
DevOps is characterized by operation staff making use of many of the same techniques as
developers for their systems to work.
In DevOps, system engineers works just like a development workflow, all the assets, all the
assets are checked in a source control and have tests associated with them.
DevOps Methodologies
In Agile, there are defined methodologies like SCRUM and Extreme Programming that
provide a playbook for implementing Agile in an organization.
In DevOps, there aren't as many that are well established, but some common methodologies
have emerged.
These methodologies can help in starting the process of implementing DevOps
DevOps Methodologies cont.
● People over process over tools
In short, it recommends identifying who's responsible for a job function first. Then
defining the process that needs to happen around them. And then selecting and
implementing the tool to perform that process.
DevOps Methodologies cont.
● Lean Management
○ Work in small patches
○ Work in progress limit
○ Feedback loops
○ Visualization
It's been shown in studies that lean management practices led to both better organizational
outputs, including system throughput and stability and less burn out and greater employee
satisfaction at the personal level.
DevOps Methodologies cont.
● Infrastructure as code
IAC is a completely programmatic approach to infrastructure that allows us to leverage
development practices for our systems.
○ Systems can and should be treated like code.
○ System’s specifications should be checked into source control.
○ Review system’s codes and Run unit, integration tests as part of CI pipeline, deploy them.
○ Systems have to be managed (create, update, configure and delete systems) programatelly.
Tools exist to configure servers from the bare metal up completely automatically, and with
virtual servers, cloud servers or containers, everything can be created, changed and
destroyed programmatically.
DevOps Methodologies cont.
DevOps Methodologies cont.
Benefits of IAC:
● It brings confidence that your Dev, staging and production environments are identical
because they were created from the same specification.
● Get away from setting anything up manually.
● Define your infrastructure in a model or drive it via code that exercises a rest API.
● Now we can put it in source control, run it through a CI pipeline to test it and then
deploy it.
IAC Practices : Configuration Management
Configuration Management use cases:
● Provisioning: the process of making a server ready for operation. Including hardware,
OS,system services, and network connectivity.
● Deployment: the process of automatically deploying and upgrading applications on a
server.
● Orchestration: the process of performing coordinated operations across multiple
systems.
IAC Practices : Orchestrated Deployment
Orchestrated deployment techniques
● Canary deployment
○ Where you upgrade one server in a fleet, and see how it works before upgrading the rest.
IAC Practices : Orchestrated deployment cont.
● Blue Green deployment
○ Where you have two identical environments. One of which is production, and one of which is
staging. New code is put under the staging environments. And then the two environments are
swapped.
IAC Practices : Configuration management cont.
● Immutable deployments
○ Where you never upgrade software in production at all. You discard old virtual systems and
put new ones in place.
IAC Toolchain
● IAC Tools:
○ Infrastructure Automation tools
■ AWS Cloudformation
■ Azure Resource Manager Template
■ Hashicorp Terraform
■ Ubuntu JuJu
○ Systems and applications Configuration Management tools
■ Chef
■ Puppet
■ Ansible
■ Salt
■ CFEngine
■ Packer (image management)
IAC Toolchain cont.
● IAC Tools cont.
For container-based infrastructure and environment, Containers generally don't
use the regular CM tools like Chef or Puppet as their configuration is generally
handled with a simple text file called the Docker file.
● Orchestration Tools for container-based environments
○ Kubernetes
○ Docker Swarm
○ Apache Mesos
These tools allows the running of container workloads across multiple hosts, they
handle the deployment, orchestration and scaling.
DevOps Methodologies cont.
● Continuous Integration / Continuous Deployment
○ It's the practice of coding, testing, and releasing software frequently, in really small batches so
that you can improve the overall quality and velocity.
○ Every code commit is build automatically.
○ Unit tests are run, and the application is deployed into a production like environment.
○ Automated acceptance tests are run, and the change either passes or fails testing minutes
after it's checked in.
DevOps Methodologies CI/CD cont.
DevOps Methodologies cont. CI/CD definitions
● Continuous Integration
○ is the practice of automatically building and unit testing the entire application frequently. Ideally
on every source code check in.
● Continuous Delivery
○ is the additional practice of deploying every change to a production like environment, and
performing automated integration and acceptance testing.
● Continuous Deployment
○ extends the Continuous Delivery, to where every change goes through full automated testing
That it's deployed automatically to production.
DevOps Methodologies cont. CI/CD definitions
DevOps Methodologies cont. CI/CD Pipeline
The idea of a pipeline is a series of phases each backed by a specific tool.
● The CI/CD Key phases
a. Version Control (GitHub, GitLab, Bitbucket,.. )
b. CI System (Jenkins, GitLabCI, Atlassian Bamboo,.. )
c. Build (language specific tools like: Make,Rake,Maven,.. )
d. Test (Cucumber, Apache Bench, Jmeter,.. )
e. Artifact Repository (Artifactory, Nexus, Docker Hub, AWS S3,.. )
f. Deployment (CM Tools, Rundeck,.. )
DevOps Foundations

More Related Content

What's hot

Everything you need to know about Docker
Everything you need to know about DockerEverything you need to know about Docker
Everything you need to know about DockerAlican Akkuş
 
Container Orchestration with Docker Swarm and Kubernetes
Container Orchestration with Docker Swarm and KubernetesContainer Orchestration with Docker Swarm and Kubernetes
Container Orchestration with Docker Swarm and KubernetesWill Hall
 
Data Loss and Duplication in Kafka
Data Loss and Duplication in KafkaData Loss and Duplication in Kafka
Data Loss and Duplication in KafkaJayesh Thakrar
 
DockerCon2017 - Skypilot
DockerCon2017 - SkypilotDockerCon2017 - Skypilot
DockerCon2017 - SkypilotThomas Shaw
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707Clarence Ho
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresDocker, Inc.
 
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)William Yeh
 
Commit to excellence - Java in containers
Commit to excellence - Java in containersCommit to excellence - Java in containers
Commit to excellence - Java in containersRed Hat Developers
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overviewrajdeep
 
Everything You Thought You Already Knew About Orchestration
Everything You Thought You Already Knew About OrchestrationEverything You Thought You Already Knew About Orchestration
Everything You Thought You Already Knew About OrchestrationLaura Frank Tacho
 
Docker SF Meetup January 2016
Docker SF Meetup January 2016Docker SF Meetup January 2016
Docker SF Meetup January 2016Patrick Chanezon
 
Docker on AWS - the Right Way
Docker on AWS - the Right WayDocker on AWS - the Right Way
Docker on AWS - the Right WayAllCloud
 
Monitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesMonitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesAjeet Singh Raina
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Corporation
 
Docker Datacenter Overview and Production Setup Slides
Docker Datacenter Overview and Production Setup SlidesDocker Datacenter Overview and Production Setup Slides
Docker Datacenter Overview and Production Setup SlidesDocker, Inc.
 

What's hot (20)

Everything you need to know about Docker
Everything you need to know about DockerEverything you need to know about Docker
Everything you need to know about Docker
 
Container Orchestration with Docker Swarm and Kubernetes
Container Orchestration with Docker Swarm and KubernetesContainer Orchestration with Docker Swarm and Kubernetes
Container Orchestration with Docker Swarm and Kubernetes
 
Data Loss and Duplication in Kafka
Data Loss and Duplication in KafkaData Loss and Duplication in Kafka
Data Loss and Duplication in Kafka
 
Atomic CLI scan
Atomic CLI scanAtomic CLI scan
Atomic CLI scan
 
DockerCon2017 - Skypilot
DockerCon2017 - SkypilotDockerCon2017 - Skypilot
DockerCon2017 - Skypilot
 
Galera Cluster 3.0 Features
Galera Cluster 3.0 FeaturesGalera Cluster 3.0 Features
Galera Cluster 3.0 Features
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failures
 
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)
Docker 對傳統 DevOps 工具鏈的衝擊 (Docker's Impact on traditional DevOps toolchain)
 
Commit to excellence - Java in containers
Commit to excellence - Java in containersCommit to excellence - Java in containers
Commit to excellence - Java in containers
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overview
 
Everything You Thought You Already Knew About Orchestration
Everything You Thought You Already Knew About OrchestrationEverything You Thought You Already Knew About Orchestration
Everything You Thought You Already Knew About Orchestration
 
Docker SF Meetup January 2016
Docker SF Meetup January 2016Docker SF Meetup January 2016
Docker SF Meetup January 2016
 
Docker on AWS - the Right Way
Docker on AWS - the Right WayDocker on AWS - the Right Way
Docker on AWS - the Right Way
 
Introducing Galera 3.0
Introducing Galera 3.0Introducing Galera 3.0
Introducing Galera 3.0
 
Weblogic cluster
Weblogic clusterWeblogic cluster
Weblogic cluster
 
Monitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesMonitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & Microservices
 
Taking Full Advantage of Galera Multi Master Cluster
Taking Full Advantage of Galera Multi Master ClusterTaking Full Advantage of Galera Multi Master Cluster
Taking Full Advantage of Galera Multi Master Cluster
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly Available
 
Docker Datacenter Overview and Production Setup Slides
Docker Datacenter Overview and Production Setup SlidesDocker Datacenter Overview and Production Setup Slides
Docker Datacenter Overview and Production Setup Slides
 

Similar to DevOps Foundations

Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree	Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree AnikeyRoy
 
Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOpsMoataz Mahmoud
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021William Caban
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationKeith Pleas
 
DevOps_service.pptx
DevOps_service.pptxDevOps_service.pptx
DevOps_service.pptxphamvinhcntt
 
DevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumarDevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumaroGuild .
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a NutshellFibonalabs
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own wordsSUBHENDU KARMAKAR
 
26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptx26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptxPanos Fitsilis
 
The Road to DevOps V3
The Road to DevOps V3The Road to DevOps V3
The Road to DevOps V3Ahmed Misbah
 
GCP DevOps Training | GCP DevOps Online Training 16-10.pptx
GCP DevOps Training |  GCP DevOps Online Training 16-10.pptxGCP DevOps Training |  GCP DevOps Online Training 16-10.pptx
GCP DevOps Training | GCP DevOps Online Training 16-10.pptxTalluriRenuka
 
How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks Ulf Mattsson
 
DevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in HyderabadDevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in Hyderabadranjithvisualpath44
 
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationPatterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationChef
 
DevOps Engineering.pptx
DevOps Engineering.pptxDevOps Engineering.pptx
DevOps Engineering.pptxAbalBoot
 

Similar to DevOps Foundations (20)

Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree	Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
 
Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOps
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the Automation
 
DevOps_service.pptx
DevOps_service.pptxDevOps_service.pptx
DevOps_service.pptx
 
DevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumarDevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday Kumar
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a Nutshell
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptx26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptx
 
Introduction to devops
Introduction to devopsIntroduction to devops
Introduction to devops
 
Demystifying Devops - Uday kumar
Demystifying Devops - Uday kumarDemystifying Devops - Uday kumar
Demystifying Devops - Uday kumar
 
The Road to DevOps V3
The Road to DevOps V3The Road to DevOps V3
The Road to DevOps V3
 
GCP DevOps Training | GCP DevOps Online Training 16-10.pptx
GCP DevOps Training |  GCP DevOps Online Training 16-10.pptxGCP DevOps Training |  GCP DevOps Online Training 16-10.pptx
GCP DevOps Training | GCP DevOps Online Training 16-10.pptx
 
intro to DevOps
intro to DevOpsintro to DevOps
intro to DevOps
 
How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks
 
DevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in HyderabadDevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in Hyderabad
 
Dev ops
Dev opsDev ops
Dev ops
 
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationPatterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps Transformation
 
DevOps.pptx
DevOps.pptxDevOps.pptx
DevOps.pptx
 
DevOps Engineering.pptx
DevOps Engineering.pptxDevOps Engineering.pptx
DevOps Engineering.pptx
 

Recently uploaded

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Recently uploaded (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

DevOps Foundations

  • 1. DevOps Foundations Amr Fawzy Sr. DevOps Engineer at Incorta
  • 2. Outlines ● Approaches of S/W development process ○ Waterfall Model ○ Agile Model ● How far DevOps relates to Agile? ● What is DevOps? ● DevOps Culture ● DevOps Methodologies ○ People over process over tools ○ Lean Management ○ Infrastructure as code - IAC ■ IAC Practices : Configuration Management ■ IAC Practices : Orchestrated Deployment ■ IAC Toolchain ● Infrastructure Automation tools ● Systems and applications Configuration Management tools ● Orchestration Tools for container-based environments ○ Continuous Integration / Continuous Deployment ■ CI/CD definitions ■ CI/CD Key phases
  • 3. Approaches of S/W development process 1. Waterfall Model
  • 4. Approaches of S/W development process cont. Waterfall cont. It is called Waterfall and because it moves software down from stage to stage. ● First you get all the requirements completely done and documented ● Then process moved to development, who codes the requirements. ● Then process moved to QA who tests ● then process moved to whoever does release engineering ● then process moved to operations to deploy and maintain the environment.
  • 5. Approaches of S/W development process cont. 2. Agile Model
  • 6. Approaches of S/W development process cont. Agile cont. In Agile development the process is deliberately more iterative. Agile leverage the collaboration between both workers and customers around frequent deliverables of working software. This can quickly generate solutions that better address customer needs with fewer quality problems. Agile manifesto didn’t mention anything about the operation process! Agile talks about working software but it wasn't customary to bring system administrators into the product team. - Also the manifesto doesn't mention anything about the last part of the software delivery pipeline, where infrastructure is built and the apps are deployed and maintained in production.
  • 7. How far DevOps relates to Agile? DevOps should be implemented as an extension of Agile since Dev Ops has such strong roots in Agile. DevOps manifesto capture the heart of the Agile manifesto, Replace software with systems and add operations to the list of stakeholders.
  • 8. What is DevOps? ● The practice of Operations and Development engineers collaborating together in the entire service lifecycle, from design through development process to production deployment and support to deliver a better quality software at high speed to users/clients. ● DevOps incorporate many ideas from agile S/W methodologies. “DevOps is the application of agile methodology to system administration” - Thomas Limoncelli | Site Reliability Engineer at stackoverflow
  • 9. DevOps Culture DevOps replaces the days where we have a team that writes the code, another team to test it yet another team to deploy it and another team to operate it. DevOps is characterized by operation staff making use of many of the same techniques as developers for their systems to work. In DevOps, system engineers works just like a development workflow, all the assets, all the assets are checked in a source control and have tests associated with them.
  • 10. DevOps Methodologies In Agile, there are defined methodologies like SCRUM and Extreme Programming that provide a playbook for implementing Agile in an organization. In DevOps, there aren't as many that are well established, but some common methodologies have emerged. These methodologies can help in starting the process of implementing DevOps
  • 11. DevOps Methodologies cont. ● People over process over tools In short, it recommends identifying who's responsible for a job function first. Then defining the process that needs to happen around them. And then selecting and implementing the tool to perform that process.
  • 12. DevOps Methodologies cont. ● Lean Management ○ Work in small patches ○ Work in progress limit ○ Feedback loops ○ Visualization It's been shown in studies that lean management practices led to both better organizational outputs, including system throughput and stability and less burn out and greater employee satisfaction at the personal level.
  • 13. DevOps Methodologies cont. ● Infrastructure as code IAC is a completely programmatic approach to infrastructure that allows us to leverage development practices for our systems. ○ Systems can and should be treated like code. ○ System’s specifications should be checked into source control. ○ Review system’s codes and Run unit, integration tests as part of CI pipeline, deploy them. ○ Systems have to be managed (create, update, configure and delete systems) programatelly. Tools exist to configure servers from the bare metal up completely automatically, and with virtual servers, cloud servers or containers, everything can be created, changed and destroyed programmatically.
  • 15. DevOps Methodologies cont. Benefits of IAC: ● It brings confidence that your Dev, staging and production environments are identical because they were created from the same specification. ● Get away from setting anything up manually. ● Define your infrastructure in a model or drive it via code that exercises a rest API. ● Now we can put it in source control, run it through a CI pipeline to test it and then deploy it.
  • 16. IAC Practices : Configuration Management Configuration Management use cases: ● Provisioning: the process of making a server ready for operation. Including hardware, OS,system services, and network connectivity. ● Deployment: the process of automatically deploying and upgrading applications on a server. ● Orchestration: the process of performing coordinated operations across multiple systems.
  • 17. IAC Practices : Orchestrated Deployment Orchestrated deployment techniques ● Canary deployment ○ Where you upgrade one server in a fleet, and see how it works before upgrading the rest.
  • 18. IAC Practices : Orchestrated deployment cont. ● Blue Green deployment ○ Where you have two identical environments. One of which is production, and one of which is staging. New code is put under the staging environments. And then the two environments are swapped.
  • 19. IAC Practices : Configuration management cont. ● Immutable deployments ○ Where you never upgrade software in production at all. You discard old virtual systems and put new ones in place.
  • 20. IAC Toolchain ● IAC Tools: ○ Infrastructure Automation tools ■ AWS Cloudformation ■ Azure Resource Manager Template ■ Hashicorp Terraform ■ Ubuntu JuJu ○ Systems and applications Configuration Management tools ■ Chef ■ Puppet ■ Ansible ■ Salt ■ CFEngine ■ Packer (image management)
  • 21. IAC Toolchain cont. ● IAC Tools cont. For container-based infrastructure and environment, Containers generally don't use the regular CM tools like Chef or Puppet as their configuration is generally handled with a simple text file called the Docker file. ● Orchestration Tools for container-based environments ○ Kubernetes ○ Docker Swarm ○ Apache Mesos These tools allows the running of container workloads across multiple hosts, they handle the deployment, orchestration and scaling.
  • 22. DevOps Methodologies cont. ● Continuous Integration / Continuous Deployment ○ It's the practice of coding, testing, and releasing software frequently, in really small batches so that you can improve the overall quality and velocity. ○ Every code commit is build automatically. ○ Unit tests are run, and the application is deployed into a production like environment. ○ Automated acceptance tests are run, and the change either passes or fails testing minutes after it's checked in.
  • 24. DevOps Methodologies cont. CI/CD definitions ● Continuous Integration ○ is the practice of automatically building and unit testing the entire application frequently. Ideally on every source code check in. ● Continuous Delivery ○ is the additional practice of deploying every change to a production like environment, and performing automated integration and acceptance testing. ● Continuous Deployment ○ extends the Continuous Delivery, to where every change goes through full automated testing That it's deployed automatically to production.
  • 25. DevOps Methodologies cont. CI/CD definitions
  • 26. DevOps Methodologies cont. CI/CD Pipeline The idea of a pipeline is a series of phases each backed by a specific tool. ● The CI/CD Key phases a. Version Control (GitHub, GitLab, Bitbucket,.. ) b. CI System (Jenkins, GitLabCI, Atlassian Bamboo,.. ) c. Build (language specific tools like: Make,Rake,Maven,.. ) d. Test (Cucumber, Apache Bench, Jmeter,.. ) e. Artifact Repository (Artifactory, Nexus, Docker Hub, AWS S3,.. ) f. Deployment (CM Tools, Rundeck,.. )