Skip to main content

DevOps - What and Why?

The very first question arises in the mind is "What is DevOps?"

Few will say it combined team of Developers and Operations. Some will say it is a person "DevOps Engineer" who works with multiple teams to get the things done in corrective manner.

Further questions comes in mind are:
  1. What is the corrective manner of doing things?
  2. How it is different from our "current" method of doing things?
  3. Do I need an extra set of tools for this?
  4. And, most important of them all, why should I use it?

Let me tell you what I've learn in my 3 days of DevOps training.

What is DevOps?
DevOps is not a team, or tool, DevOps is a culture. It is a culture for collaboration, Integration and Communication between different cross functional teams for Continuous Delivery. DevOps is not an additional team, but it is the existing team members who work together. It breaks the barrier between Infrastructure and Code at early stage.

DevOps also encourages Operations team to participate early in the Development Cycle so that products are designed to be easily deployable and maintainable.

*Image Source: Wikipedia

How can I implement DevOps culture in my project?
  • Automation Everywhere
  • No Manual Intervention
  • Use of Open Source (optional, but vary w.r.t. Application & Client)

It also ensures:
  • Collaborative Development
  • Continuous Testing
  • Continuous Release and Deployment
  • Continuous Customer Feedback and Optimization
  • Continuous Monitoring

How one can archive DevOps?
To get the maximum benefit from DevOps, one need to follow a certain path and need to implement few new process in their application development life cycle. Such as following:
  • Configuration Management
  • Continuous Integration
  • Automated Testing
  • Metrics
  • Collaboration
  • Making smart use of smart people


As soon as a change comes in to the version control tool, it will start testing the stability of the code & automated testing will start. In case of some failure, an alert will goes to the stakeholder, they will fix the issue and process will start again.

When all the test cases are successfully executed, automated deployment will get triggered and code will get deployed to production environment. Following this process with close the gap between the team located is different geographical location and there will be no time wastage.

Infrastructure monitoring and Analytics is also possible automatically.

Why DevOps?
OK, after understanding about DevOps culture, its objective, output, next question which comes to our mind is "Why should I adopt DevOps?"

In simple point after adopting DevOps culture you will get the followings:
  • Rapid Prototyping
  • Effective Support
  • Micro Services Architecture
  • API Support
  • Automation
  • Experimentation
  • Polyglot Enablement
  • Platform as a Services (PaaS)

Most of the things will be automated with DevOps (Testing, Deployment, Analytic, Monitoring etc.) you will get time to work on your Backlog and achieve more. You will be experimenting new things/tools. Dependencies of your applications can be identified at earlier stage and you don't have to waste time at the time of actual production deployment.


Achievements:
  • Code, Environment and configuration at one place
  • Automation of code release
  • Faster Release Cycle
  • Shorten and amplify all feedback loops
  • Quality - with feedback comes quality
  • Defects and performance issues fixed faster
  • Better Communication
  • More work getting done
  • Efficiency, Predictability, Reproducibility & Maintainability

Comments

  1. It's interesting that many of the bloggers to helped clarify a few things for me as well as giving.Most of ideas can be nice content.The people to give them a good shake to get your point and across the command.
    Devops Online Training

    ReplyDelete

Post a Comment

Popular posts from this blog

PowerShell: Get Actual Error

I was having hard time to find the reason why I was not able to find a custom method in a .Net DLL. Find your Assembly: PS C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts > [appdomain]::currentdomain . getassemblies() | Where - Object FullName - Match "MyAssembly" GAC Version Location --- ------- -------- False v4 . 0.30319 C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts\Tools\MyAssembly . dll PS C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts & gt; $ a = [appdomain]::currentdomain . getassemblies() | Where - Object FullName - Match "MyAssembly" PS C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts & gt; $ a GAC Version Location --- ------- -------- False v4 . 0.30319 C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts\Tools\MyAssembly . dll When I was trying to get the Types in the assembly, I was getting the exception: PS C:\vstsagent\A1\_work\r1\a\_DevOps_CI\Scripts > ...

Enable Trace on Dynamcis 365 on premise using PowerShell

Enable trace settings through Windows PowerShell Note These changes made in Windows PowerShell do not update the Registry. These changes update the DeploymentProperties and ServerSettingsProperties tables in the MSCRM_CONFIG database. Register the cmdlets 1.      Log in to the administrator account on your Microsoft Dynamics CRM server. 2.      In a Windows PowerShell window, type the following command: Add-PSSnapin Microsoft.Crm.PowerShell To obtain a list of the current settings, type the following command: Get-CrmSetting TraceSettings Set the trace settings 1.      Type the following command: $setting = Get-CrmSetting TraceSettings 2.      Type the following command to enable tracing: $setting.Enabled=$True 3.      Type the following command to set the trace settings: Set-CrmSetting $setting 4.      Type the following command...

AI Tools That Make Web Development Easier! 😊

Hey developers! 👋 We all have faced endless debugging, repetitive tasks, or struggled to get the perfect design. But what if AI could make things easier for us? 😅 In this post, I'll share some AI tools that have helped me save time and make web development less frustrating. If you’ve got your own favorites, feel free to share in the comments—I’d love to know what’s working for you! GitHub Copilot: Your Coding Buddy 🤖 You might have heard about GitHub Copilot. It’s like having a coding partner who suggests code completions and helps you write boilerplate code. Great for speeding up your workflow, especially with repetitive tasks. Why it’s useful: It suggests code as you type—sometimes even entire blocks! Works with many languages, like JavaScript and Python. You can learn new coding techniques along the way. Question: Have you tried Copilot? Has it made a big difference in your coding process? Tabnine: ...