What is the difference between Private cloud and on-prem since both require IT staff and purchase of servers in data centers etc?.
My understanding on cloud is that companies don’t want to manage infrastructure & IT staff.
FYI I’m still learning so I’m a noob stage level lol
Private Cloud is not necessarily to be privately and physically owned by its users. You can purchase necessary hardware, setting them up as your own private cloud system and maintaining them in good health condition; but you can also rent private cloud services from providers that you trust.
On-premises is solely within your own perimeter (your offices, your datacenters, even… your houses, etc.), but Private Cloud can be anywhere not limited within your properties (or the properties that you’re legally authorized to use).
Terminology wise, Private Cloud is a form of implementation of cloud computing, an information system which is almost entirely based on virtualization technology; while On-premises mostly refers to the perimeter of your infrastructure system and mostly understood as an information system which is mostly based on physical hardware, without or with only a small presence of virtualization.
Now to a specific case as in your question: if a company set up and maintain their own private cloud system (which requires hardware maintenances plus IT staff), then what is the difference with setting up and maintaining an on-premises information system? In my opinion I would say that the key difference is elasticity.
When you run an On-premises information system, you’re limited by the specifications of available hardware resources. Take an example: you buy 10 powerful rack-mounted servers (say 64 CPUs and 512 GB of memory per server), each has its own role (app, web, DB, etc.). These servers are independent from each other with very limited to almost zero capability to share their specs to others. If your applications are underloaded, you’re kind of "wasting" the capacity of your hardware; if your applications are heavy loads, it is possible that some of your physical servers are in bottleneck while some others have no work to execute since they’re waiting for the bottlenecked ones.
With the same 10 powerful rack-mounted servers, but now you turn them into a Private Cloud system by using the entire fleet as virtualization hosts and have a hypervisor running on top (e.g. Microsoft Hyper-V, VMware vSphere, Xen, etc.). On top of that, you can create the same number of servers but now in the form of virtual machines (even more, only limited by the accumulated capacity of 10 physical servers). If your applications are underloaded, you can scale down some of your VMs to a smaller size and have more room to spin up something else in parallel if needed; if your applications are under heavy load, you can scale up some of your VMs to handle the load during a certain duration of time. Generally speaking, you have the ability to customizing your system following the real usage of applications, to maximize the utilization of hardware capacity.
That is just a rough example which has been over-simplified to help you understand the difference. In reality, the list of differences are longer 🙂
Hope that helps 🙂