DevOps is immediately associated with automating build and deployment tasks. And why not, that is where the fun is for most of us IT geeks! Automation is where a smart low-level technical resource can be the hero with bottom-up process improvement.
The Automation Framework represents the big picture, end goal vision from a tactical automation perspective. It is Steven Covey’s second habit “Begin with the End in Mind," and provides the "guiding light" for early DevOps discussions, decisions and initiatives. There is a lot to this architecture and it represents a great amount of underlying detail that can not be illustrated in a single diagram. We recommend spending some time to review each blue-box automation domain and its relationship to other boxes. Skydingo’s use of "IT Delivery" is encompassed in the workflow, tools and relationships illustrated here.
The following describes the Automation Framework diagram components.
Data Source solutions should be addressed early, from a big-picture, end-goal perspective. The design of your data will have a significant impact on the team-to-team collaboration effort and the ability to achieve Continuous Delivery goals. With that said, access to the data may need to be through API's and tool interfaces to maintain data integrity, currency and security requirements. Designing the repository solutions and data schemes should include requirements from teams across the enterprise who will need to make updates and/or consume the data. In some cases duplicate repositories are needed to manage security (i.e. initially you may need two config file repositories to maintain separation between non-production passwords and production passwords. Over time you may then implement a token replacement solution for passwords and can then collapse the repositories to a single instance).
This is the software build automation or Continuous Integration (CI) solution. Although some of the CI tools available can do software code deployment functions, the focus of this domain is on the the build process, artifact versioning, property file management, and any build phase test automation. The scope should include Platform and Infrastructure as Software script repositories for common process methodologies.
This is where quality becomes a fast feedback loop instead of a project phase. The scope of test automation includes the obvious functional and non-functional testing, but also includes the more problematic pre-test data setup and post-test data cleanup. Solutions should include storing test-data scenarios in version control repositories, using the Deployment Automation functions to deploy test-data, and could include development efforts to build API's specific to the test-data updates.
This is your Iaas/PaaS private or public cloud layer. While Middleware containers such as Tomcat can be standardize as a repeatable commodity install, the supporting configuration is environment and application specific, and therefore not commodity. This includes Java and library dependencies installs, listening port configuration, SSL configuration, VIP or load balancing configuration, Web layer URL routing, etc. If you are worried that you will be outsourced by cloud technology, this is where you can compete and provide better value tailored to your specific business needs.
This is your core infrastructure IaaS solution for private clouds. Try to provide the same self-service provisioning model available from public cloud offerings. This should be your most commodity, menu driven and repeatable technology layer.
This is where all the value add magic starts to happen! Deployment automation is the bridge between all the technology silos including the automation of team-to-team interactions and business processes such as change management. Deployment automation can start as a tactical silo for code deployments with a Continuous Integration (CI) strategy, and expand to test-data deployments, middleware deployments, database script deployments, infrastructure deployments, etc. It should include the entire deployment pipeline from Dev, Test, and to Production Release, and mature to environment Deployment Orchestration of all the application components.
This is the Business Intelligence layer where dashboards provide visibility to environment status, events, trends and capacity. Events should be tied to Runbooks that can invoke Deployment Automation capability for automated remediation. The operations layer should cover the entire IT Delivery scope of production and non-production for dashboard visibility and remediation functionality.
Automation Is... Automation Framework Automation Breakdown - Data Sources - Build Automation - Test Automation - Platform Automation - Infrastructure Automation - Deployment Automation - Operations Automation
Copyright © 2011-2017 Skydingo Technology, skydingo.com. All Rights Reserved.