Public Cloud

Tripti Shukla
17 min readJun 17, 2019

--

After about some analysis of public cloud, I came up with some points that could help a newbie or anyone who is interested in this area get a crude insight of the topic.

So what exactly is public cloud? How is it different from private cloud?

A public cloud is one based on the standard cloud computing model, in which a service provider makes resources, such as virtual machines (VMs), applications or storage, available to the general public over the internet.

Now what is cloud computing ?

It is basically a general term for anything that involves delivering hosted services over the Internet. These services are broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as a-Service (SaaS). After getting an insight of public cloud I analyzed the involvement of small and big enterprises into it. The results I found were quite interesting.

  • SaaS accounts for approximately 24% of all enterprise workloads (up from 14% in 2016).
  • IaaS is hovering around 12% (up from 6%).
  • PaaS is currently the most popular model, hovering around 32% and expected to grow in 2020.

After this I went into a deep insight of what actually is each one of them and how is it different from one another?

IaaS (Infrastructure as a Service)

IaaS businesses offer services such as pay-as-you-go storage, networking, and virtualization. It gives users cloud-based alternatives to on-premise infrastructure, so businesses can avoid investing in expensive on-site resources.

IaaS Advantages:

Maintaining on-premise IT infrastructure is costly and labor-intensive. It often requires a significant initial investment in physical hardware, and then you will probably need to engage external IT contractors to maintain the hardware and keep everything working and up-to-date. With IaaS, you can buy what you need, as you need it, and purchase more as your business grows.

IaaS solutions are highly flexible and highly scalable, and you can replace it whenever you need without losing money on your initial investment.

Another advantage of IaaS is it puts control over the infrastructure back in your hands. You no longer need to place faith in an external IT contractor; you can access and oversee IaaS platforms yourself if you wish (without being an IT whizz).

IaaS Characteristics:

IaaS platforms are :

  • Highly flexible and highly scalable.
  • Accessible by multiple users.
  • Cost-effective.

IaaS Non-Ecommerce Example:

A good example of IaaS is AWS EC2. It provides scalable infrastructure for companies who want to host cloud-based applications. Its users do not own the physical servers; AWS provides virtual servers.

IaaS Ecommerce Example:

Magento 1 Enterprise Edition can be either on-premise or IaaS depending on how the merchant chooses to host their store.

In the case of IaaS, the merchant is paying Magento for the licensing of the software and then using a third party vendor for hosting such as Rackspace.

Merchants are able to pay for a hosting plan that meets their own needs without the cost of maintaining their own physical servers. The merchant is still responsible for installing and managing updates to their Magento software.

PaaS (Platform as a Service)

A PaaS vendor provides hardware and software tools over the internet, and people use these tools to develop applications. PaaS users tend to be developers.

PaaS Advantages:

PaaS is primarily used by developers who are building software or applications.

It provides the platform for developers to create unique, customizable software. This means developers don’t need to start from scratch when creating applications, saving them a lot of time (and money) on writing extensive code.

PaaS is a popular choice for businesses who want to create unique applications without spending a fortune or taking on all the responsibility.

It’s kind of like the difference between hiring a venue to put on a show vs. building a venue to put on a show. The venue stays the same, but what you create in that space is unique.

PaaS Characteristics:

PaaS platforms are:

  • Accessible by multiple users.
  • Scalable — you can choose from various tiers of resources to suit the size of your business.
  • Built on virtualization technology.
  • Easy to run without extensive system administration knowledge.

When to Use PaaS:

PaaS is often the most cost-effective and time-effective way for a developer to create a unique application.

It allows the developer to focus on the creative side of app development, as opposed to menial tasks such as managing software updates or security patches. All of their time and brainpower will go into creating, testing, and deploying the app.

PaaS Non-Ecommerce Example:

A good example of PaaS is AWS Elastic Beanstalk.

Amazon Web Services (AWS) offers over 100 cloud computing services such as EC2, RDS, and S3.

Most of these services can be used as IaaS, and most companies who use AWS will pick and choose the services they need.

