Stability vs. Change
Speed and agility notwithstanding, the biggest question about DevOps that IT professionals have is how can they change systems frequently, releasing code multiple times a day, without crashing their sites? More frequent changes do not necessarily equal improved time to market. However, they do give you the ability to have smaller changes that tend to result in greater stability. In order to understand how this works, you have to understand how DevOps implements changes. DevOps benefits include:
- Test and deployment automation (for build, test, or deployment). This may enable canary deployments in which you test new functionality on a small percentage of your production infrastructure and production transactional users.
- Continuous integration that combines more frequent and smaller changes with deliberate investments in improving your change capability.
- Comprehensive version control including automatic rollback that improves your monitoring and observability and the overall improvement of your processes and supports your culture and organizational norms.
These advantages together lead to less rework, higher throughput and stability, lower failure rates, and positive culture change, which not only gives you higher organizational performance, but improved time-to-market with stability, no matter the size, location, or age of your company.
What DevOps Means for the Storage Professional
Infrastructure-as-code is an essential aspect of storage architecture for DevOps. Overall, a DevOps reference architecture consists of source artifacts stored in source repositories with two parallel tracks: an application track along the top that goes through build automation. The build automation track feeds the package repository and the package repository then feeds release automation. But none of that can work without infrastructure automation where resources such as compute, networking, and of course, storage are automatically provisioned for a wide variety of environments—including preproduction and production environments. Here, the digital service is ultimately deployed through continuous deployment release techniques that can then be monitored.
Tintri and Forrester Principal Analyst, Charles Betz, shed light on what storage-as-code means for your DevOps practices and the overall success of your business in the digital age.
Speed and Quality
Forrester believes that this is the age of the customer. The experience your customer has with your goods and services is the critical determinant of how successful you’re going to be in business. Customers increasingly expect—and demand—things to be up-to-date, and they expect new and exciting offerings on a regular basis. This is not necessarily about the size of the business, but rather about speed. How quickly can you deliver things to market and achieve a commanding market position?
Speed plays out in a couple of different ways:
- Coding new features
- Streamlining the infrastructure operations that underlie DevOps
Even the best designed systems have flaws or they encounter issues due to market changes or customer expectations that have changed. It is extremely valuable to have a fast release cadence and to be able to be responsive to the feedback you’re receiving from the market, from your customers, and even from your operations staff.
As we seek speed in delivery, does that sacrifice quality? This is an ongoing conversation as DevOps grows: are we leaving quality on the table? We’ll try to answer why DevOps works and why it doesn’t sacrifice quality.
Industry Adoption of DevOps
In the past, businesses would follow a straightforward, but flawed, strategic plan to develop new products or services. Do a little market research, develop a proposal, and hand it off to the IT team to execute. If it failed, it was their responsibility. This never worked well or really at all. But it’s how we thought it should work.
Nowadays, many of us recognize that markets are dynamic and unpredictable and the best way to understand a market is through an experimental process in which you need many ideas, that you may need to test many ideas, and many of those ideas may not succeed. This is a fundamental change in business strategy that has driven the desire for leaner, more agile product development. Forrester has seen a corresponding increase in industry adoption and experimentation with DevOps that has taken it way beyond the early adoption phase with substantial global evidence of uptake across digital professionals in a variety of industries.
This perspective is explored in the book The Lean Startup by Eric Ries: When you have a product idea, you want to build a “Minimum Viable Product” that is tested on customers in your market from which you learn whether to continue with this product, tweak or enhance it, or abandon it entirely.
We’ve discussed Tintri and DevOps quite a lot lately, but you may still have questions about what that means for you and your business. For this two-part blog series, we reached out to Charles Betz, Forrester’s lead DevOps analyst for help in explaining the origins of DevOps and how these tools can become the foundation for your development and infrastructure teams, mainly for their speed, agility, and stability.
The ability to automate CI/CD processes at the infrastructure level is essential for success. Because the build automation and release automation workflows typically run on VMs or in containers, automation should be done at the same level of granularity. Intelligent storage can greatly accelerate CI/CD workflows. Tintri storage lets you automate everything directly at the VM, vDisk, or container level, taking the complexity out of automation processes and making it possible to leverage storage-related processes to accelerate your CI/CD pipeline and your entire DevOps workflow.
Next time, we’ll look at specific use cases involving MySQL (including Docker and Kubernetes) and disaster recovery (DR).