Sunday, October 9, 2022

DevOps Foundation

    

 Fundamentals of DevOps

These are the fundamentals of DevOps as is,
  1. Code
  2. Test
  3. Deploy
  4. Operation
Implementing of DevOps
  1. Core Values
  2. Core Ideas
  3. Methods
  4. Practice
  5. Tools
Why DevOps?

In initial stages we were been using waterfall model, following to that we started to use Agile methodology, as we have some disadvantages in using Agile, like the development and operations teams are scattered and not able to work collaboratively and the process of agile is step by step process, in this case operations team can work only after developer releases the application. 

Then comes the DevOps methodology or framework where people can work collaboratively till the software delivery. 

By this way there is a significant increase on the development and operations lifecycle of about 50% faster on deployment and less failure with better recovery time in case of failure. 

DevOps CAMS

C - Culture - People / Process /Tools

A - Automation - Think automation is really required

M - Measurement - Monitoring and action on it

S - Sharing - Share the responsibility and share ownership

DevOps in 3 Ways....!

DevOps can be achieved in 3 different ways,

  1. Flow Thinking
  2. Amplifying Feedback
  3. Experiment and Learn
DevOps - Big Overview to Remember
  • People over process over tools
  • Continuous Delivery
  • Lean Management
  • Infrastructure as Code
IT Divide

    Developers want to deliver features fast and deploy them quickly.

    Ops want system to be stable and uptime should be important. 

Culture of DevOps
  • Blameless Postmortem
  • Transparent Downtime
  • Integrate Team 
  • Extension of Agile
  • Infrastructure as Code - Git for Ops

DevOps Terminology
  • Provisioning - Making the Infra ready
  • Deployment - Adding Software to the infra
  • Orchestration - Co-ordinated operations on multiple systems
  • Configuration Management - managing server via files
  • Imperative (Procedural) - commands to produce desired state
  • Declarative (Procedural) - desired state is defnied and tools will achieve it
  • Idempotent - repeat execution and same results
  • Blue Green Deployment - Identical deployment, used as switch
  • Continuous Integration - build and unit test at every check
  • Continuous Delivery - deploy on production line environment
  • Continuous Deployment - after unit testing, deploy changes to production in small batch