As we are talking to more and more customers in the DevOps space, one thing that comes out of the discussion is “How does Containers & Container Clusters help in DevOps excellence ?”. Hence I thought a blog post focused on this would be of great help to those who are certain that DevOps & PaaS is the way to go, but not sure how container tech would help. So let us start with our ultimate goal for a PaaS platform ie, achieving DevOps experience (DOX), a balance between calm & steady. Let us see how containers & container clusters can help in achieving this balance.
Container Technology, a saviour for Developers
Container technology like Docker can be a saviour for Developers by helping them to make frequent & hassle free releases by providing :
Consistent environments across Dev & Test and across different OS platforms
- Isolated application view including networks, userIDs, process trees etc and better grouping of application dependencies helps in sandboxing your application deployments and isolating your module development
- Easier Version control by tagging and versioning a unit tested version of your application.
- Community to your rescue: with pre-built container images which can be readily used and customised.
If you are not familiar with running your application using Docker, you must try Eclipse Che.
Container Clusters, simplify operations through immutable infrastructures
Container clusters like Kubernetes can rescue the IT/Ops team by providing a resilient environment.
Secondly, we need to understand what an immutable infrastructure and why is it important for Operations team. Immutable infrastructure is where the components get replaced during every other deployment rather than updating an existing infrastructure. In the container world, it is to launch a new container rather than updating an existing one. The relevance of this in deployment automation is explained here.
Thus, container clusters help in:
- Distributed web scale deployments
- Scheduling & Auto scaling of application through continuous monitoring and health check. Container clusters provide different scheduling policies which automatically places / deploys the applications based on the pre-defined SLAs or on the best possible node.
- Application Backup and recovery inherent through container hubs. Container image and the filesystem can be backed up using simple steps and the traditional backup tools can be used to backup the container volumes or database dumps.
- Layering the applications and changes helps in faster deployments, rather than rebuilding and redeploying the entire application stack. This automatically impacts the application availability and speed of updates.
There are a variety of Kubernetes deployment & management platforms like Google Kubernetes Engine (GKE), OpenStack Magnum, KAWS , Univa’s Navops that can help you to bring up a Kubernetes environment quickly.
DOX platforms for DevOps engineers
Putting these two together, a DOX focused PaaS platform like goPaddle comes as a rescue to the DevOps team.
DOX focused PaaS platforms like goPaddle are built using Docker & Kubernetes, thus bringing in the best of both the worlds. In addition, it helps single click Continuous Build, Integration & Deployment with auto-scaling, auto-healing built-in.
For more information, talk to us firstname.lastname@example.org and Stay tuned for more interesting facts on PaaS & goPaddle.
This post was originally published as a LinkedIn post here.