Welcome!

@CloudExpo Authors: Zakia Bouachraoui, Yeshim Deniz, Pat Romanski, Elizabeth White, Liz McMillan

Related Topics: @CloudExpo, Java IoT, Cloud Security

@CloudExpo: Blog Post

Moving Test Environments to the Cloud By @EFeatherston | @CloudExpo #Cloud

Is that a good first step?

How often do you get questions like ‘Have you gone to the cloud yet?', or ‘Why aren't we in the cloud?', or a myriad of others along those same lines. People still talk like the cloud is a destination. I discussed this tendency last year in a blog, "The Cloud - Is It Your Actual Destination?" For all the hype surrounding cloud, the benefits are real. IDC forecasts global public IT Cloud services spending to reach nearly $108B by 2017. Gartner expects that by 2016 the bulk of IT spend will be for the cloud. Those are pretty impressive numbers. The challenge is to remember, cloud is technology, it's a vehicle, a conduit to help you provide value to the business.

The real challenge is determining what should move to the cloud. Do I go to public cloud or build a private cloud? Is hybrid the right choice? What benefits provide the best value to the business? Do I move everything? These are just some of the questions that you should be asking yourself. There is no simple one-size fits all answer. No technology, including cloud, negates the need for good design and planning. How does one make sense of this? You need to put a process in place to that identifies, weighs and balances the business needs with the technical challenges. One potential area to look at as a first step is your test environments. I can already see some of your eyes rolling, but let's take a look at some of the potential benefits of doing that.

The challenge of QA and performance test environments
In house QA and performance test environments have always presented challenges, and many times been the forgotten step child in the development process. Every group wants:

  • Their own isolated, dedicated test environments
  • To run on independent build/test/deploy schedules
  • To be able to quickly configure/deploy/test changes both on cycle and for hot fixes
  • To performance test for scale, load, and capacity so they can understand breakpoints before going live

In the ideal world, with unlimited resources and money, this would be easy. Unfortunately, in the real world, setting up that kind of dedicated testing environments tends to be cost, space, and resource constrained. Hardware/space/resources need to be shared, scheduled, and may run into conflicts. The end result is shared resources, scaled down in size, which may or may not be a good representation of the production environment. Keeping large amounts of hardware around that is not utilized all the time becomes a hard sell, and not one that is usually won. Sharing these resources helps, but inevitably there are schedule conflicts, one project impacting another during the testing cycles. Striking a balance is a pain point many of us are all too familiar with.

Stand up, deploy, test, breakdown, repeat
Public cloud providers can be a viable option to help address the challenges discussed. Instead of the classic purchase, configure, and support your own hardware environments, you go to the cloud provider. The public cloud providers have three key benefits to address the testing challenges

  • You can obtain your own dedicated testing environment resources when you need them
  • You only pay for what you use
  • You can configure for dynamic resource usage, allowing for true performance testing for application scaling and identifying breakpoints

On demand testing resources when you need them. Stand up a test environment, deploy your app, test it, and break it back down when you are done. Dynamic scaling for performance. Sounds wonderful, what's the catch? No technology negates the need for good planning and design. The cloud is no exception. To take advantage of the benefits the cloud can provide your testing needs there are some items to consider and plan for in order to succeed.

  • Develop a set of setup configuration and deployment scripts for your cloud environment. All public cloud vendors provide a scripting mechanism for setup, deploy, and breakdown of environments. The added benefit of doing this is you have a standard, repeatable mechanism for standing up a consistent testing environment. Make sure to place these scripts under source control.
  • Develop a test data management strategy. If you have one already, revisit to determine if there is any impact caused by moving into the public cloud space. (See my recent blog on test data management in the cloud). As with the environment setup, develop and maintain scripts so that you have a repeatable process for standing up both the environment and data.
  • Dynamic scaling is only helpful if your application is designed for horizontal scalability. Again, plan and design are key to be able to leverage the benefit.

Does it make sense for your organization and needs
Using public cloud infrastructure as a service offerings for test environments can definitely have benefits. It can also be an attractive first step and toe in the water for your organizations foray into the world of cloud. Is it for everyone? Not necessarily. You need to evaluate your readiness and ability to leverage the benefits that can be found. If you are facing the testing challenges discussed, this step could be for you. Success is not automatic. If you don't already have a well-disciplined DevOps process, this could be a good step in developing one. As discussed, standardizing, scripts, source control, process, are all critical to leveraging the cloud for your test environments. Cloud technology will not make the magic and success happen. It does provide the opportunity and capability. With proper planning and design, using test environments as your first step, it very well could be the right choice for your organization to start its successful leveraging of cloud technologies.

This post is brought to you by Cloud for Tomorrow.

More Stories By Ed Featherston

Ed Featherston is VP, Principal Architect at Cloud Technology Partners. He brings 35 years of technology experience in designing, building, and implementing large complex solutions. He has significant expertise in systems integration, Internet/intranet, and cloud technologies. He has delivered projects in various industries, including financial services, pharmacy, government and retail.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


CloudEXPO Stories
This is going to be a live demo on a production ready CICD pipeline which automate the deployment of application onto AWS ECS and Fargate. The same pipeline will automate deployment into various environment such as Test, UAT, and Prod. The pipeline will go through various stages such as source, build, test, approval, UAT stage, Prod stage. The demo will utilize only AWS services including AWS CodeCommit, Codebuild, code pipeline, Elastic container service (ECS), ECR, and Fargate.
SAP is the world leader in enterprise applications in terms of software and software-related service revenue. Based on market capitalization, we are the world's third largest independent software manufacturer. Harness the power of your data and accelerate trusted outcome-driven innovation by developing intelligent and live solutions for real-time decisions and actions on a single data copy. Support next-generation transactional and analytical processing with a broad set of advanced analytics - run securely across hybrid and multicloud environments.
Cloud-enabled transformation has evolved from cost saving measure to business innovation strategy -- one that combines the cloud with cognitive capabilities to drive market disruption. Learn how you can achieve the insight and agility you need to gain a competitive advantage. Industry-acclaimed CTO and cloud expert, Shankar Kalyana presents. Only the most exceptional IBMers are appointed with the rare distinction of IBM Fellow, the highest technical honor in the company. Shankar has also received the prestigious Outstanding Technical Achievement Award three times - an accomplishment befitting only the most innovative thinkers. Shankar Kalyana is among the most respected strategists in the global technology industry. As CTO, with over 32 years of IT experience, Mr. Kalyana has architected, designed, developed, and implemented custom and packaged software solutions across a vast spectrum o...
Despite being the market leader, we recognized the need to transform and reinvent our business at Dynatrace, before someone else disrupted the market. Over the course of three years, we changed everything - our technology, our culture and our brand image. In this session we'll discuss how we navigated through our own innovator's dilemma, and share takeaways from our experience that you can apply to your own organization.
Nutanix has been named "Platinum Sponsor" of CloudEXPO | DevOpsSUMMIT | DXWorldEXPO New York, which will take place November 12-13, 2018 in New York City. Nutanix makes infrastructure invisible, elevating IT to focus on the applications and services that power their business. The Nutanix Enterprise Cloud Platform blends web-scale engineering and consumer-grade design to natively converge server, storage, virtualization and networking into a resilient, software-defined solution with rich machine intelligence.