In This Chapter
Now that you know a bit about why an enterprise cloud is important, I’d like to chat a bit about what an enterprise cloud actually is. In this chapter, you find out about the five critical characteristics that define an enterprise cloud and discover how each of these characteristics is vital to your enterprise cloud journey.
I also spend a bit of time discussing security, an increasingly important consideration for all organizations large and small.
Chapter 2 shows that the enterprise cloud is a collection of characteristics of the public and private cloud. The beauty of the enterprise cloud is that it infuses an organization with an infrastructure that is flexible and agile, and provides complete choice of where to run workloads.
The enterprise cloud is a model for IT infrastructure and platform services that delivers the advantages of public cloud services for enterprise applications without compromising on the value provided by private datacenter environments.
Think of it this way: You get the best of both worlds!
If private cloud — upon which enterprise cloud is based — carries with it such benefits, why hasn’t it been done before?
Well, others have tried . . . and they have failed, or at least their efforts have not proven completely successful. In general, it’s the fault of storage as a resource.
The vision of private and hybrid clouds is not new. Businesses have tried to deploy private clouds using cloud management platforms, such as OpenStack, that deliver self‐service provisioning, monitoring, billing, and chargeback. However, the underlying infrastructure is still based on scale‐up storage accessed over a storage network that is deployed and scaled in big chunks. What’s needed is a re‐platforming of the enterprise datacenter. You cannot build cloud capabilities on traditional three‐tier infrastructure with scale‐up storage.
Scale‐up storage has hard limits. At a certain point, the shared components — controllers and the network fabric — get overwhelmed. It’s inevitable. The question is not if this will happen, but when. As a result, many scale‐up storage systems are bundled with spec sheets that tell customers that they can grow only so far before they have to add more shared components. Adding these components adds complexity to the system.
The end result is unpredictability, a scenario that cannot be tolerated in the modern datacenter. Businesses must be able to operate with the expectation that their workloads will operate continuously at predictable levels. In scale‐up, as you add more burden to the shared resources, performance levels can be affected.
Even many of today’s array‐based scale‐out storage methodologies begin to crumble under their own weight as they grow. Much of this has to with data locality, which I discuss in Chapter 1. The bigger these constructs grow, the more data has to traverse a storage networking fabric. Eventually, as data gets farther and farther from the CPU and RAM, performance problems ensue.
A reliable datacenter infrastructure combines the ability to leverage scale‐out storage while maintaining data locality.
Storage continues to be the resource that holds back progress on the datacenter journey.
Here’s a high level look at how to define the enterprise cloud: The enterprise cloud delivers the frictionless agility, simplicity, and fractional consumption of public cloud services while providing control over performance, location of data and services, and choice of platforms.
Five key components comprise the enterprise cloud:
The next section looks at each of these ingredients in a bit more depth.
Regardless of where you decide to run your critical applications, you need a full set of infrastructure to do it. However, before you run out to buy a bunch of storage to connect to your servers, you should know a number of things.
In Chapter 1, I briefly discuss the concept of the softwaredefined datacenter (SDDC). Although a datacenter based on SDDC principles requires hardware, the hardware is not the focus.
Instead, with the SDDC, you transition to hardware components that are easily programmable. Organizations should consider infrastructure that is delivered as a set of softwaredefined services, including file, block, and object storage, with integrated data services such as protection and availability for applications.
Rather than buying a super-expensive monolithic SAN, buy infrastructure that you can compose to meet the needs of your individual workloads.
It goes without saying that virtualization is — and will remain — at the core of everything IT does. Virtualization should be a default and key component in any platform you use. Make sure you choose an environment in which server virtualization capabilities are built into the infrastructure stack. Virtualization should be treated as a feature, not a separate product.
Most businesses don’t plan to stay stagnant. Most intend to grow as they onboard new customers and begin delivering new products. To maintain customer and product growth, you need to be able to easily grow the environment.
Your entire infrastructure stack should be built with these web-scale engineering characteristics:
In short, you need an infrastructure that allows you to scale without limits and without single points of failure.
The platform needn’t be limited to the private cloud or your local datacenter either. You should have the ability to support hybrid delivery of applications — that is, you should be able to provide choice between on-premises infrastructure and public cloud services for your business-facing applications.
Your enterprise cloud environment also must offer powerful data protection and disaster recovery options, analytics to streamline operations, and other critical services.
With the growing diversity in infrastructure needs for applications, natural silos appear on the infrastructure side. For example, some demanding Oracle and SQL Server databases may be run in bare metal environments while others are virtualized. These silos make the process of managing infrastructure incredibly challenging, because you have to manage each silo separately. The enterprise cloud needs to deliver infrastructure capabilities that can support bare metal, virtualized, and containerized environments for any application.
Infrastructure is the fundamental building block for the enterprise cloud. Past attempts at building private clouds have focused on the software layer — such as on cloud management platforms — that sit on top of infrastructure and deliver self-service, monitoring, billing, and chargeback capabilities. But unless infrastructure is built to scale out and without single points of failure, you will not end up with a cloudlike environment.
Figure 3-1 provides a look what the web-scale world looks like.
Figure 3-1: The web-scale world.
This is not to say that you’ll be able to walk away from your datacenter and throw away the keys. You’ll need manual steps here and there, but you shouldn’t routinely get involved in ongoing operations.
As you begin to deploy an enterprise cloud and a combination of public and private cloud, the ability to reduce administrative overhead becomes critical. Smaller overhead is one of the ways organizations can reduce OpEx associated with datacenter management.
Your enterprise cloud should have a universal control plane for all environments, including your public and private cloud. The control plane in an enterprise cloud is the management layer. By using a single universal control plane, you effectively eliminate the need to switch management silos as your business goes from one environment to another for applications. You can see for yourself if you’re moving along the path toward a universal control plane. Do you have a separate management infrastructure for single components, such as virtualization? If you do, you’re building management silos and should reevaluate how you’re moving forward.
Although the 1980’s film The Terminator foretold the rise of the artificial intelligence SkyNet, humanity did not heed the warning and we’re plowing ahead with efforts to turn decisionmaking over to robots and other technology-based constructs. That said, never fear! What’s the worst that could happen?
Seriously, though, we’ve come a long way with machine learning tools. Humans now can program systems that actively learn about their environment and can help administrators automate many mundane, yet critical, datacenter operations.
With the tools at our disposal, we can implement machine intelligence and self-learning capabilities to drive end-to-end automation where the platform becomes smarter with decision making and recommendations over time.
Imagine a world in which you walk into the datacenter and find half of your nodes burned out, but you didn’t even know because your management layer shifted those workloads to operational nodes. Or, imagine a scenario in which your management layer can sense that your web tier is hitting a capacity ceiling, and it automatically spins up an additional node to handle overload.
That kind of capability is here today.
In other words, you gain seamless infrastructure optimization and error remediation as part of a tight control system.
Today’s consumer electronics have plummeted in cost while growing in capabilities. Even better, they have become dead simple to use. Until recent years, enterprise hardware and software was just the opposite. You practically needed a PhD in storage to manage lots of arrays. You needed years upon years of background to even understand what you were clicking. Even worse, IT pros demanded increasing numbers of what have become known as “nerd knobs,” an unfortunate term, but one somewhat grounded in reality.
My, how times have changed!
Today, hiding things seems to be the norm, and for a good reason. The right solution hides complexity from you. What you’re provided on-screen is an outcomes-based paradigm, not a bunch of knobs where you manage inputs. Some companies have realized that they can achieve better ROI by keeping the IT administrative paradigm simple.
In the enterprise cloud, every aspect of the management experience must be built around the principle of consumer-grade design to enable ease of use. Minimize the ramp-up time needed to learn and become productive on the platform.
The goal is to remove operator involvement from everyday tasks. You need to provide true self-service capabilities so that users can request their own resources without constantly interrupting IT staff. Self-service requires high levels of automation so that results can happen without additional IT resources. For example, perhaps a developer can independently build a test/dev environment without working through an operations person.
At the same time, high levels of automation mean that you need comprehensive analytics. Why? In essence, the goal of enterprise cloud is to move IT into an exception-handling function. The routine things should just happen, whether that’s through built-in machine intelligence mechanisms or user self-service. When an exception occurs, an IT operations person should be immediately notified to take appropriate action. Automation doesn’t mean IT never touches infrastructure again; it simply means IT needn’t touch infrastructure on a daily basis.
Figure 3-2 helps you envision how the pieces fit together. At the bottom is a universal control plane upon which the enterprise infrastructure — public and private — resides. Above the environments are the three principles of zero-click administration: consumer grade design, artificial intelligence, and automation/analytics.
Figure 3-2: Understand how the universal control plane supports enterprise cloud.
The best part about implementing services on the public cloud is the ability to expand and contract usage on the fly. If you consider typical legacy enterprise environments, this isn’t generally the case, for a variety of reasons:
Although you can use the public cloud to counter these issues, you know that the public cloud isn’t always an option.
With a solution that enables enterprise cloud capabilities, you gain the ability to deploy workloads that can flex, much like in the public cloud. You get pay-as-you-grow scaling. If resources become low, you simply add a hyperconverged infrastructure appliance. You don’t need to overprovision storage, for example. Further, you avoid infrastructure sitting idle.
With hyperconverged infrastructure-supported enterprise cloud services, you can adopt a “just in time” infrastructure mentality that is super-easy to scale. You simply call your vendor, ask for another node, and deploy it. The infrastructure should be all but invisible to the users. They shouldn’t have to worry about the underlying infrastructure. They should only be focused on their workloads.
With the right enterprise cloud-centric infrastructure, you can scale up and down on demand. Figure 3-3 shows how easily you can add resources to grow an environment. As you add more nodes, you can scale resources in a linear manner.
Figure 3-3: Linear scale-out infrastructure supports the needs of the enterprise cloud.
Organizations across the globe are working hard to secure their environments against attacks from within and from the outside. As the potential fallout from security issues increases — bad PR, fines, lost business — companies need to ensure they can adequately secure their technology environments.
Security starts with the infrastructure. However, maintaining security with traditional infrastructure environments is challenging for a number of reasons. First among those reasons is the architecture of an infrastructure stack that is comprised of products from multiple vendors with a narrow and limited view of security.
Validating and maintaining a security baseline through software upgrades, for example, is time-consuming and often involves error-prone manual processes that take away from innovation and productivity. You’re messing around with security when you should be able to work on business-facing activities.
Life is a bit different in the world of the enterprise cloud. In the cloud era, security must be an integral and invisible attribute of enterprise infrastructure.
Here are the ways the enterprise cloud helps organizations address security:
Infrastructure and application security does not end at the boundaries of datacenters. The control fabric can take security policies defined and configured in one environment and port them over to the target environment, be it a private datacenter or the public cloud, automatically.
You should regularly assess the security posture of your infrastructure and application environment through a six-step, best practices-based process (shown in Figure 3-4):
Figure 3-4: Linear scale-out infrastructure supports the needs of the enterprise cloud.
Perhaps one of the most important aspects of the enterprise cloud is application mobility. When applications are not bound by the constraints imposed by the infrastructure platform, enterprise IT can pick the best physical and virtual infrastructure platforms for its applications based on its needs today.
Every environment presents different performance characteristics. Those must be coupled with business and financial drivers. On the business front, IT must adhere to service level agreements (SLAs) that dictate the levels of performance availability that must be supported by the datacenter environment. Only with an environment that has predictable levels of performance can strict SLAs be adhered to. Further, different applications may require different SLAs. Some may require high levels of performance and availability while others may be able to get by with less.
On the economic and financial front, the datacenter environment must be affordable, both at inception and on an ongoing basis. If you buy an environment that provides high levels of performance and availability, but most of your applications require less, you’re leaving money on the table. The same goes for available capacity in different areas of the environment. You must ensure that your environment can support different kinds of applications and has sufficient capacity in each area to support the workloads that will run there.
In other words, you run applications in the right environment at the right time — one of the core tenets of enterprise cloud. Applications must be able to move freely between hypervisors, to any public cloud service, and to container-based environments.
Any cloud, any time.
For this any-to-any freedom to be effective, it should
Traditional infrastructure presents several barriers to application mobility:
Application mobility requires tackling each of these challenges. Your enterprise cloud environment must have the capability to overcome these barriers.
Virtualization has helped in many ways to get to this point. With enterprise cloud-based environment running on hyperconverged infrastructure, which requires workloads to be virtualized, you can quickly and easily decouple many elements of the datacenter. You can even decouple applications and their runtime environments. You effectively eliminate the data gravity issue and, because everything runs with a common management layer, you have no worries as you move applications between environments.
Further, you don’t need to learn a bunch of new management tools. In your enterprise cloud environment, all aspects are handled on a common management layer.