I am convinced that today every company/organization should have a “Cloud First Policy”. Such a policy means that whenever you deploy new services and/or update existing services you will at least consider moving it to the cloud. Soon this will improve your complete IT environment.
At Paessler we have had a “Cloud First Policy” for some years now. The initial reasoning was that we as infrastructure vendor should arrive to the cloud early so we can prepare our services and our products for the cloud. We wanted to be ready when the majority of our customers start heading for the cloud. But only few companies are IT infrastructure vendors, so for everybody else there must be other reasons, too.
In this blog post I’d like to write about the experiences we have had with this policy and the five good reasons we found for any company or organization to have a Cloud First Policy.
What I mean by “the cloud”
First let’s me explain what I mean by “the cloud” in this context. There are so many different definitions, but I prefer the most simply one that looks from the perspective of the user. When I run jobs “in the cloud” I apply this mindset:
- I don’t know how (it works).
- I don’t know where (it is processed).
- I don’t care (about the hardware, network, etc.).
- I just expect it to work
It’s the same expectation I have for a power plug in the wall: I get electrical energy. Anytime, anywhere. I don’t know how it works and where it comes from.
The differences between running jobs in the cloud compared to running them in your own data center or in a colocation data center is shown in this chart:
IaaS (Infrastructure as a Service):
I need to manage the data, the code and the OS. But I don’t need to take care of the infrastructure (hardware and network equipment). I can already leverage scaling, though. Examples are Amazon EC2, MS Azure and Google ComputeEngine. In most cases I would run the same applications on IaaS as I did on premises.
PaaS (Plattform as a Service):
Data and code is still to be managed by me while the OS and the infrastructure are managed by the vendor. Scaling is already much easier and works asap. Examples are Amazon Lambda, MS Azure and Google AppEngine. To use PaaS in most cases I will at least need to touch my code, quite often it will require a rewrite.
SaaS (Plattform as a Service):
Finally I only have to look after the data. Code, OS and infrastructure are managed by the vendor. Examples are Office 365, Googlr Apps, Sendgrid, Github, Stripe, Salesforce. In this final case I don’t care about the code, I just use the application with my data.
„Going cloud“ is not simply moving VMs to AWS/Azure/Google
If you only move virtual machines from your VMware server into the cloud you don’t get the real thing!
- It is the chance to rethink processes, upgrade – and simplify them
- It is the chance to get rid of servers
- IT departments should only concentrate on mission-critical core business systems
- Everything else moves to the cloud using standardized systems,
- e.g. E-Mail, HR, payroll, supply chain, procurement, performance management, sales, marketing, customer service
IaaS is nice and cheap, but PaaS and SaaS are the actual huge leap forward. Progress means:
VM instances => containers => serverless
Cloud based computing means completely new paradigms for development, usage, management and sales of IT.
Paessler‘s „Cloud First Policy“
We have defined our cloud first policy as follows:
“Whenever we create or touch/update something we consider to use a cloud service (SaaS) or to move the system to the cloud (IaaS, PaaS).“
We found that there are 5 reasons for applying this policy:
Reason #1: …it gives us the chance to rethink the „something“
I started Paessler 20 years ago. We have collected a lot of smaller and bigger IT systems into our environment. Thinking about the cloud is the perfect reasons to look at each one of them whenever we touch it anyway. We ask the following questions:
- Are we doing the right thing with the legacy system?
- Can we simplify it while we touch it?
- Is it at the core of our business (we need to be able to change everything if needed) or can we move to a standardized system?
Reason #2: … we can do things we couldn’t do without the cloud
Without the coud it would simply be impossible
- to build&run services like our PRTG cloud (where we provide push notifications, cloud sensors, etc. for the users of our monitoring software PRTG Network Monitor)
- to deliver websites and downloads quickly globally using CDNs, while geo-blocking downloads in countries with export embargos
- to run our tracking and analytics systems
- to keep our email/newsletter distribution systems intact
Reason #3: … it saves us time and money
For example for several years we have been using cloud based CDNs to deliver our website content and especially the downloads for PRTG (thousands of trial and update downloads every month with 200 MB each). The cloud is cheaper than our data center, faster for the customers (because it is a cdn) and includes features for free that would be a lot of work for us to set up and maintain (e.g. geoblocking for export control).
Email is the perfect example for a cloud service. We have moved from our own on-premise Exchange server cluster to Office 365/Exchange online. We got rid of a lot of hardware, update/maintenance hassle, and performance has increased.
I think running your own mail servers in 2017 is anachronistic. Gartner says that 8,5% of companies already use Office 365, 5% use Google Apps. And this will be much more soon.
Reason #4: …it scales much better (we scale quickly ourselves)
Paessler AG doubles most company metrics roughly every 2 years. We move to a new office every 4 years. All this means a huge load for internal IT, DevOps, developers. The cloud helps us to scale „unlimited“.
Reason #5: …it is more secure and more stable than what we can do
We have a handful of security and stability experts, on site 8h/day. Companies like Amazon or Microsoft employ thousands of engineers 24/7 just for this. By using their security for base systems we can concentrate on security of OUR code => our code/apps improve.
Think about the following analogy: If you have a suitcase with € 1 million: Do you rather store it at home or in a bank‘s vault? I’d rather choose the bank.
The cloud is not the future. It’s now.
It is time that sysadmins need to make their peace with the cloud.
Right now it looks like we are moving most processing/storage power to the cloud, and only use mobile devices as smart viewers. But the next change is already on the horizon: devices “on the edge” gain power all the time and will soon pass the cloud as biggest junk of computing power.
Self-driving cars are effectively data centers on wheels. Drones are winged data centers. New stuff like 360° video, VR, etc. needs lots of cpu power locally, the computing power can’t be moved to the cloud. The growth of the computing power we have in our pockets is amazing:
- iPhone 6 = 6x Cray-2 from 1985
- Galaxy S6 = 5x Playstation 2s from 2000
- One iPhone 6 could theoretically guide 120 million Apollo rockets from 1965 at the same time
Want to look further into the future? Read my blog post The End of Cloud Computing…
PS: If you like how we think about IT and networks, check out our software PRTG Network Monitor which monitors uptime, usage and performance of networks.