Cloud Native, You Keep Using Those Words
September 25, 2020
Applications
Ask a hundred IT pros and their managers what “cloud native” is, and you’ll get as many different definitions. In part it’s because public cloud providers (PCPs) seek to provide all things to all IT teams, but it’s also because each organization has different goals for cloud. If I could get away with it, I’d enclose cloud native in quotes whenever it’s unclear what business expectations are for PCPs. But if you strip away the marketing bullet points and amazing stage demos at conferences, cloud is pretty simple. Cloud providers are the world’s largest managed service providers (MSPs), offering outsourced, pay-as-you-go infrastructure at scale. Their real “service primitives” are the same as what you run on-premises: storage, compute, and security/access. No matter how magical the more complex solution services seem to be, they’re all built out of basic parts, like LEGO bricks. The trick is not getting distracted by a few special pieces intended to differentiate one PCP from another.
Do We Move to Cloud or Does Cloud Come to Us?
Both the eventual benefit and initial challenges with cloud stem from their API-based operations model. For many teams, it’s their first big jump into API-based and software-defined infrastructure in production. Gone is the on-premises architecture we can (and sometimes do) describe in our sleep, cable management, galvanized chassis rack-and-stack, and command-line configuration. With cloud, every element in the data center becomes abstracted onto someone else’s hardware, and the only way to manage and monitor it is with scripts, automation, JSON, and YAML. Gag, YAML. Going from metal you can touch to moving your most critical data and processes to nothing more than a few characters on a screen is nontrivial.
Adding to long term-complexity, only a few years ago, cloud sales teams still ended most presentations with, “{feature}{feature}{feature}, and of course you’ll save money!” We were encouraged to lift and shift everything in sight, with service consumption discounts if we were early adopters. Fast-forward to now, when we’ve repackaged or modernized custom and packaged applications that ran great on-premises for ten years and found cloud isn’t automatically cheaper after all. They’re MSPs, remember?
Today, teams have learned to zoom out their observability to include cloud application performance analogs and indirect costs for transformation, training, and new tools. If you’re overprovisioned on-premises, your hardware efficiency isn’t meeting demand, global access to your applications is a challenge, or on-premises manual configuration wastes admin time, then cloud can help manage cost. But without a way to monitor, compare, and contrast cloud resources to the on-premises infrastructure it replaces, cloud is unlikely to be less expensive. Experience shows it can be slightly or even substantially more expensive. PCPs are still running similar hardware, and you’re paying them to manage it for you at a profit.
Born-in-the-Cloud Magical Unicorns
Many companies you’ll hear about—like Amazon and Netflix—skipped over an awkward adolescence. They never had on-prem systems outside of campus networks and random Oracle boxes for the Finance team. They’re also fond of the same open-source technology cloud platforms are themselves built on. However, this doesn’t mean these companies aren’t also in the midst of cloud re-adoption. Cloud providers—most famously Amazon—have been quick to reverse-engineer API-compatible versions of many foundational technologies to offer them as license-free managed services. For example, you likely see plenty of promotion for webinars about running Kubernetes, but most enterprise developers aren’t too interested beyond a certain level. Make no mistake, Kubernetes is interesting and they love containers—but they’re happy to let someone else worry about maintaining the platforms, which make them sing.
This focus is different from the way enterprise works. Enterprise traditionally bought packaged applications shipped with mature monitoring and management interfaces. A lot of early enterprise cloud projects were either high-profile bespoke projects or rogue IT on external teams. There was also a tendency to cling to VMs with plenty of lift-and-shift but only a bit of direct cloud-native service consumption like storage.
Once the early adopters were on board, however, cloud adoption slowed a bit, and PCPs realized they’d need to offer richer services to replace package applications outright instead of just offering parts of those applications. Soon, enterprise IT teams began experimenting with database as a service, NoSQL, graph, and other nontraditional databases. Where early cloud migration was building with individual LEGO pieces, databases and related application services became mini platforms in and of themselves, sold as complete kits.
This HelloCloud() confusion overloads the term “cloud native,” which means something different from team to team depending on how they were introduced. Also, less-than-helpful has been some vendors’ hand-waving. “Oh, we do on-prem, cloud, hyperconverged, same-same.” Because they’re not at all the same thing for individual businesses.
Leave the Network, Take the Cannoli
What tied different organizations together in the rush to cloud was losing the one underlying component most of the businesses take for granted: the network. It’s not lost per se, but it might as well be if it’s intentionally made invisible on your behalf. With cloud-native applications—cloud-anything, really—root access to the underlying physical infrastructure isn’t allowed.
No MSP will or can grant direct access to the network in a shared, multitenant service. Executives signing cloud contracts weren’t the admins in the trenches surprised to find they couldn’t see the “firewall” or watch traffic flow from virtual private cloud to on-prem. And in the early days, migrating most network monitoring applications to cloud was a nonstarter. They just didn’t have anything to do.
Fortunately, network monitoring vendors are catching up, especially when they also offer visibility beyond the network. In some ways, it’s an inversion of the core of the data center, from a physical network supporting application demand to virtual applications defining network service requirements. There’s still some confusion because some “cloud-native” vendors are quick to dismiss established enterprise needs. “Hey, we have everything covered for you!” remains easy to say. But IT pros have learned a lot in the last few years and are quick to demand specifics.
As usual, IT is bringing the modern definition of cloud native into focus. First, public cloud providers don’t always understand the nuances of enterprise operations. This is understandable. If you’re a born-in-the-cloud expert, you generally haven’t spent 20 years also becoming an enterprise ops guru. This is a big reason for the success of Azure with Microsoft’s enterprise expertise and the hiring binges at AWS and GCP. Second, it’s challenging for traditional enterprise vendors to be cloud-native experts for the same reason. For them, hiring can help—but more often, enterprise leadership finds upskilling is key to better performance, more reliable services, and happier teams. IT professionals by their nature are people who can figure out how to make washing machines fly. And they’re the ones reducing confusion and discovering what modern cloud native can do.
The Future of IT
It might seem unimportant in 2020 to worry about something as trivial as nomenclature, but with cloud, it’s never been more important. Admins, managers, and execs alike need to know everyone on the team shares the same understanding. Cloud isn’t just about transforming the business, improving quality and nimbleness, or reducing cost. For many businesses, cloud is their future. It’s also no longer optional—the competition is making the same moves. What the competition may not know, however, is that to use cloud the way it’s designed, teams must also use cloud the way it’s constructed.
Application modernization to break apart services, focusing on reuse, investing heavily in automation, and rethinking monitoring and management are easier with maturing tools. Overcoming the hybridized hairball of cloud services, cloud-native technologies, traditional enterprise operations, traditional enterprise packages, and custom software is easier with integrated performance views and troubleshooting. Shared nomenclature and data can even make it possible to tease apart locked business processes, freeing opportunity held hostage by unexpected complexity.
If enterprise can learn to wield cloud-native services like cloud-native pros, they can gain the scalability, flexibility, and ability to provide new services in new ways at a reasonable cost. And when they do, cloud will deliver on its original promises made a decade ago. Of course, IT professionals are leading the charge to understand and truly incorporate “cloud native.” Making tech deliver on its promise is what IT does.
Share:
Patrick Hubbard
With over 20 years of IT experience spanning network management, data center, storage networks, VoIP, virtualization, and more, Hubbard's broad knowledge and hands-on expertise affirm…
Read more