DevOps Classroom Series – 25/May/2021

DevOps Pipeline and Configuration Management

  • Once the Developer commits the code to the VCS, the build system picks the code and generates the software package. Preview
  • We need to take this software package and then create the Test Environments Preview
  • In Enterprise:
    • Lot of developers will be committing the code and then we need make lot of software deployments in the servers before we go for the live environment
    • We need to deploy the package into various environments
      • Environment for System Tests
      • Environment for Performance Tests
      • Environment for UAT
      • Live/Production Environment
  • To Summarize:
    • We need to do this activity of deploying and configuring application repetitively
    • Manual deployments are ruled out

Possible Solutions for automating deployments

  • Solution 1: Write a Shell/PowerShell Script to deploy and configure the application
    • The effectiveness of the script largely depends on the developer
    • Shell Scripts are not readable
    • It becomes difficult to handle changes and maintaining the solution
    • Making the script work on different Linux Distributions is slightly complex
  • Solution 2: Configuration Management (CM)
    • In Shell Scripts, we script on the basic philosophy How to do but CM works on philosophy What has to be done i.e. we specify a desired state.

Configuration Management

  • An effective configuration management solution can benefit your environment in a number of ways including
    • Saving Time
    • Improving Availability
    • Improve Control
    • Allow us to Do more with Less
  • Configuration Management Architectures Preview Preview Preview
  • Ansible, Salt uses Push Based CM
  • Chef, Puppet follows the Pull Based CM

PULL BASED CM

  • In Pull based CM for the nodes to communicate with the CM server, there will be a software agent (chef agent, puppet agent) which will trigger the communication from node to CM Server
  • DevOps/IT Engineers need to express the desired state in the supported format by the CM Server and upload the configurations to the server
  • So lets learn about how to write the configurations in Chef and upload them to the chef CM Server and make that configuration work on some node.

Exercise

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

About learningthoughtsadmin