3 Ways DevOps Teams Can Accelerate CI/CD
April 19, 2018

Matt Geddes
Tintri

As development speed has become a competitive advantage, the DevOps team has sought to enable continuous integration and continuous delivery (CI/CD).

CI/CD helps developers overcome enormous strains on the software development and testing process. Over the years, software development has migrated from the enterprise level, where there are vast resources, to smaller development shops that race to keep pace with demand generated from billions of smartphones and other mobile consumer devices.

One of the biggest challenges to a successful software development cycle is the management and integration of disparate information. Think about a group project where everyone divides and conquers on tasks with a goal of integrating their work at a later date. At this point, information can come in different formats, languages and styles.

Before CI/CD, developers worked on specific software modules and merged with others later for integration and testing, which would take weeks or months to address bugs and issue fixes for a final release. We all know this process as the waterfall method. With continuous integration (CI), developers now merge changes into the main branch of the software on a daily basis. Programmers can protect against potential risks by automating testing, which helps prevent integration problems commonly associated with the waterfall method. Continuous delivery (CD) promotes a steady flow of software releases through automation. For some applications, deployment to customers may take place almost immediately after tests are completed.

For the CI/CD process to be successful, it must be fast and efficient. Any potential roadblocks that delay any part of the process increase cycle times and slow down delivery.

Typically, those who manage the IT infrastructure are seen as being responsible for providing the resources needed to support the CI/CD process. But it's also the job of operations to make sure infrastructure facilitates agile development processes that enable CI/CD with minimal bottlenecks in the pipeline.

Operate at VM and Container Level

Development workflows typically run on VMs or in containers, and so automation should be built at the same level of granularity. That requires the right storage, which can greatly accelerate CI/CD workflows by doing away with legacy logical unit numbers (LUN) or volumes — operating in VMs and containers instead.

The key is to automate everything directly at the VM, vDisk, or container level to remove complexity and make it possible to leverage storage-related processes to accelerate your CI/CD pipeline. Snapshots, cloning and replication — common features of all-flash storage — can also be factored in to save time and storage capacity.

Remove Capacity and Performance as a Constraint

It's not uncommon for storage capacity and performance to become bottlenecks in the CI/CD pipeline. If the development team has to sit and wait for processes to complete or for capacity and performance to become available, it can affect software build times and slow down testing.

By applying flash storage at the VM and container level, you can automatically prevent CI/CD workloads from interfering with each other and bogging things down. This allows you to spin up tens, hundreds, or even thousands of test workloads in parallel, and you never have to worry about load balancing or the placement of different types, sizes, or numbers of VMs inside LUNs.

Gains in performance efficiency can also be achieved by offloading operations. For example, if an application includes databases, each person on the development team needs to work with and test against their own database. Given the size of modern databases, if you try to give every developer a physical copy, storage capacity will quickly become an issue, not to mention the time spent waiting for physical copies to complete.

VM-level cloning allows you to have as many environments with full database copies as you need and to create new environments almost instantaneously.

Synchronize VMs to Accelerate Provisioning of Development and Test Environments

It's important to refresh test workloads with the latest data from production as often as possible. One of the best ways to avoid bugs and integration problems is to perform integration tests with production data. However, to accomplish this testing, you have to refresh the data and make multiple copies and rebuild the environment, including all the necessary VM settings. This process can be cumbersome, time-intensive and error-prone.

But by synchronizing VMs, you can accomplish refreshes and streamline the process without rebuilding the entire environment. As a result, there's less disruption and you can refresh regularly.

By factoring the above into your infrastructure design and purchasing decisions, you can help ensure your DevOps teams never run out of resources and spend their time focused on code, not infrastructure.

Matt Geddes is Field CTO at Tintri

The Latest

May 24, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on the top tools to support DevSecOps. Part 3 covers security and monitoring ...

May 22, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on the top tools to support DevSecOps. Part 2 covers DevOps and development ...

May 21, 2018

While DevSecOps, much like DevOps itself, is more about changing IT culture than employing certain types of technology, some tools can be an important support. To find out what the right tools are, DEVOPSdigest asked experts from across the IT industry for their opinions on the top tools to support DevSecOps. Part 1 covers the testing phase ...

May 17, 2018

The top two business priorities for CIOs of midsize enterprises (MSEs) in 2018 are growth and digital transformation. However, 57 per cent of MSEs are not yet delivering digital initiatives, according to findings from Gartner Inc.'s 2018 CIO Agenda Survey ...

May 15, 2018

Almost every company is facing the challenge of digital transformation today. This means rethinking and retooling your company to compete and succeed in an increasingly digital world. While digital transformation is not only about technology, the right tools can help. To find out what these right tools are, APMdigest asked experts from across the IT industry for their opinions on the essential tools to support digital transformation ...

May 08, 2018

With data breaches consistently being in the news over the last several years, it is no wonder why data privacy has become such a hot topic and why the European Union (EU) has put in place General Data Protection Regulation (GDPR) which will become enforceable on May 25, 2018, which is less than a month away ...

May 03, 2018

The prospect of increased workloads, combined with shrinking mainframe skillsets, has huge implications for mainframe DevOps. The only way for organizations to solve this skills gap crisis is by optimizing developer productivity. Drilling down a level further, what does this all mean for mainframe DevOps? ...

May 02, 2018

When it comes to operations and development, DevOps has changed the traditional compartmentalized style of development by eliminating silos. But what about the security team? Security is largely still siloed from operations and development. No doubt, many DevOps teams have some security controls baked into their automation processes, but a recent survey shows there are still alarming gaps ...

April 30, 2018

According to the 2018 Global Security Trends in the Cloud report, 93 percent of respondents faced challenges when deploying their current on-premises security tools in the cloud, and 97 percent lacked the tools, cross-functional collaboration and resources to gain proper insight into security across the organization. These numbers indicate a big problem in DevSecOps that needs to be addressed ...

April 26, 2018

Moving more workloads to the cloud is a top IT priority, so eventually it will be time to consider how to make those critical legacy applications cloud ready. In Part 1 of this blog, I outlined the first four of eight steps to chart your cloud journey. In addition, consider the next four steps below ...

Share this