Public Cloud vs Private Cloud and On-premises

Over the last years many definitions describing Public and Private Cloud have been created in the constantly changing IT world. The boundaries begin to blur, and it is sometimes unclear if we are talking about a real private Cloud, a public Cloud or maybe about a local one or some private space inside a public Cloud.

  • When considering which Cloud solution would suit your business needs best, you should consider the following parameters – servers’ location, scalability, pricing and additional services.

  • Not every locally hosted Cloud should be called the Private Cloud and the server’s location does not decide on typology.

  • A new model of serverless services emerged and it offers more convenient pay-as-you-go payment option.

Common functions

After all, both Public and Private Clouds have many similarities. They surely cover the same basic functionality and in order to call the environment a Cloud, some conditions must be met.

  • First, the environment should be both scalable and fully managed from the network.
  • Secondly, all resources should be available on demand and should be distributed over multiple locations. That last condition is sometimes not met in a private Cloud environment.


Public Cloud is always ran on someone else’s premises and you do not have access to the hardware. Services in this model may be free of charge or offered in a pay-as-you-go model where the customer is paying only for what was used. Besides that, the customer has no influence on functions and features, and how they are delivered by the public provider. All services are standardized and served in the same way to all.

Private Cloud must be ran on the Company’s own hardware. It is usually called internal or enterprise Cloud which lets us assume that the environment is hosted in a private data centre. The Company that uses resources provided in this model, has to purchase, manage, and maintain all hardware and application infrastructure. Private Cloud is often located on-premises, but sometimes there is a colocation model chosen.
In both cases, all hardware should be owned by the Company who uses it. In a private Cloud environment, customers have full access to hardware and can expect a unique setup, specific for their organization. This model assumes that there is only one tenant in the environment. It means that no other company has other services or systems launched on the same hardware.

In pure and simple environment built with resources like virtual machines, it is easy to say whether it is a private or a public Cloud. It becomes much more complicated in more complex systems. Many companies who offered their colocation services for many years, started to call themselves Cloud Providers just because it is trendy. And because they have implemented some dashboard, where customers can order and manage resources over the internet. It is usually only possible to run a virtual machine with mounted storage in a defined subnet and define if it is accessible from the Internet or not. There is often no automatic scalability and no possibility to synchronize data across many locations.

Many times I have seen local companies who served some colocation services but called themselves Private Cloud Providers only because customer’s data remained in the country of origin. They offered a multi-tenant environment without any scalable mechanisms in place. It is important in some situations to be sure that data is stored really close to our location and that the Public Cloud provider is not in our country, but that model of offering Cloud services should rather be called “Local Cloud providers” instead of “Private”.


Main Public Cloud providers offer many different models for scalability like Predictive Scaling, Cyclic Scaling or Auto Scaling. The customer can decide for himself and easily configure if his resources will be scaled each Friday, the last day of the month, during Christmas or when the CPU load reaches defined value. In addition, the size of the scaling is almost unlimited.

You can feel confused because one of the main features implemented in one of the main Public Cloud Providers, AWS is called Virtual Private Cloud (VPC). Each time you would like to create virtual machine there is a need to create (or use default) a Virtual Private Cloud which is part of the Public Cloud environment available only for you. Only inside VPC you can create private or public subnets and configure access to them.


There is also a lot of myths about the price of the Cloud. Let’s try to compare a Private Cloud or On-premise environment when the Company decides to buy a new server and launch 20 simple virtual machines on it. All equipped with 2 CPU, 4 GB of RAM and some simple 20 GB storage. Comparing against the equivalent of such a setup in a Public Cloud environment like t2.medium EC2 instance in AWS.

Considering that those 20 virtual servers, both AWS instances and machines launched on a Private Cloud server, will be launched day and night, 24×7 over the next 3 years, there is one obvious conclusion: a Public Cloud will be several times more expensive than a Private Cloud. Even if we consider the costs of cooling, power supply or occupied space pure ec2 instance running continuously will be more expansive than virtual machine launched in our private server.

But what if… What if we don’t want to run all 20 virtual machines all the time? What if we would like to have some of them located in a distant location to increase reliability? What if we resign from serving our services in a year or two? Or if we would like to switch to a serverless model which becomes more and more popular? Our server, even when not running any virtual machines, will cost us money but EC2 instance terminated in AWS will cost us nothing.

As an addition to this simple scenario, let’s take into consideration that IT bought the server for 20 VM and not more, which never happens in the real world. The new server is always bought with some possibility to grow and statistically, servers used on-premises are utilized only in 60-70%.


Besides all of that, choosing a Private Cloud and a physical server with several virtual machines customers can’t use many additional services accessible in the Cloud where pricing model often does not depend on the underlying server, so the comparison to on-premise is difficult. Virtual machines and storage are not more than 10% of all Public Cloud features. There are a lot more tools and services which can be often used for free or customers are charged only for the usage.

As an example, I can mention the Video or Voice Recognition services available in AWS. There are no minimum fees and no upfront commitments. The example costs are 10 cents per 1 minute of analyzed video and $1 for million images processed per month. There are 5000 images per month that could be analyzed for free in AWS in their Free Tier program.

Serverless or On-premises

Serverless model is popular nowadays and allows us to create scalable, reliable environment provided on different continents in the World, hosting our web application and generating costs only when there are visitors. That is incomparable to on-premise solutions which look outdated.

There are some specific situations where Private Cloud computing might be the best solution but from day to day a Public Cloud is becoming more and more attractive. In 99% it will give much more interesting functionalities for its customers that are not available elsewhere.
Public Cloud providers give us the possibility to order dedicated instances which are physically isolated at the host hardware level from instances that belong to other AWS accounts.

It is not the same as what an Enterprise Private Cloud is, but it is a really good alternative for those, who are not interested in paying for a new server room and would like to have the single-tenant environment in the Cloud ready to become a Hybrid Solution in the future…

…but that is material for another article.

Read more about Cloud on our blog!

About the Author: Wojtek Kubiak

IT-related for over 19 years, responsible for the IT department at Cybercom for over 10 years. In the past 4 years a consultant in the security department responsible for infrastructure audits and pentests.
Wojtek started his adventure with Cloud in 2014 and his first projects were connected with the migration of both customer solutions and Cybercom to the Cloud.
For several years, he has been managing the Cloud department, which deals with customer support and advises AWS and Azure public Clouds.

Read the articles:

Let’s talk about the digital sustainability in your company!

    2019-08-20T08:19:04+00:00March 25th, 2019|articles, digitalisation|0 Comments

    Leave A Comment

    Go to Top