Our Organization is on a journey to migrate from VM based Cloud (VMware) to the Containers environment (OPenshift) one query being asked a lot .
In terms of benefits (Cost) how much savings can be acheived by moving to containers like based on better reosurce sharing and avoiding performance compromises due to hypervisor layer .
Based on your experience can you suggest what is experience ? what are high level benefits an organization can acheive by this migration .
Answering this question requires in-depth knowledge of your architecture, the profile of applications running, the infrastructure, and a lot more. There are many details to be aware of.
As a VERY broad response, containers usually make more efficient usage of the resources. Containers talk directly to the host SO (avoiding the hypervisor), making calls a little bit cheap.
But the main advantage of containers is not the performance, but the density. As containers "share" the underlying OS, they are much lighter than VM. This density allows running dozens of containers on a server where only a bunch of VM can run.
Containers also share persistence layers that are both non-writable and common to several images. So, if your container images share, say, the same base image, the amount of disk space saved is enormous.
This saving is especially significant when the infrastructure runs on an external cloud provider, where every CPU cycle and MB transferred have a cost.
Anyway, containers are not for free. Running any container management platform (say OpenShift) require dedicated infrastructure, knowledge of container management, access control, etc. Nothing new in comparison to VM management platforms, but worth having it in mind, as this is a high cost when starting with containers.
As said, many details can change the numbers. In general, and long-term, containers tend to be the most cost-saving option, if you are willing to pay the initial migration costs.
Hope it helps.
P.S. Most banks are migrating from VM-based solutions to Container-based solutions. If your applications are something similar to what they run, you can make sure they counted all dollars.
To add on to what Jordi said, there are a couple of clear costs: the direct cost of hardware and the operating cost. As said above, these require a solid understanding of your architecture and organization to really estimate.
As an example of the complexity, I helped a team migrate from VMs to Kubernetes and we reduced the VM count by more then half. However, disks required higher iops in order to support hosts packed with multiple high traffic applications writing logs and reading files. The character of your applications may be very different.
There was also an organizational impact. After the initial migration had stabilized and our team devOps practices had improved, there was a welcome reduction in the frequency of incidents. In many cases recovery was automated. Our on-call and manual operations almost disappeared. However, we required dev and ops engineers with a much higher skill.
The other $ value that is not as easy to account for is the impact of highly-automatable infrastructure on your business. OpenShift and Kubernetes help enable devOps practices like continuous delivery in order to deliver business value. The team I worked with was able to accelerate considerably and develop features and innovations in timelines that would be previously unthinkable.
Adding on to the complexity, increased features meant increased infrastructure cost, but this was all dwarfed by the enormous business value.