Understanding DevOps

Understanding DevOps

Understanding DevOps as a beginner

ยท

3 min read

Helloo everyone Iam Goutham and I am Computer Science Under gradaute recently I started understanding what exactly DevOps is , and I would like to write small beginner friendly blog on it so lets start..... โœŒ

What is DevOps

Here as a beginner I really misunderstood what DevOps is let me explain it is not a tool not a language but it is just a process to establish a continuous communication between Development part and Operations part of the organization..

What is the need of DevOps

Main aim of any organization is to deliver a quality bug free application as fast as possible to the customers.

Wheather company follow Agile / Scrum methods it doesn't matter at planning stage .

Both Development team and Operations team has different jobs to perform

Challenges of Development team

  1. Create user friendly application in any programming language.

  2. Test Frame Works

  3. Adding new features

4 . Run manual / automatic tests

Challenges of Operations team

  1. No down time at server

2 . Handle huge traffic.

As both roles are different there might be miscommunication between both groups delivering product might take longer time than expected.

Why communication needed

1 .Development team needs to send some development guide to operations team so that they create executable file and deploy it to servers and make it available to public sometimes operations team might not understand what development team trying to explain this causes delay.

7-process-steps-w-mobile-devops-tools-2.png

  1. While manual testing application on local machine might be error free and it might create trouble while deploying

DevOps is just used to remove all road blocks at each phase which are trying to slow down the process of app release.

DevOps Engineer can understand what Development team wishes to express and deliver it to operations team as they are the bridge between Development team and operations team

This is where DevOps comes in .

How DevOps removes road blocks

With the help of some tools available at each phase we can get fast feed back .

devops.jpg

After completing developing application development team has to test, manual / automatic and then the dev team needs to zip .

Tools required

1 . Git is a version control tool which keeps track of the updates in the code written by dev team .

git.png

  1. Docker it is most used container as application needs to run on the server as container.

docker.png

  1. All docker files are to managed and this is where Kubernetes comes in.

kubernetes.png

  1. Now Neither Dev team nor operation team takes care of tests , zip docker and all .. Devops engineer creates role now comes in creates bridge between dev team and op team which is CI/CD pipe line which is used to continuously run tests and deploy to the servers how cool is that ๐Ÿ˜Ž. Jenkins is the popular tool for CI/CD.

jenkins.png

  1. Deployment model has to be created at production , testing , development stages generating deployment model at development stage and maintaining is difficult , so to create model at each stage popular tool is Terraform and to maintain popular tool is Ansible.

terraform.png

  1. At last to deploy application on servers instead of buying and maintaining them we can make use of public Cloud providers out there like AWS ,GCP ,Azure this is called Infrastructure as service.

cloud.jpg

  1. After Deploying operations team has to continuously monitor how it was working for that most popular tool is Prometheus / Nagios

prometheous.png

This is how DevOps makes delivery of application to end users fast โœ” .....

pack.jpg

This is a my own beginner blog on DevOps I have written what I understood by watching different tutorials if you find any thing wrong please comment.

Thanks for reading happy day ...๐ŸŽ‰

ย