Containers Are and Will Be the New Linux
As containers continue to grow in use, popularity, and sophistication, they will soon become as integral in development as the Linux operating system.
Join the DZone community and get the full member experience.Join For Free
Linux is the operating system which has revolutionized data centers over last 2 decades, and today it is the undisputed leader in application hosting platforms. It’s very hard to imagine deploying any mission critical production workloads to any other platform than Linux.
A similar revolution in packaging, deploying, and hosting applications was started a few years ago, when Docker made the Linux containers popular. After that, the growth in container adoption across the industry was exponential and it’s multiplying with each passing day.
Just as we can’t imagine deploying any critical application to a non-Linux OS, the same will be the case for containers: any application will have to be container ready to meet the web-scale demands of future (i.e. security, scalability, platform-agnostic, and easy portability). The containers are and will be the new Linux for running any critical applications and workloads.
Container Adoption Trend
The Datadog survey updated in June 2018 shows a trend where 25% of companies have already adopted Docker and the remaining ones are catching up very fast. Detailed survey data is available here.
Containers and Orchestration
With incredible orchestration support available for containers by Kubernetes, OpenShift, Apache Mesos, and Docker Swarm, managing a platform or infrastructure with thousands of containers is now much easier. One engineer alone can now manage the heterogeneous deployments of containerized application, with the help of automation power provided by orchestrators.
Kubernetes is ruling the orchestration world for Docker containers, with Google as its original creator and the CNCF as the current owner of the open source version. Kubernetes also has the best community support and exponential adaptability across the industry.
Some of the features available with orchestration support for any containerized applications:
- Horizontal auto-scaling based on resource utilization.
- Unlimited scaling of application instances when tightly integrated with cloud infrastructure.
- Self-healing of deployed application instances.
- In-service application upgrades.
- Canary upgrades.
Containers and Microservices
Kubernetes as an orchestrator is again dominating the microservices deployment world, as one of the most famous and liked platform to host and run microservices enabled with containers.
All the identified microservices first get converted into a Docker container and then goes to the Kubernetes platform for deployment, which makes them fast to deploy and easy to manage them throughout their lifecycle.
Container-based microservices make it easier in time of scaling and self-healing situations it is much faster to start and to serve the workloads.
Container Adoption in Non-Conventional Application
There are many incredible things happening around with container adoption; applications which were thought to be impossible to be run in containers are now moving to containers and are now available in containerized platforms.
A couple of years back databases were thought to be something which was kept outside of container technology, but today we have NuoDB which is a container-native and cloud-native database especially designed and developed to run on containers to support WebScale capabilities at a database level.
The Database layer getting containerized is incredibly exciting, this will make it much easier for application to WebScale as the limitation of scaling database (deployed on physical servers) on demand will go away and database running inside containers & deployed on an orchestration engine, will be easily able to scale along with application instances when needed.
Telecom Network Components Getting Containerized in Telco World:
The momentum in the telecom industry towards moving to a programmable network with SDN-NFV is gaining a rapid pace, which will help all CSPs to reduce their OPEX significantly while running all network functions in a virtualised manner instead of running them in legacy expensive hardware. This will also enable all CSPs to scale their networks rapidly and in completely automated ways as the demand increases. However the benefits of containers over the VMs are already proven in applications world, so there is a very high interest across industry to reap the same benefits for telco VNFs also.
RedHat & ONAP also covers this in details in following documents:
With these trends the days are not very far when the telecom world will be ruled by containerized platforms at both application as well as virtualized network levels.
Big Data Platform on Containers
In the big data world, the new version of HortonWorks’s HDP 3.0 Data platform is now using Docker containers to run its internal components (YARN containers, Web apps, and HDP services). Hadoop cluster was a self-managed cluster with full support for a modern and standard cluster application, so earlier it was a debatable topic if a Big Data platform would be able to run on containers and be managed by orchestrator (a cluster inside a cluster!!). But since we have the new version coming with containerized services it won’t be a surprise that in near future, we will have a Hadoop cluster running inside the Kubernetes platform.
Clouds and Containers
With the popularity of containers skyrocketing all the cloud providers (AWS, Azure, GCE, Oracle, OpenStack, etc.) have also realized that they must come up with and support a native container and Kubernetes orchestration service. Today we see almost all the cloud providers now have their own native container and orchestration services/platform. Here are a few examples of native container platforms provided by cloud companies:
AWS – KOPs
Google Cloud – GKE
Azure – Azure Kubernetes Services
RedHat OpenStack – RedHat OpenShift
Oracle Cloud – Oracle Kubernetes Engine
Again, this adoption gives us a clear trend even when organization are moving to cloud infrastructures to replace their legacy on-premises data centers that containers are still the preferred choice for deploying and running the applications.
Container-Based Private Cloud Deployment
Now when we talk about cloud and containers, there are clouds running on containers.
OpenStack is undisputed winner in the private cloud world. The entire private cloud hosting world is ruled by OpenStack, providing the power of cloud computing to the on-premises data centers for organizations across the globe.
However, now the newer versions of OpenStack can be deployed in a containerized way. Which makes the entire private cloud deployed and running in containers, incredible it is.
With these exponential adoption rates and radical changes across software industry and various product segments, it makes the statement more realistic that containers are and will be the new Linux to host and run all kinds of workloads.
Opinions expressed by DZone contributors are their own.