Sandboxes: Uber Containers for Enterprise DevOps
April 08, 2016

Joan Wrabetz
Quali

According to Gartner, 2016 is the year that 25% of enterprises will embrace DevOps. Organizational and behavior headwinds notwithstanding, is there anything else different about Enterprises? 451Research's Customer Insight, Voice of the Enterprise Cloud, Q4 2014 survey found that 56% of workloads will be in private or hybrid cloud environments by 2016. Enterprises will require additional capabilities in order for DevOps to succeed there. 

Three critical capabilities are required to ensure success with DevOps in Enterprises that have hybrid IT environments:

1. Containers for encapsulating applications

2. DevOps toolchains

3. Sandboxes for replicating the production hybrid cloud environment

Think of these 3 capabilities as addressing the "what", "how" and "where" elements of the enterprise DevOps challenge:

Containers (the "what") - Putting your applications into containers allows them to look uniform as they cross between non-production and production environments and between on premise and cloud.

DevOps Tools (the "how") - Using DevOps tools that automate the steps from programming to testing to production deployment is designed to address the "how" part of the challenge. 

Sandboxes (the " where") - Sandboxes address the real question of "where" do I develop my application so that the environment and infrastructure that it runs on look the same from the development lab to the test lab to the production datacenter or cloud.

Sandboxes (aka Uber Containers) are self contained infrastructure environments that can be configured to look exactly like the final target deployment environment, but can be created and run anywhere. For example, developers can create a sandbox that looks like the production environment - from network and hardware to OS versions and software to cloud APIs. They do their development in that sandbox for a short period of time and when they are done they tear down the sandbox.

Testers can do the same thing, and in addition, they can run a bunch of tests with the sandbox configured to look like their internal IT environment and then automatically re-configure the sandbox on the fly to look like the external cloud environment and run more tests. This allows them to test all of the possible environments that the application could run in without disrupting the actual production infrastructure.

What is a Sandbox? Intuitively we know that a sandbox is a protected space where you have complete control and others are allowed in only if you invite them. You can bring in your own toys to the sandbox and make anything you want in the sand. Just stomp it out if you don't like it and start over. Technically, sandboxes follow these same rules. A number of vendors are now providing Sandbox solutions (some are called "Environment as a Service") that have a simple interface for creating any target infrastructure environment and configuring it with as much control as you want. They allow you to bring applications, tools, tests and automated processes into that sandbox. They provide protections so that others cannot mess with any infrastructure that you are currently using in your sandbox. They provide reservation and scheduling for many people so that whole teams of developers and/or testers can share physical and virtual infrastructure on-the-fly for hours, days or weeks at a time. Finally, a good Sandbox solution can be triggered from the outside (for example, from a DevOps tool).

In the world of hybrid clouds, applications need to be deployable on both on-premise infrastructure and on public cloud infrastructure. Sandboxes allow developers to mimic both environments and define applications that can run successfully in both types of infrastructure. The sandbox can be used to test in both types of infrastructure.

Of course, in the perfect world, Containers, DevOps tools and Sandboxes can be combined to enable continuous deployment in an enterprise hybrid cloud. Package your applications in Containers, use DevOps tools to manage and automate the process of moving through the development cycle, and create Sandboxes for each step in the development cycle that mimic the actual target production infrastructure(s) on which those applications need to run. This 3 step combination ensures Enterprise DevOps success.

Joan Wrabetz is CTO of QualiSystems.

The Latest

July 17, 2018

In my first blog in this series, I highlighted some of the main challenges teams face with trying to scale mainframe DevOps. To get past these hurdles, the key is to develop an incremental approach that enables teams to capture value along each step of the journey ...

July 16, 2018

The key to mainframe DevOps success is in quickly identifying and removing major bottlenecks in the application delivery lifecycle. Major challenges include collaboration between mainframe and distributed teams, lack of visibility into the impact of software changes, and limited resource flexibility with scaling out necessary testing initiatives. Now let's take a closer look at some of these key challenges and how IT departments can address them ...

July 11, 2018

How much are organizations investing in the shift to cloud native, how much is it getting them? ...

July 10, 2018

In the shift to cloud native, many organizations have adopted a configuration-as-code approach. This helps drive up application deployment velocity by letting developers and DevOps teams reconfigure their deployments as their needs arise. Other organizations, particularly the more regulated ones, still have security people owning these tools, but that creates increased pressure on the security organization to keep up. How much are organizations investing in this process, and how much is it getting them? ...

June 28, 2018

More than a third of companies that use serverless functions are not employing any application security best practices and are not using any tools or standard security methodologies to secure them, according to the State of Serverless Security survey, conducted by PureSec ...

June 27, 2018

The popularity of social media platforms and applications is spurring enterprises to adopt "social business" models to better engage with employees and customers and improve collaboration, according to a new study published by ISG ...

June 25, 2018

The previous chapter in this WhiteHat Security series discussed Codebase as the first step of the Twelve-Factor App and defined a security best practice approach for ensuring a secure source control system. Considering the importance of applying security in a modern DevOps world, this next chapter examines the security component of step two of the Twelve-Factor methodology. Here follows some actionable advice from the WhiteHat Security Addendum Checklist, which developers and ops engineers can follow during the SaaS build and operations stages ...

June 21, 2018

DevSecOps is quickly gaining support and traction, within and beyond information security teams. In fact, 70% of respondents believe their culture can embrace the change needed to fuse Security and DevOps, according to a new survey of 80 security professionals by Aqua Security ...

June 20, 2018

The larger the company size, the higher the proportion of low IT performers, according to the State of DevOps: Market Segmentation Report from Puppet, based on the 2017 State of DevOps Survey data ...

June 18, 2018

An overwhelming 83 percent of respondents have concerns about deploying traditional firewalls in the cloud, according to Firewalls and the Cloud, a survey conducted by Barracuda Networks...

Share this