Session 1 : Devops Fundamentals

Session 1 : Devops Fundamentals

I'll be sharing my learnings from "Devops pro" a devops master's course provided by i-neuron Platform. Special thanks to Hitesh Chaudhary & Shaksham for such amazing sessions. You all might wonder what exactly is Devops, some might think its Docker, some might think its ansible, terraform or some might think its CI CD pipelines. but the main confusion is what exactly is Devops ? In simple words It's a cultural practice in an organization by development team and operations team to use each other's tool, to smooth out the process of software delivery.

DevOps is mainly a culture, as highlighted by the CAMS model.

D2.png

Devops CAM Model

1. Culture

Culture is defined by the interaction of people and groups and is driven by behavior of the people. This brings the Development & the Operations team on the same table to discuss their knowledge & plan of action.

2. Automation Automation makes process faster & efficient but it needs to be clear that it is required or not

3. Measurement Measurement refers to the tracking of certain factors which can be used as an input to an improvement process for e.g web traffic & load balancing.

4. Sharing Sharing is important as it allows everyone to see the progress of other parts of the organization & also everyone can have a common goal & also misalignment between teams.

The DevOps lifecycle

D1.jpg

**Plan **- Team determine the need and gather user opinions in this level. project plan is designed to optimize business impact and produce the intended result.

  1. Code - At this point, the code is developed. To simplify the design process

  2. **Build **- After code is developed it is then packed to a common code called as build.

  3. **Test **- To assure software integrity, the product is first tested in Non - prod environment.

  4. Release - At this point, the build is prepared to be deployed in the production/operational environment. The Operation team prepares sends several versions to production when the build satisfies all checks & delivers expected results.

  5. Deploy -The Code is finally deployed on the prod servers by the operation teams.

  6. Operate - This version is now convenient for users to utilize. With tools including Chef, the management department take care of server configuration and deployment at this point.

  7. Monitor - data is gathered from Application behavior, application efficiency, and other sources & then later is utilized to improve the overall performance.

Common Terminologies used in Devops :

**1. Provisioning : **Server is ready with OS, software and networking

2.Deployment : adding or upgrading software on server

3. Orchestration: coordinated operations on multiple systems

4. Configuration management: managing server configuration via files such as ram, space, dependency softwares etc.

**5. Imperative(procedural) : **commands to produce desired state

6. Declarative(procedural) : desired state is defined and tools will achieve it

7. Idempotent : repeat execution and same result

8.Blue-green deployment : Blue-green deployment is a technique that reduces downtime and risk by running two identical production environments called Blue and Green.

9. Continuous Integration : Build and unit test at every Check-in

10. Continuous Delivery: deploy on production live environment at every check-in

11. Continuous Deployment: After Unit testing, deploy changes to production in small batches.

*That was a short brief on Devops Fundamentals. I hope you have gained some insights through this.

Any improvements/suggestions are welcome.*

Did you find this article valuable?

Support cloudwithshubham by becoming a sponsor. Any amount is appreciated!