However, managing multiple different services can quickly become difficult and time-consuming for users.

PaaS Ecommerce Example:

Magento Commerce Cloud (also known as Magento Enterprise Cloud Edition) is the most common example of PaaS for ecommerce.

This enables the merchant to bundle their hosting as part of their package with Magento. Merchants evaluating Magento go through a scoping process to determine their hosting needs which is then bundled into their monthly plan. Merchants still have full access to edit the source code of their Magento store and can fully customize the application.

SaaS (Software as a Service)

SaaS platforms make software available to users over the internet, usually for a monthly subscription fee.

SaaS Advantages:

With SaaS, you don’t need to install and run software applications on your computer (or any computer). Everything is available over the internet when you log in to your account online. You can usually access the software from any device, anytime (as long as there is an internet connection). The same goes for anyone else using the software. All your staff will have personalized logins, suitable to their access level.

You no longer need to engage an IT specialist to download the software onto multiple computers throughout your office or worry about keeping the software on every computer up-to-date. It’s all taken care of in the Cloud.

Another key advantage is the payment structure. Most SaaS providers operate a subscription model with a fixed, inclusive monthly account fee. You know exactly how much the software will cost and can budget accordingly, without worrying about hidden surprises. Most subscriptions include maintenance, compliance, and security services, which can be time-consuming and costly when using on-premise software.

SaaS providers also offer out-of-the-box solutions that are simple to set up (if you need a basic package), with more complex solutions for larger organizations. You could have the basic software up and running within a matter of hours — and you’ll have access to customer service and support along the way.

SaaS Characteristics:

SaaS platforms are:

  • Available over the internet.
  • Hosted on a remote server by a third-party provider.
  • Scalable, with different tiers for small, medium, and enterprise-level businesses.
  • Inclusive, offering security, compliance, and maintenance as part of the cost.

When to Use SaaS:

SaaS platforms are ideal for when you want an application to run smoothly and reliably with minimal input from you.

Take your email server, for example.

You want to know that you’ll continue to send and receive emails without needing to fiddle with your email settings or worry about updates. Imagine if your email server went under because you forgot to update it and you went days without email? That’s simply not an option in today’s marketplace. If you use a SaaS platform to run your email inbox, the chances of something going wrong are very small. And if something did go wrong, it would be up to the SaaS provider to find a solution.

You’re not only paying for the SaaS applications/products: you’re paying for peace of mind.

SaaS Ecommerce Example:

BigCommerce is an example of a SaaS ecommerce platform. It provides complete shopping cart software, as well as hosting infrastructure to the user, allowing businesses to create an online shop within minutes without worrying about coding, hosting, or software.

The BigCommerce platform also has regular updates that automatically roll out for users, and all the software licenses, upgrades, and hosting costs are covered in the monthly subscription fee.

Disadvantages

So far all I’ve mentioned are the advantages and features of using the public cloud. One must be wondering what are the disadvantages of using it. After doing some analysis I got an insight of the following aspects :

Lacks proper controls: The client has no control of data or infrastructure. There are issues of data privacy and integrity. The service level policies and compliances are completely enforced by the service provider.

Performance: The performance of the network depends on the speed of the internet connectivity.

Weak on Security: Since the hardware resource is shared between multiple users, IT security issues are more profound and data is vulnerable to thefts.

Customization: Customization of resources or services is not possible.

Multi-tenant environment : One of public cloud’s biggest disadvantages is its multi-tenant environment. The host server running your virtual machine (VM) likely is hosting other companies’ VMs. Because of this, public cloud providers don’t give you access to the hypervisor, so you can’t install host-level utilities, such as antivirus software or backup agents. This also means you can’t join a hypervisor to an existing domain or cluster. There are also security implications, as well as potential downtime from cloud or WAN failure.

Unpredictable costs : Another disadvantage of running VMs in the cloud is that costs can be wildly unpredictable. Public cloud providers are not known for using simple billing models.

