|By Plutora Blog||
|October 31, 2016 08:00 AM EDT|
When I talk to people about environment management I’m surprised by the number of people who don’t understand how much they cost. In a large organization
it isn’t immediately obvious just how much a particular environment costs. It isn’t like people announce how much a VM costs every time someone spins one up to support a QA test. People using these environments: the developers developing code and the QA testers checking features are almost never thinking about the fact that a large staging environment has a hefty price tag.
If you are an environment manager dealing with a 3rd party cloud provider such as Amazon or Rackspace the costs are known, but at a large organization with a private cloud you are often dealing with a central IT department that manages infrastructure and costs are captured as a chargeback to a business unit. In the later scenario it can be a challenge to understand exactly how much an environment costs.
In this blog post I present a simple model of the costs of various environments. How much does your company spend on production environments vs. the environments designed to support development? Before I present the model, let’s review the ideas discussed in a previous post: what are the minimum requirements for environments in a large project?
Minimum Requirements for Complex Software Projects
At a minimum, a complex software project requires between 4 and 5 separate environments, and given the continuous nature of software delivery all of these environments are required across all phases of the project. As a project matures your developers will be constantly developing software which is then delivered to QA and subsequently deployed to production. This baseline of 4-5 environments is what allows your organization to deliver and qualify software without having to stop and repurpose environments to cater to each individual phase of the software development lifecycle.
These requirements increase for a software project that involves multiple teams working on multiple releases in parallel, and with evolving approaches to production deployments there are often multiple production environments. In summary, you’ll need to plan for between 9-11 environments if you anticipate managing multiple releases in parallel.
Environments can get expensive… quickly.
Let’s take the example of a website that follows a common architecture. This project consists of web servers sitting in front of a number of application servers that query both a relational database and a NoSQL database. We’ll throw in a memory-based cache which is used to take some load off of the application servers. This is a relatively common architecture across technology platforms from more enterprise-ready systems like Java and .NET to newer approaches like Node.js.
The following diagram presents a simplified model of the resource requirements and costs associated with different kinds of environments. In these models we’ve ignored the costs of software licenses and support and focused on infrastructure costs.
http://www.plutora.com/wp-content/uploads/2014/10/Environment-Cost-Model... 300w, http://www.plutora.com/wp-content/uploads/2014/10/Environment-Cost-Model... 768w, http://www.plutora.com/wp-content/uploads/2014/10/Environment-Cost-Model... 1024w, http://www.plutora.com/wp-content/uploads/2014/10/Environment-Cost-Model... 1080w" sizes="(max-width: 3433px) 100vw, 3433px" />
As you can see in this model, the costs of environments can add up very quickly.
- Development Environments: A large software project can have one or more of these environments configured to support different teams on a project. A development environment rarely needs redundancy and developers can simplify deployment by consolidated releases to fewer VMs. In this model a development environment only needs one VM of each type and can skip the caching layer.
- Staging Environments: The closer an environment is to production the more it needs to resemble production. In this model we have a staging environment that includes all VM types in an architecture. As Staging environments are designed to model production this environment also requires a redundancy so that as QA qualifies a system for production any quality issues related to clustering can be identified.
- Production Environments: The system presented in the model shown above models a website that is designed to support millions of complex interactions per hour and which is deployed across several data centers. While not all projects require this level of redundancy, some do. As you can see in the model the cost of a production network can dominate the infrastructure budget.
What about QA and Production Patch Environments? QA environments fall in between development environments and staging environments. Some QA environments require redundancy as systems move closer to a production release, but most QA environments can look more like Development environments. Production patch environments are a step below staging environments, but they are essential for mission-critical software applications. We assign a cost of $40k/year to each.
Accounting for All Environments
Taking the model shown above, here are some simplifications that will help us model the costs of environments for a complex software project.
- Development Environments = $25k / year
- QA Environments = $40k / year
- Staging Environments = $100k / year
- Production Environments = $1.5m / year
- Production Patch Environment = $40k / year
Back to our model of an organization releasing software in parallel. Assume that a project supports four development teams working on two parallel releases. Each team requires a dedicated development environment and each release train requires dedicated QA and Staging infrastructure.
- Development Environments: 4
- QA Environments: 2
- Staging Environments: 2
- Production Environment: 1
- Production Patch Environment: 1
This organization would be spending $1.5 million per year on a production network and $420,000 per year on all other environments combined.
Conclusion: It All Adds Up
This simple model illustrates the fact that the cost of non-production environments can be a significant factor in your IT budget. If you don’t plan appropriate and model your environment requirements and allocation needs in advance with Plutora you’ll end up surprising the business with six-figure budget requests.
In the next post I’m going to write about some of the factors that drive these costs higher. One such factor which can easily be avoided with Plutora is unclaimed environments. In this model we have 10 environments, but when an organization manages 30-40 environments it is very common that entire departments are allocated environments that are forgotten or abandoned for months or years.
WebRTC is about the data channel as much as about video and audio conferencing. However, basically all commercial WebRTC applications have been built with a focus on audio and video. The handling of “data” has been limited to text chat and file download – all other data sharing seems to end with screensharing. What is holding back a more intensive use of peer-to-peer data? In her session at @ThingsExpo, Dr Silvia Pfeiffer, WebRTC Applications Team Lead at National ICT Australia, looked at differ...
Feb. 20, 2017 10:15 PM EST Reads: 6,188
Without a clear strategy for cost control and an architecture designed with cloud services in mind, costs and operational performance can quickly get out of control. To avoid multiple architectural redesigns requires extensive thought and planning. Boundary (now part of BMC) launched a new public-facing multi-tenant high resolution monitoring service on Amazon AWS two years ago, facing challenges and learning best practices in the early days of the new service. In his session at 19th Cloud Exp...
Feb. 20, 2017 10:15 PM EST Reads: 3,311
For basic one-to-one voice or video calling solutions, WebRTC has proven to be a very powerful technology. Although WebRTC’s core functionality is to provide secure, real-time p2p media streaming, leveraging native platform features and server-side components brings up new communication capabilities for web and native mobile applications, allowing for advanced multi-user use cases such as video broadcasting, conferencing, and media recording.
Feb. 20, 2017 10:15 PM EST Reads: 5,894
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
Feb. 20, 2017 09:15 PM EST Reads: 893
"Plutora provides release and testing environment capabilities to the enterprise," explained Dalibor Siroky, Director and Co-founder of Plutora, in this SYS-CON.tv interview at @DevOpsSummit, held June 9-11, 2015, at the Javits Center in New York City.
Feb. 20, 2017 09:15 PM EST Reads: 4,492
Security, data privacy, reliability and regulatory compliance are critical factors when evaluating whether to move business applications from in-house client hosted environments to a cloud platform. In her session at 18th Cloud Expo, Vandana Viswanathan, Associate Director at Cognizant, In this session, will provide an orientation to the five stages required to implement a cloud hosted solution validation strategy.
Feb. 20, 2017 08:45 PM EST Reads: 4,326
SYS-CON Events announced today that CA Technologies has been named "Platinum Sponsor" of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, New York, and 21st International Cloud Expo, which will take place in November in Silicon Valley, California.
Feb. 20, 2017 08:30 PM EST Reads: 1,493
The security needs of IoT environments require a strong, proven approach to maintain security, trust and privacy in their ecosystem. Assurance and protection of device identity, secure data encryption and authentication are the key security challenges organizations are trying to address when integrating IoT devices. This holds true for IoT applications in a wide range of industries, for example, healthcare, consumer devices, and manufacturing. In his session at @ThingsExpo, Lancen LaChance, vic...
Feb. 20, 2017 07:00 PM EST Reads: 8,229
Wooed by the promise of faster innovation, lower TCO, and greater agility, businesses of every shape and size have embraced the cloud at every layer of the IT stack – from apps to file sharing to infrastructure. The typical organization currently uses more than a dozen sanctioned cloud apps and will shift more than half of all workloads to the cloud by 2018. Such cloud investments have delivered measurable benefits. But they’ve also resulted in some unintended side-effects: complexity and risk. ...
Feb. 20, 2017 06:15 PM EST Reads: 828
SYS-CON Events announced today that delaPlex will exhibit at SYS-CON's @CloudExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. delaPlex pioneered Software Development as a Service (SDaaS), which provides scalable resources to build, test, and deploy software. It’s a fast and more reliable way to develop a new product or expand your in-house team.
Feb. 20, 2017 06:15 PM EST Reads: 997
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...
Feb. 20, 2017 05:45 PM EST Reads: 534
More and more brands have jumped on the IoT bandwagon. We have an excess of wearables – activity trackers, smartwatches, smart glasses and sneakers, and more that track seemingly endless datapoints. However, most consumers have no idea what “IoT” means. Creating more wearables that track data shouldn't be the aim of brands; delivering meaningful, tangible relevance to their users should be. We're in a period in which the IoT pendulum is still swinging. Initially, it swung toward "smart for smart...
Feb. 20, 2017 05:30 PM EST Reads: 3,913
When you focus on a journey from up-close, you look at your own technical and cultural history and how you changed it for the benefit of the customer. This was our starting point: too many integration issues, 13 SWP days and very long cycles. It was evident that in this fast-paced industry we could no longer afford this reality. We needed something that would take us beyond reducing the development lifecycles, CI and Agile methodologies. We made a fundamental difference, even changed our culture...
Feb. 20, 2017 05:30 PM EST Reads: 2,271
The Internet of Things can drive efficiency for airlines and airports. In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect with GE, and Sudip Majumder, senior director of development at Oracle, discussed the technical details of the connected airline baggage and related social media solutions. These IoT applications will enhance travelers' journey experience and drive efficiency for the airlines and the airports.
Feb. 20, 2017 05:15 PM EST Reads: 971
In his keynote at @ThingsExpo, Chris Matthieu, Director of IoT Engineering at Citrix and co-founder and CTO of Octoblu, focused on building an IoT platform and company. He provided a behind-the-scenes look at Octoblu’s platform, business, and pivots along the way (including the Citrix acquisition of Octoblu).
Feb. 20, 2017 02:45 PM EST Reads: 508