The biggest challenge enterprises face in cloud today is solving how to reconcile existing investments with their future strategies. No enterprise is greenfield, nor can a company clean slate its entire IT stack. From the beginning, Apprenda has focused 100% of its energy on solving this challenge for our customers.
Our customers have told us this is monumentally important, but we still have more challenges to solve for them. Chief among those is offering deep support for cloud-native applications, such as Internet of Things (IoT) apps, new web-scale consumer apps, and next-generation front ends.
That’s why today Apprenda is thrilled to announce that over the course of the next few product releases we’ll be merging Kubernetes, the open-source container orchestration system from Google, into our architecture and joining the Kubernetes community. This means customers will have a no-compromises experience, with best-in-class architecture for both existing applications as well as cloud-native, container-based applications. We’re going to be competitive with any PaaS player on cloud-native support while continuing to be the only player that brings your existing apps and infrastructure along for the ride.
Absorbing the Kubernetes architecture into our existing stack is a natural technology decision for us. At a technical level, we’re integrating Apprenda’s existing cluster management stack and operational suite with Kubernetes.
This architectural change will not be disruptive to how Apprenda’s technology behaves today. Bringing Kubernetes into the fold will function as an enhancement to our existing capabilities. We’ll still provide the market’s best Windows and Linux capabilities, and we’ll continue to advance our investments in Windows via Nanoserver and Hyper-V. We’ve been working closely with Microsoft on this and will continue to give .NET developers a fantastic container orchestration story.
An existing customer’s Apprenda experience post-Kubernetes will be exactly like their experience pre-Kubernetes, only enhanced with new cloud-native capabilities. If you’re already using Apprenda, you will absorb Kubernetes as a traditional Apprenda upgrade as we push out new releases.
We’re bringing forward years of R&D time to operationalize these investments for the enterprise. Apprenda’s capabilities–including policy based management, a full suite of IT operations tools, and hybrid cloud deployment–will be available in a single, unified platform that supports the entire journey to cloud native for our customers.
We also want to contribute back. Apprenda has years of deep knowledge in enterprise tech, and we look forward to helping Kubernetes evolve. As an organization, we will be an active, committing member of the Kubernetes community.
Given the myriad options for enhancing Apprenda’s cloud native capabilities, we had to evaluate our options. These options included technologies like Docker Swarm, Apache Mesos, and even Cloud Foundry.
So why did we choose Kubernetes? There were three major reasons:
1. Technology – We executed a diligent evaluation of various technologies and found Kubernetes was not only at the right altitude in the stack, but it was also lightweight and easy to work with. Kubernetes elegantly solves the major challenges of cluster computing and container orchestration. If anyone understands cloud scale, it’s Google, and it’s evident in Kubernetes’ thoughtful architecture. Other platforms we evaluated were designed by companies and organizations with little to no real world experience in running global cloud platforms. Kubernetes was designed by Google, putting the burden of credibility on the other choices. As a cloud architecture substrate, why wouldn’t you want to leverage what one of the world’s best cloud companies has produced?
2. Community – Apprenda is built on some of the world’s best open-source projects. Needless to say, quality, intention, and proper stewardship of the projects we depend on are key. A requirement for Apprenda was that whatever technology we chose, it had to be backed by a diverse, large, and growing community that wasn’t designed to benefit a single, focal commercial entity. We found that many of the other technologies we considered provided a perception of diversity, but are predominantly driven by a single commercial organization that tends to benefit disproportionately each time someone joins their “community.” Kubernetes is truly open and was the most welcoming to our company. Through Kubernetes, Apprenda can guarantee customers will experience the benefits of a fair and honest community with good governance, allowing them to reap the benefits of minimal lock-in and maximum support from a community of world-class vendors.
3. Market – Apprenda’s job is to make sure that we execute a durable strategy that aligns with where the market is going, ensuring customer’s stability in their investments. This means that of the technologies evaluated, we wanted to align with a cloud-native technology that would likely be a force alongside Apprenda in shaping customer expectations and the market narrative. Kubernetes’ technology direction, community sanctity, and groundswell of support all show that it will be a mainstay in IT. For the broad, diverse enterprise market and developer use cases that we serve we think it’s the best choice. (We’ll have future blog posts that dig into this.)
Our first foray into the Kubernetes community will be at KubeCon on March 10th and 11th. Apprenda is a top sponsor at KubeCon, and I’ll be giving a talk about the future of the company and how we are incorporating Kubernetes. And over the course of the coming months, we’ll release additional information on our plans and progress.
When my co-founders and I started Apprenda in 2007, we knew we wanted to solve two massive problems faced by enterprises: to drastically speed up time to market for application development and delivery, and increase the efficiency of how IT runs large application portfolios. Consumers wanted and still want software for everything, which means enterprises have pressure to write more custom software than ever and to get that software to market quickly.
The key to success was ensuring that these new applications could be built in the context of the existing applications and infrastructure that enterprises have already invested in. Why? Because these new apps wouldn’t be an island and wouldn’t re-invent core business processes. Each new application would likely rely on capabilities captured by the IP of existing applications.
A bank, for example, might create a new way to engage with customers via a mobile app to allow for basic transactions such as money transfers or check deposits, which might require scalable services to back the mobile app, but the processes for transferring and depositing have been running for 10 to 20 years on existing transactional software systems. The new depends on the old.
This poses a challenge since public cloud showed the world that the way to achieve brutal speed and scale was through cloud architecture patterns supported by modern cloud platforms. Many existing applications and infrastructure systems within the enterprise were not built in anticipation of this “cloud architecture” revolution and aren’t very compatible. Reading the tea leaves and seeing what public cloud companies were doing, it became apparent to us that our mission at Apprenda was to build a cloud platform that reconciled these seemingly opposed truths.
If we could make these incompatible paradigms compatible, we could give customers a pragmatic cloud platform they could use to convert the infrastructure of their choice (on-premises or public) into a high performance cloud operating model that not only supported their cloud native efforts, but also gave them a better stack to make their existing applications and processes an order of magnitude more nimble and efficient.
I want to emphasize one more time that we are obsessed with existing apps. We believe that in order to be easily adoptable, on-premises cloud platforms need to support existing applications and welcome them to the platform the best they can.
The tricky part is that existing apps don’t lend themselves well to clustered environments the way cloud-native apps do. Traditional app servers like JBoss, WebSphere, and IIS are non-volatile and inefficient, and they aren’t embedded in apps. Apprenda has a native cluster manager that can handle sub-optimized patterns and make them act like cloud-native architectures. Many existing apps use relational databases and older architectural patterns, including Windows Services and Linux daemons. Apprenda manages these assets directly on the OS fabric and instruments them into a cloud-like op model.
In order to support this existing app use case and support new, cloud-native applications that took on lighter weight dependencies, we built our own container technology. Remember, this was 2007, and technologies like Docker didn’t exist.
In early 2015, we decided to build pluggable container support, ensuring we could welcome containers other than our own into the fold easily and not just use our container tech. We started with Docker as a container for cloud native apps. This meant that when deploying an existing application, Apprenda’s architecture would do what it’s always done, but for cloud-native Docker apps. Apprenda would build, orchestrate, and manage Docker containers.
While this was a good start, we knew it wouldn’t be enough. Container orchestration architecture isn’t well suited to support existing apps and existing app architectures aren’t well suited for modern cloud-native platform patterns. We wanted to give our customers world class container management, orchestration, and scalability, leading us to our Kubernetes decision.
An exciting future awaits enterprise IT teams, where existing and new, cloud-native applications co-exist on a single world-class platform. We’re bringing this new level of value to market with Kubernetes as part of our core technology stack. It’s been fascinating to watch enterprises as they adopt cloud platforms, and Kubernetes is going to take an increasingly important role in their technology stories.
There is no doubt that we have a lot of work ahead of us. 2016 is going to offer a tremendous leap forward, and we can’t wait to offer deeper cloud-native app support to complement our incredible existing app support. If you want to be part of what we’re doing, get in touch with me on Twitter, check out the Apprenda careers page, or send a note through our contact form.