Typically, you are billed based on the resources you consume. This includes storage resources, but also CPUs, memory and storage I/O. Resource consumption may be billed differently at different times of the day, and not all activity is treated equally. There are cloud providers that differentiate between various types of CPU functions, billing those functions at different rates.

Because public cloud providers use complicated billing formulas, it can be difficult to estimate the cost of running cloud workloads. They can vary each month based on how heavily the workloads are used. Fortunately, some cloud providers have portals that customers can use to monitor costs and establish safety stops if costs are approaching designated thresholds.

Market of public cloud

The worldwide public cloud services market is projected to grow 18 percent in 2019 to total $246.8 billion, up from $209.2 billion in 2018, according to Gartner, Inc. The highest growth will come from cloud system infrastructure services (infrastructure as a service[IaaS]), which is projected to grow 36.8 percent in 2019 to reach $34.6 billion. Cloud application services (software as a service[SaaS]) is expected to grow 20.1 percent to reach $46.3 billion.

The SaaS market is expected to see a slightly slower growth over the next few years with increasing maturity of SaaS offerings, namely human capital management (HCM) and customer relationship management (CRM) and the acceleration in the buying of financial applications. Nevertheless, SaaS will remain the second largest segment in the global cloud services market.

The 2019 State of the Cloud Survey identified several key findings:

  • 84 percent of respondents have a multi-cloud strategy.
  • 84 percent of enterprises have a multi-cloud strategy.
  • Enterprises with a hybrid strategy (combining public and private clouds) grows to 58 percent in 2019 from 51 percent in 2018, while the number of organizations with a strategy of multiple public clouds or multiple private clouds declines slightly.
  • 94 percent of respondents use cloud.
  • Public cloud adoption is 91 percent and private cloud adoption is 72 percent.
  • 69 percent of respondents use at least one public and one private cloud.
  • Companies plan to spend 24 percent more on public cloud in 2019 vs. 2018.
  • 13 percent of enterprises spend more than $12 million a year on public cloud, while 50 percent spend more than $1.2 million annually.
  • Public cloud spend is growing 3 times faster than private cloud usage (24 percent vs. 8 percent).
  • SMBs generally have fewer workloads overall and therefore smaller cloud bills, but 11 percent of SMBs still exceed $1.2 million in annual spend.
  • Respondents overall run 38 percent of workloads in public cloud and 41 percent in private cloud (which may include cloud-enabled virtual environments).
  • Enterprises run 33 percent of workloads in public cloud and 46 percent in private cloud.
  • SMBs run 43 percent of workloads in public cloud and 35 percent in private cloud.

Cloud Cost Optimization

The question arises, Is cost really a problem with the cloud? If yes, then how big of a problem it is? What steps do people take to reduce their cloud costs?

Some of the major and practical issues that I came around were as follows:

  • The high cost of accessing your own data in a public cloud: The actual storage fee for housing your data in the public cloud is typically low. But once your data is in there, you must pay to access it, which for many comes as a surprise. That means the more value you get from your data, the more money you have to pay. Although these charges are considered low (in the range of $0.01 to $0.05 per 1,000 transactions) costs can quickly escalate when a customer is using the public cloud as primary storage or for storing any particularly active data set.
  • You’ll also likely encounter data migration costs, which can be substantial. If you have a multi-cloud strategy, as many enterprises do, you’ll see additional costs as you move a workload from one cloud to another — along with any application adjustments that will probably be needed. You’ll also want to ensure that security and governance is covered because your data is ultimately your responsibility (and may add additional expense). And while most vendors don’t charge to bring your data into the cloud, public cloud providers usually charge for data you move out of the cloud.
  • On-premises: cost-competition with public cloud: With new technologies, such as composable and hyperconverged infrastructure, implementing a private cloud becomes an effective option to deliver a public cloud experience in your datacenter. And it can often come with a lower total cost of ownership, as outlined in a 451 Research 2016 report.

