In this entry of our series of DevOps on the AWS cloud, we take look at building a strong DevOps culture.
NetApp surveyed organizations that develop software products. Results showed that 65% of respondents’ development teams plan to deliver 10 or more applications within the year. In large enterprises with more than 10,000 employees, 42% plan a whopping 50 or more annual applications.
But 59% of respondents said it takes 3 to 6 months to deliver a new application. Realistically, these companies can only deliver two to four new applications a year. And it’s not only a matter of creating new applications. Only 4% release new software versions every day, and just 17% release new versions weekly.
There is a large gap between the top development performers and the rest of the pack. The top performers reported that they:
- Need less than a day of lead time to make changes
- Deploy on demand with multiple deployments per day
- Restore failed services in under an hour
- Have a change failure rate of 0% to 15%
These top performers also tracked improvements since they instituted sweeping changes in their development workflow. Typical numbers are:
- 208 times more code deployment
- 106 times faster lead time from commit to deploy
- 2,604 times faster recovery from incidents
- 7 times lower failure rate
These top performers weren’t the biggest companies, nor did they have the largest development teams. The sweeping change that improved their workflow was automation. 96% of the top performers automated their development and deployment toolchains. By automating development and operations tasks, DevOps created fast, repeatable, and sustainable continuous integration and continuous deployment (CI/CD) pipelines.
It’s Not Easy, but It’s Worth It
A move to DevOps and the cloud isn’t an overnight operation. Unlike some on-premises storage, cloud storage is not designed to be a simple commodity. DevOps needs to optimize it to make it work for the CI/CD pipeline, and to keep it cost effective. But turning into storage administrators is not what developers signed up for. And IT doesn’t need to take on yet another full-time job by administering a new cloud storage and development environment.
The good news is that the benefits strongly outweigh the costs, and there is a lot of help available to get started. When IT teams set up automated tools and services on their infrastructure as a service (IaaS), the software smoothly automates provisioning, data protection, integration, testing, deployment, and monitoring. DevOps teams will pull ahead with higher application quality and faster time to market. And the new workflow’s repeatability and consistency will let them do it again and again, at less cost and in less time.
How to Do It: NetApp on AWS
AWS offers IaaS to its customers. IaaS spins up a compute, storage, and networking infrastructure with infinite scalability and reliability, and abstracts the complexity of managing the storage.
This approach is the foundation for DevOps in the cloud, but DevOps customers need to expand IaaS with cost-effective tools. These tools run on AWS IaaS to automate tasks throughout the CI/CD pipeline, provide file services, do automatic provisioning, support containerization, and enable strong data protection across multiple data sources.
NetApp’s flagship offerings for optimizing AWS for DevOps are NetApp® Cloud Volumes ONTAP® and NetApp Cloud Volumes Service.
Cloud Volumes ONTAP
Cloud Volumes ONTAP is a high-performance storage manager that runs natively in the cloud. DevOps teams use ONTAP for unlimited zero-capacity, instantaneous volume cloning, high-availability deployment configurations, built-in storage efficiencies, and a single-pane automation and orchestration front end. In addition, NetApp Trident — and later in 2020, Project Astra — manages and protects persistent data on Kubernetes containers.
- Drastically lower TCO. Native deduplication, compression, and thin provisioning cut down cloud storage costs. Rapid cloning with NetApp FlexClone® thin-cloning technology provides tremendous speed gains at much lower cost than AWS tools. FlexClone instantaneously clones writable volumes, replacing 20-hour manual provisioning projects with 1-minute fully automated cloning.
- Resiliency. Integrated NetApp Snapshot™ technology and replication protect data from multiple sources. NetApp ONTAP high-availability (HA) configurations provide extra resiliency against any issues rising from virtual machines (VMs), Availability Zones (AZs), or regions.
- Ease of management. NetApp Cloud Sync preserves data integrity by synchronizing data volumes. NetApp Cloud Manager (formerly OnCommand® Cloud Manager) is a single management console that enables DevOps to manage and move data on premises and in the cloud.
- Security. Native encryption and compliance controls enable high security, privacy, and compliance.
Cloud Volumes Service
NetApp Cloud Volumes Service is a fully managed cloud file storage service that accelerates and protects cloud workloads at a low price. DevOps saves time and overhead by offloading storage layer management to Cloud Volumes Service.
- High performance. Many DevOps teams use Amazon Elastic Block Storage (EBS) and various IOPS offerings. But Cloud Volumes Service performance is up to 20 times faster than EBS. Cloud Volumes Service restores are also much faster than Amazon Elastic Compute Cloud (Amazon EC2) snapshots. Cloud Volumes Service can perform large file restorations from multiple sources running in parallel. This approach is designed to deliver faster results than the standard cloud compute.
- File services. DevOps frequently needs file services to quickly create test copies of production data, and Snapshot technology creates rapid clones at low cost. DevOps can create and provision NAS-like shares, volumes, and mounts on demand.
- Efficient databases. Cloud Volumes Service enables DevOps to easily clone and replace test databases with actual data. Change testing is reliable and accurate, with no need to build and retain extra databases.
- High availability. Restoring failed servers in the cloud is not a simple job. Cloud Volumes Service keeps servers from failing in the first place with built-in high availability and automated data synchronization between applications.
Moving DevOps to the cloud might not be a walk in the park. But after it’s done, the automated structure lets DevOps teams not only evolve, but thrive in a way they never could before.
This is the third blog in our DevOps Series, here is our previous blog. For more detailed information on DevOps with NetApp on AWS you can view this webcast titled; Running Cloud-Native Applications On AWS? Also you can read about Cloud Volumes Service or start a free trial of Cloud Volumes ONTAP.
Additional posts focus on solving pain points, building a successful deployments, and real-world examples of DevOps in the cloud. For more in our series check out the complementary entries on A Strong DevOps Culture, Agile DevOps, A New Approach to Development, and 10 Challenges and Solutions for DevOps.