Feeling the pressure to keep up with customers and competitive demand in the market? Or the squeeze to deliver more business value at an increasingly fast pace? We heard from several of our customers, at our recent Perform event and the Microsoft Ignite tour, that they are experiencing exactly this.
The reason is because most of us are software companies now – whether we’re enabling IoT payments, delivering in-car apps, or working on software to improve automated check-in at an airport. Some of us are further along in our deployment maturity, whilst others are in the process of identifying key initiatives to move there.
Impediments and enablers
While the cloud, containerization, and microservices offer efficiency and scaling, many organizations aren’t quite prepared for that additional complexity, for several reasons:
- Reliance on manual software deployments and operational tasks
- Lack of real-time information for end-user experience and system health
- The number of people and associated communication and collaboration challenges to identify the often-elusive root cause
But, good news, here some of the dynamics that are allowing companies to successfully overcome some these challenges:
- Laser focus on user experience
- Continuous Software Integration and Delivery (CI/CD)
- Real-time data collection and analytics
- Web-scale architectures
- DevOps culture and team structure
Delivering at the speed of business
Recently, we’ve been conducted several surveys with our customers around autonomous cloud – specifically focusing on code delivery speed, quality, and support resources to gauge their agile practices and automation. The result being that the majority of organizations are not “Cloud Native” – yet.
We want to help improve these figures and will continue to share our best practices around how the Dynatrace platform, automation and Azure DevOps can better your delivery pipeline in our upcoming blogs and Performance Clinics.
For more reading on this topic, check out “Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations”, which breaks software delivery performance into four metrics:
- Lead Time
- Deployment Frequency
- Mean Time to Restore (MTTR)
- Change Fail Percentage
AI, automation and monitoring
AI, automation and monitoring facilitate the management of complex modern delivery platforms and help build resiliency into your deployment to enable better performance. In the context of software delivery pipelines, focus areas include:
- Monitoring – Integrate AI-enabled monitoring for visibility across your tool chain
- Quality – Enable on-demand testing at every gate within your pipeline
- Delivery – Deliver code to production with no manual intervention
- Operations – Enable self-healing applications by moving from manual run books to “operations-as-code”
These focus areas can be combined to improve quality, by preventing bad code or configuration from moving into production by adding in quality gates and decreasing the MTTR through automated remediation actions such as:
- Full or slow disk → clean up
- Low on resources → scale up
- Crash → restart
- Bad config changes → revert
- End-user impact → reverse blue / green
Enterprise operations are complex; with millions of lines of code, hundreds of connected services, and hybrid or multi-cloud environments. One break can mean serious implications for people, business, and the brand.
To avoid this, you need to understand how your applications are performing in real-time, to help clarify end user impact, system components impact, and the root cause of issues.
Dynatrace has built from the ground up a software intelligence platform that integrates across your end-to-end DevOps toolchain, to provide fast, deep, insight and context into events and root cause.
Some areas to start thinking about, that can benefit from automation processes, like auto-mitigation and auto-remediation, include:
Dynatrace in the Azure eco-system
Microsoft DevOps Azure is one of the leading CI/CD systems, and a strategic technical Dynatrace partner. Together, we offer a variety of integrations for Microsoft Azure, as well as the option to host the Dynatrace platform in Azure.
Some of the Azure DevOps resources we support include:
- Virtual Machines, Virtual Machines ScaleSets and derivates like Service Fabric, App Services, AKS, ACI, HDInsight
- Application services that are used remotely within the instrumented application where our OneAgents support the communication-protocol or driver such as SQL Azure, Service Bus, and Azure Storage
- Middleware Services where monitoring is based on metrics grabbed via Azure Monitor such as Load Balancers and API Management
The strength of Azure DevOps and Dynatrace
Microsoft’s Azure DevOps combines development collaboration tools; free private Git repositories, configurable Agile boards, extensive automated and cloud-based load testing, and more.
Dynatrace, in a powerful compliment to Azure DevOps, automatically layers AI-powered monitoring that far exceeds alerts on individual metrics. It takes problem events and API-integrated tool chain data and correlates it into a single problem that shows the impacted users, system, and root cause.
Keep an eye out for the Part II Blog, that will review specific examples including Shifting-Left quality gates and Shifting-Right auto-mitigation and remediation techniques.
And if you haven’t tried our Dynatrace Free Trial, please give it a go and also, make sure to check out our brand new Developer Program to help you learn, collaborate, and build on the industry’s powerful software intelligence platform along with the rest of your industry colleagues.