DevOps Adoption Playbook - Part 1 - Intro
DevOps Adoption Playbook - Part 1
DevOps Adoption Playbook - Part 1 - Demonstration
DevOps Adoption Playbook - Part 1 - Review
The course is part of this learning path
In this course, we introduce you to the DevOps Playbook Part 1.
The DevOps Playbook Part 1 course begins with Book 1, a brief introduction to DevOps and how in recent times it has become the defacto approach to developing and operating applications. We then introduce you to Books 2 through to 7, covering the topics, CALMS, Collaboration, Automation, Version Control, Continuous Integration, and Continuous Testing, where each book documents a required DevOps competency, one in which you’ll need to adopt and establish skills in to be effective in DevOps.
- Book 1 - DevOps
- Book 2 - CALMS
- Book 3 - Collaboration
- Book 4 - Automation
- Book 5 - Version Control
- Book 6 - Continuous Integration
- Book 7 - Continuous Testing
The DevOps Playbook Part 1 course includes 2 demonstrations where we put into practice some of the DevOps theory presented.
- Atlassian BitBucket and Slack Integration
- Atlassian BitBucket Pipelines and Docker
Note: the source code as used within these demonstrations is available at:
- [Instructor] Welcome back. In this lecture, we'll introduce you to the importance of automation.
Automation is the technology by which a process or procedure is performed without human assistance.
To successfully adopt DevOps within your own organization, you're going to need to get on board early with automation. And lots of it. DevOps makes use of automation to perform and eliminate a lot of the repetitive and time-consuming work associated with building software. It does so by using toolchains to automate key parts of the entire development and deployment process. Investing time and effort up front in automation will save you in the long run and ensure that your DevOps practice succeeds in its requirements.
Automation has the desired effect of being consistent, reliable, and fast in whatever it is being used to perform. The same cannot be said when manual involvement is used. Automation can and should be used to execute builds, run tests, apply configurations, and perform deployments, amongst other things. Doing so will ensure that all these things can be done repetitively and at speed. Implementing automation will be at some cost. However, consider the long run. Having automation in place will save you considerable amounts of effort and cost in the later stages. With this in mind, you should continue to nurture and extend your automation, such that it remains robust and productive.
As you go about implementing automation, look to address existing pain points within the current build and deploy processes. By doing so, you will be able to demonstrate back to the business the value of automation. An often starting point for automation is to consider deploying a continuous integration and continuous delivery server to automate the build and delivery stages. But it shouldn't finish there. Continue to expand out automation into other areas.
The benefits of automation in a DevOps context are numerous. Lets cover off some of them now. Reduced overhead and operational cost. Faster releases into production. Reliable and consistent environments. Reliable and consistent software packages. Reduced dependence on particular skilled staff and or teams. Ability to perform tasks on demand. Automation scripts are, in a sense, self documenting. And, an ability to provide immediate feedback on completed tasks.
Some example challenges associated with automation are: Automation takes up front time and effort to set up. It requires development and or scripting skills. And, there's a tendency to see DevOps as just a collection of automation tools. This is incorrect. DevOps is much more, but automation is important. You need automation, and lots of it, to be successful with DevOps. Having said that, be careful, as previously mentioned. Do not assume that automation is the only requirement for DevOps.
Okay. That completes this lecture on automation. Go ahead and close this lecture and we'll see you shortly in the next one.
Jeremy is the DevOps Content Lead at Cloud Academy where he specializes in developing technical training documentation for DevOps.
He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 20+ years. In recent times, Jeremy has been focused on DevOps, Cloud, Security, and Machine Learning.
Jeremy holds professional certifications for both the AWS and GCP cloud platforms.