- [Instructor] Now that you know what Kubernetes
is all about, it's time to discuss
other platforms that are similar.
We're in the software world, after all,
and there are many ways to solve the same problem.
Before we begin, I need to get something off my chest.
Container orchestration is a very complicated topic.
When containers first became a hot topic, a lot of folks,
enterprises included, were building their own
orchestration tools in house, because the landscape
was very nascent at that time.
Eventually, almost every company ended up moving
to one of the solutions I'll talk about in this chapter.
So in short, don't build your own orchestrator,
you'll only regret it, and end up moving
to something else anyways.
The cloud data landscape of today is typically based
around Kubernetes, but there are also other technologies
and architectures that are popular.
Mesos and Rancher are popular from a container perspective,
and serverless technologies are also gaining popularity
for application modernization.
There are also Cloud-Specific Technologies, like Amazon EC2
Container Service or Google Anthos that are
technologies built specifically for those ecosystems.
But we won't spend too much time
comparing them in this section.
We talked about Kubernetes, so let's take a look
at some of its competitors.
Mesos is written in C++, with APIs in Java, C++ and Python.
It has a distributed kernel where many machines
act as one logical entity.
The Marathon framework in Mesos is used to schedule
and execute tasks, and finally, Mesos has a more
complex architecture compared to other technologies
like Dock or Swarm, for example.
Typical users of Mesos are larger enterprises
that require a lot of compute,
or job- or task-oriented workloads.
Mesos is often used by companies that have to perform
big data jobs, it's driven by developers, rather than
operations, but requires an ops team to manage the tool.
Rancher is a full stack container management platform,
it allows you to install and manage Kubernetes clusters
easily, whether on premise or in the cloud.
It was an early player in the container ecosystem, and had
orchestration concepts, even before they became a hot topic.
It has a great user interface and API
to interact with clusters,
and provides enterprise support for its tooling.
I've seen a lot of folks use Rancher, from small teams
to large enterprises.
Folks that like to use Rancher really enjoy
the user interface and APIs, and allows them to manage
their infrastructure very effectively.
This chart plots the number of hosts and containers
versus the size of the development team.
If you're running a lean shop, you should consider
some of the solutions on the left.
If you're a larger enterprise, you probably
lean towards one of the more feature-rich
solutions on the right.
Another perspective on the container space
is to look at yearly surveys.
There are a few of these, from the CNCF Survey,
to Datadog, to devops.com, et cetera.
We'll look at the Cloud Native Computing Foundation
Survey, from 2019, which states that: containers
are the new normal with 84% use in production this year,
and Kubernetes leading the charge in terms of
container platforms, with 78% of the respondents
saying that they're using Kubernetes in production already.
Another trend we continue to see is that many
enterprises have joined the CNCF, which backs Kubernetes.
As a article in ARCHITECT states: At this point,
literally every U.S.-based technology vendor or cloud
provider that matters is a CNCF member and most
have a clear and very active Kubernetes strategy.
While Kubernetes is very popular, there is also
a trend for companies to use serverless technologies.
This might be something you'd consider if you're building
all your infrastructure from scratch and you're running
your infrastructure on a cloud provider.
We've covered other competing technologies in this section.
Join me in the next chapter to dive
into the Kubernetes terminology and landscape.