A private cloud model combined with traditional IT are now a critical and proven option in the design and deployment of applications that require enhanced security, availability, and performance — at costs equal to or less than public cloud.

  • For example, HPE recently modeled three sizes of their private cloud solution on their composable platform, HPE Synergy. Working with CloudGenera, HPE found that the public cloud was 2–5 times more expensive than HPE Synergy over a 3-year period — that’s like buying the hardware 2–5 times. And if those numbers aren’t enough for you to look twice at all options, remember the added benefits of having your own hardware and software: dedicated performance/storage, complete control over your infrastructure, and increased agility due to new private cloud technologies.
  • Are you putting your money in the right cloud?
  • Public cloud providers have succeeded in marketing their services so well that many believe public cloud is more cost-effective than implementing a hybrid IT strategy. In the short term, it is likely cheaper and faster to rent capacity in a cloud than to build and own it yourself. Over the long haul, however, renting may be the more expensive option, and you never own anything. If your workload is committed to run at a certain level over a longer period, you may actually be burning money in the public cloud — money that could be used to implement a better solution for your enterprise.
  • Enterprise executives should also realize that even though resources are cheaper in the cloud, management costs are not. No matter where an app is hosted, it still requires a technician to monitor and maintain it, which means labor costs tend to scale as cloud deployments become more prevalent. This is one of the reasons why many enterprise workloads are being handed over to managed service providers, which provide not just the infrastructure to support applications and data, but the people to oversee them. Of course, this level of service also comes at higher price points than basic cloud.
  • At the same time, most cost comparisons between cloud and in-house infrastructure often fail to take into consideration items like connectivity, customization, backup and recovery and a range of other factors. In most cases, the cloud still provides a lower-cost option, but it is not nearly as dramatic as the initial sales pitch suggests and, as mentioned above, these costs can quickly scale up. Public cloud management software can help streamline operations and ensure more successful, less costly, cloud implementation.

Methods to reduce cloud costs:

Rightsizing

Rightsizing means ensuring that all of the Virtual Machines in your infrastructure are allocated the correct resources for their workload, with the goal of minimizing costs and maximizing performance.

Power Scheduling

CMP power schedules let you configure a schedule to shut down and restart instances, so you don’t leave them running overnight or on the weekend, when nobody is using the resources you’re paying for.

Lifecycle Management

For public clouds, the need for lifecycle management is clear. Powered-off instances hosting workloads that are out of date and shouldn’t be used can be inadvertently powered on, with the potential to increase monthly bills.

Cloud Cost Analytics

Reports providing cost visibility, cost comparison and chargeback can be used to educate business units on correct workload placement based on cost and technical requirements, allowing you to compare apples to apples.

AWS Reserved Instances

If you’re using AWS, Amazon EC2 Reserved Instances (RIs) are one of the most obvious ways to control compute costs, allowing you to reserve EC2 computing capacity in exchange for significantly discounted hourly rates (up to 75%) compared to On-Demand Instance pricing.

After all the analysis and research, I looked for some of the major companies that are working in the area of cloud cost optimization and what arethe solutions they provided and how are they different from each other.

CloudCheckr

CloudCheckr is a vendor that provides a cloud management platform. The platform, which supports public cloud deployments in Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform, public cloud customers more visibility and control over cloud computing costs, performance and security.

Cost Management is one of the major features of CloudCheckr’s cloud management platform. The platform enables an enterprise to track its total spend across various cloud computing resources, such as virtual machine instances, and providers. Predictive analytics help users forecast future spend, and right-sizing reports and recommendations help identify and eliminate unnecessary cloud resources. The platform can also send alerts to ensure an organization meets any cloud governance requirements, and handles invoicing, billing and chargeback for multiple business departments.

CloudCheckr also provides tools specifically for AWS. Some of these tools include:

  • CloudCheckr Migrate: This tool is designed to help migrate a VMware environment onto the AWS public cloud. It evaluates an enterprise’s VMware deployment, including vSphere storage and CPU resources, and then makes recommendations on how to most cost effectively host those resources on AWS.
  • Reserved Instance (RI) Rebalancer: For AWS users, this cost management tool monitors Elastic Compute Cloud RI usage and provides recommendations for optimization.

CloudCheckr pricing

CloudCheckr pricing depends on which plan an organization chooses. There is a free version, a Pro plan that starts at $75 per month, an Enterprise Plan that starts at 2% of an enterprise’s AWS bill with a minimum of $899 per month, and the Managed Service Provider and Resellers plan that starts at $100 per month. The CloudCheckr pricing calculator estimates an enterprise’s monthly costs and recommends which plan to choose.

Who Uses This Software? Amazon Web Services and Azure clients who spend $500+/month.

CloudCheckr was founded by Aaron Newman and Aaron Klein in 2011 and is headquartered in Rochester, NY. It is mainly used by cloud administrators and other IT professionals.

Magalix

Magalix is a low-touch, 360-degree optimization service best for small to medium-sized businesses/enterprises. Offering detailed analytics on your infrastructure, easy to read detailed dashboards, and breakdowns by cost. Magalix is the only AI-powered capacity management solution that allows you to have proactive scalability decisions. This tool provides resource utilization insights in minutes so you can understand where to invest and where to save enabling you to be proactive.

Who Uses This Software? Companies that use Kubernetes or planning to move their workloads to Kubernetes soon.

ParkMyCloud

ParkMyCloud is a SaaS platform that automatically identifies and eliminates public cloud resource waste, reducing spending by 65% or more think Nest for the cloud. AWS, Azure, Google Cloud, and Alibaba Cloud users such as McDonalds, Sysco, Unilever, Fox, and Sage Software have used ParkMyCloud to cut their cloud spending by millions of dollars annually. ParkMyCloud helps companies like these optimize and govern cloud usage by integrating cost control into their DevOps processes.

Who Uses This Software? Startups to Fortune 50 companies use ParkMyCloud, including McDonalds, Sysco Foods, Unilever, Avid, and Sage Software. Any company with cloud computing resources can use ParkMyCloud.

CloudHub

It works on the principle of three basic fundamentals that form the core of cloud cost optimization.

Time optimized — Remember that cloud billing is metered by the hour and in some cases by the second. So, they ask — ‘Do you need to run your non-production workloads 24/7?’. In their experience, this question more often yields at least 40% reduction in cost for those (non-production) workloads. Typically, they achieve this through the automation of stop-start of non-production VMs during off business hours.

Rightsizing — Typically the on-premise hardware is sized higher than current needs to factor in future growth or when considering legacy hardware, the processors and chipsets old. So, how does one arrive at sizing for cloud?

With their consulting, they help arrive at optimized sizing on cloud, suited to a given workload based on their performance or by leveraging existing performance metrics. Further after moving into cloud, through automation of regular performance monitoring and reporting, they will be able to make rightsizing recommendations during the run and manage phase of the engagement. This, in turn, saves precious $$ for their customers and enables realistic budgeting for the workloads and projects

Term Commitment — All major public cloud providers provide significant discounts for reserving/committing capacity over a period of 1–3 years. So, the question now becomes — ‘How do I plan by capacity requirements for the next 1 or 3 years?’. They consult their customers using their Nimbus Cost Advisory Framework to answer such questions to gain benefits of at least 25% and in some cases more than 60% cost savings for those workloads.

Of course, there exist other mechanisms in auto-scaling, containers/serverless computing, PaaS offerings, license portability and many more. But these mechanisms require some pre-requisites like people skills, licenses, platform dependencies, refactoring of applications etc., to be met before one can leverage them. The above described 3 aspects are applicable to a much more generic set of workloads and often have minimal or no pre-requisites making them more accessible and easier to implement with the right consulting.

After studying about the cloud cost optimization strategies and plans of various companies what I actually analyzed is that they all revolve around the same parameters and glitches that are present in this industry but what differ are the approaches and technologies that they use to resolve the issues.

This was all about what I analyzed and collected about the topic and thought of sharing with you all.

--

--

Tripti Shukla

A curious learner and tech enthusiast. In love with development and the scope it offers. Javascript, Machine Learning and Open Source enthusiast.