Cloud computing has spearheaded a fundamental change in the way that businesses source and utilize their technology infrastructure. It offers flexibility, efficiency, and the economy of scale to organizations, no matter how large or small.
The most basic aspect of cloud computing involves moving away from the idea of owning and maintaining your own servers locally. By building large data centers equipped with massive racks of servers and the accompanying network infrastructure, the economy of scale is introduced. To highlight the scope of modern data centers, it was estimated that in 2016 Google already had approximately 2.5 million servers housed in its data centers (DataCenterKnowledge, 2017). Each data center is managed and maintained by a dedicated team of IT professionals. The cost of the required labor and infrastructure is then shared across multiple businesses, drastically reducing the overhead when compared to a business managing their own servers and internal technicians. Data centers can also offer further cost savings by taking advantage of virtual servers which allow multiple companies or services to share the resources of one server. Virtual servers are partitioned, dedicated environments with their own separate internal operating systems. Each virtual server is reserved and allocated a portion of the server’s resources, such as memory and storage.
From an end-user’s standpoint the cloud experience can be nearly identical to that of an on-premises server, depending on the services being utilized. The end-user first connects their computer or device to their internal network which then utilizes the internet to connect with the network of the data center. The data center will then connect the user to the correct internal server and ultimately, the intended service. All of this is generally managed in the backend by the cloud provider, sometimes in concert with an internal IT team. Nothing more is required of the end-user than if the server were on-premises.
The Impact of the Cloud on Automation
Beyond just moving the resources offsite to cut costs, data centers quickly developed new tools to push cloud efficiency and functionality even further. Through the evolution of automation, the setup and configuration times of an environment dropped dramatically. By eliminating the time associated with purchasing and configuring a physical server, businesses could take advantage of newly purchased services immediately. Automation could also be used to facilitate data migration, significantly cutting the implementation times associated with transitioning to new services.
It is an incredible advantage for any business to remain nimble in order to make quick moves as needed. This is exactly the advantage cloud computing offers with scalability as a core competency of the technology. Whether a business is looking to cut costs and reduce its footprint, or grow quickly and expand its capabilities, the cloud allows for these kinds of pivots. It is typical for an administrator to be able to make changes, or increase and decrease resources instantaneously, all from the provider’s web interface. These arrangements also provide periodic infrastructure modernization and upgrades at no additional cost to the customer. This ensures the user experience does not deteriorate over time due to aging equipment.
Understanding Private and Public Cloud Services
Public Cloud Solutions
Public cloud services offer businesses access to a technology solution without the fully burdened cost of the hardware and software. They are paying a monthly subscription to a cloud provider for the use of their services which are accessed over the public internet. The provider is responsible for maintaining and securing the environment. This is a common scenario for users of the Software as a Service (SaaS) model.
Private Cloud Solutions
Private cloud environments are primarily offered in the form of Infrastructure as a Service (IaaS) or Platform as a Service (PaaS.) These environments tend to be more bare-bones, allowing the customer to build up a cloud environment for themselves while also bearing the responsibility of maintaining and securing the environments. They are frequently used for businesses or developers to build their own software products upon in order to offer their finished products as a public cloud solution.
Infrastructure as a Service (IaaS)
The heart of cloud computing is its infrastructure. Upon it, all cloud services are built. IaaS provides an instantly scalable subscription-based model for computing infrastructure. It is housed and maintained in a data center by the service provider and accessed via the internet. Servers are the vast majority of infrastructure provided but may also include security-oriented equipment such as firewalls.
There are many reasons for a business to move to an IaaS model, but the most significant reasons are due to reduced cost and implementation times as well as the benefits of scalability provided by cloud-infrastructure.
Leading Infrastructure as a Service Providers
Amazon Web Services, Microsoft Azure, and Google Cloud Computing Services are leading the pack as the premier IaaS providers with other heavy hitters such as IBM Cloud and Oracle Cloud lingering firmly in the second tier of providers. Third tier providers, such as Digital Ocean, are staking their claim on the market with aggressive pricing, the tradeoff being a less user-friendly environment, which may appeal to more experienced developers.
As of 2019 Amazon owned 47.8% of the market’s public cloud infrastructure, with over $32 billion in revenue (Su, 2019)
File Server Replacement
One of the more common uses of IaaS is to replace in-house file servers. Companies such as Dropbox and Box have incorporated elements of Software as a Service (SaaS) with IaaS to create a simple, user-friendly environment for businesses to backup and share files. With internet speeds constantly improving, even larger files can now be uploaded and downloaded quickly for backup and retrieval. Through the use of versioning, a business can ensure that if a file has been accidentally changed or deleted, older versions of the file can be retrieved.
Business Continuity and Disaster Recovery
The primary goal of a Business Continuity and Disaster Recovery (BCDR) plan is to ensure your business is prepared to recover from any issues that impact data integrity or accessibility while allowing you to resume normal business operations as quickly as possible.
Like anything, no two cloud providers are alike. While service level agreements and uptime guarantees can vary slightly, generally each provider will offer some form of redundancy built into their cloud environment. If your service provider experiences equipment failure, it is common to be up and running again within minutes with no loss of data. Depending on the service this can even be seamless. Through BCDR planning, your data can be mirrored across multiple data centers.
BCDR has some significant benefits to basic data backup. Rather than just ensuring your data is protected, BCDR can back up your entire environment including the operating system. This provides significant time savings if data recovery becomes necessary. In the event of a disaster such as fire or ransomware, a virtualization of your environment can be spun up so you can be back to work in minutes. Even if an issue takes down an entire data center, your computers can be pointed to a mirrored environment at one of the providers redundant data centers in order to keep you working as if nothing has happened.
Traditional backups require not only that the data be retrieved, but that it is placed back into a serviceable state. Depending on the volume of data being recovered, and the transfer rates available, it can take days or even weeks to recover data from one location to another over the internet. Not many businesses can survive the 16.2 days of downtime related to the average ransomware attack (Gill, 2020)
BCDR Providers such as Datto or Veeam offer a multitude of options to meet a business’ budgetary or security needs. The proprietary hardware backup tools can be local, cloud-based, or a hybrid of both to cover all bases. Additionally, cloud-backup providers such as Carbonite or Backblaze can be used to protect individual computers. These services place the advantage of the cloud into the hands of home users with interfaces so simple that even those without significant computer skills can navigate them.
It is extremely rare for a website to be hosted on an on-premises server any longer. Most sites utilize a hosting provider. While these hosts are essentially offering a Platform as a Service (PaaS) to the end-user or web developer, the hosts themselves are generally utilizing infrastructure leased from a data center which they add hosting tools and a web interface to that they in turn offer to the public.
Software based businesses frequently utilize IaaS as the foundation upon which they build their services which are then sold to other companies or the consumer. They can take advantage of scalability to ensure their overhead matches that of their business needs. Providers of services such as Enterprise Resource Planning or Marketing Automation software would need to be able to scale up quickly if a marketing campaign were successful enough to drive a significant increase of new clientele in a short time period. Eliminating the need to build and configure new servers ahead of time to meet these needs is a major benefit to a company’s bottom line by minimizing overhead until it is needed.
Big Data and Analytics
Every business with an online presence now has access to growing volumes of user data, the push to find useful information from it is steadily increasing. The computing power required to mine these enormous data sets to determine useful patterns is massive. Utilizing IaaS is a cost-effective strategy as it eliminates the need to upgrade equipment every few years in order to keep up with current processing requirements.
Platform as a Service (PaaS)
The Platform as a Service (PaaS) model takes Infrastructure as a Service (IaaS) and adds complete sets of development and deployment workflows on top of the infrastructure. These resources offer software developers and technology service providers a quick and cost-effective way to build out their applications and get them to market, while the shared processes and application programming interfaces (API) help speed up deployment. Providing broadly accepted toolsets allows these technology companies to scale as quickly as needed. By utilizing popular PaaS service providers, they are able to hire developers who may have already been trained or are familiar with the leading platform providers such as Amazon Web Services’ Elastic Beanstalk, Oracle Cloud Platform, and Microsoft Azure, who frequently package their IaaS and PaaS as a combined service. This allows for newly hired staff to be brought up to speed and begin working on high level projects as quickly as possible.
Specialization is a key differentiator between most PaaS businesses. Salesforce and SAP provide some of the most robust and sophisticated Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM) options while providers such as Engine Yard offer specialization for developers specifically utilizing the Ruby on Rails web-application framework.
Software as a Service (SaaS)
A cloud-based Software as a Server (SaaS) solution allows software providers the ability to manage and control their client’s user experience to a far greater degree than ever before.
Traditionally, software was installed locally on a user’s computer or, in the case of an enterprise environment, perhaps on a networked application server being managed on-premises. With Software as a Service, the applications can be installed either locally or on the provider’s cloud servers. Both models require internet connectivity whenever the software is used but the reasons for this vary somewhat in each case.
For solutions installed and managed on the provider’s cloud servers, this will require that the end-user access the software via web browser as the primary method of interaction with the software. These scenarios are typically used when software latency is not as much of an issue for the overall user experience, such as with Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM) solutions. Latency is the delay time between when you click or type and the point that the software responds. Because access to the software interface is achieved through a web browser, you have no access to the software at all without internet connectivity.
Some SaaS solutions are better served by the installation of the applications locally. These local install strategies tend to be implemented for applications intended primarily to work with large files or resource-intensive graphic and video editing software such as with Adobe’s Creative Cloud. This strategy helps mitigate issues around latency that can negatively impact user experience and productivity such as with design, where precision mouse control is critical. The applications in this case will use the resources of the local device to power them, but still require internet connectivity to check in with the provider’s servers to ensure the license is up to date before allowing the software to run.
Leading Software as a Service Providers
Some of the more popular SaaS applications found in nearly every business are productivity suites such as Microsoft 365 and Google’s G-suite. Enterprises will typically have a variety of SaaS tools being utilized such as with Adobe who dominates the creative space with nearly every design department utilizing it to create marketing materials. Adobe’s Photoshop, Illustrator, and InDesign lead the market in photo editing, vector graphics, and desktop publishing software respectively, while Premier continues its march towards dominance of the video editing software market.
There are major benefits to both the provider and the end-user with Software as a Service. For the provider, they are able to eliminate the issues around software piracy that are associated with local installations while also guaranteeing a continuous revenue stream. By requiring a monthly or annual fee for the license, they can simply shut the user’s access off once the contract is terminated. The user is leasing the software as opposed to purchasing it. By eliminating the ability for the purchase and use of software well past their end-of-life dates, the software providers can ensure that clients must continue to pay year after year whether or not they want or need the updated versions.
The benefits of the SaaS model to the user are also significant. A user will always have access to the latest versions, which may include useful feature upgrades. From a security standpoint, these updates also ensure that any holes found in the software can be patched immediately. Finally, the cost savings of eliminating in-house servers and the IT resources to support them are significant.
Perhaps one of the most intriguing benefits of the SaaS model is the rapidly growing access to 3rd party application integration. It is more and more common for individual software vendors to ensure their products are able to not only communicate but integrate into competing software user interfaces. Companies such as Microsoft, for instance, have allowed its collaboration tool, MS Teams, to integrate with Trello, a task management application that competes directly with Microsoft’s own task management tool, MS Planner. This level of cooperation between software providers was much less common and much more difficult to manage before the SaaS model became so prevalent.
There are some notable drawbacks for the end-user as well. It can be costly and time-consuming when a newer version of an application is released which no longer functions with an outdated operating system. Many software providers will list their end-of-life dates on their websites to ensure businesses can plan accordingly. This allows for accurate budgeting when forecasting for new computers and allows an IT department to plan for the allocation of resources if a large-scale hardware refresh is required. Perhaps the most critical drawback is tied to the fact that SaaS is internet-centric. If your internet service provider has an outage or your network infrastructure fails, you will be unable to continue working with the software until your connectivity resumes. It is common for businesses to mitigate this issue by purchasing a backup internet circuit from a second internet service provider to act as a fail-over in case the first is experiencing an outage.
The Remote Work Explosion
With the Covid-19 Pandemic arriving in 2020, we witnessed the explosion of collaboration tools over a period of months, rather than the slow but steady evolution which many technology professionals assumed would take years. With both social and work-based needs requiring ever more online collaboration, companies such as Zoom, Slack, and Teams have stepped in to fill the need for video conferencing, file collaboration, and instant messaging necessary to keep businesses functioning and students learning.
While these tools all existed previously, the rapid expansion of the user base has seen a quick escalation in functionality as each entity competes for a market share of the users that they are sure to keep long after the pandemic has ended.
Voice over Internet Protocol (VoIP)
The telecommunication industry has experienced a monumental shift in recent years with the movement towards Voice over Internet Protocol (VoIP) and away from analog phone lines. With the digitization of voice communication and transmission over internet lines, many businesses have been able to completely eliminate what was once a very costly utility. Without the maintenance required of a separate phone line, the associated costs have been reduced to that of the service and hardware.
VoIP is a great example of the combination of IaaS, PaaS, and SaaS as all are generally provided by the VoIP provider. They utilize their cloud infrastructure as the foundation for their proprietary platform, which manages the phone and data communications, while the VoIP application allows the end-user to make calls from within their computer or mobile device as well as a standard telephone handset.
Many VoIP providers understood early the effects that a push towards remote work would have and positioned themselves as all-inclusive collaboration tools, offering video conferencing, instant messaging, and file-sharing as well.
Desktop as a Service (DaaS)
With businesses increasingly outsourcing their infrastructure and security, it was a natural evolution in the marketplace that the traditional desktop computer itself would ultimately be outsourced to a degree. Desktop as a Service (DaaS) provides subscriptions to cloud-based virtualized environments and is configured with operating systems and applications. These environments are accessed over an internet connection via a web browser or through a secured proprietary application that is downloaded and installed on the end-user’s device.
Managing a DaaS Environment
Depending on the needs of a client, the backend virtual desktop infrastructure can be managed by the 3rd party cloud provider, or in many cases, by a business’ internal IT department. The administrator will be responsible for the creation of an image of the environment which can then be quickly provisioned to as many new users as required. This image typically includes the operating system and any applications that are needed. There may even be multiple images, each configured for specific employee rolls requiring dramatically different software packages in order to perform their duties.
Along with streamlined deployment, these virtual environments also offer automated maintenance and security patching capabilities along with centralized management and ease of remote access. An additional benefit of utilizing Desktop as a Service is that the bulk of the computing power is performed by the cloud infrastructure. This allows companies to minimize the costs associated with purchasing powerful machines for each employee. Because the requirements on the client side are no longer as significant, thin clients, or machines with lower specifications, can be purchased at a reduced cost and kept in service longer. Any aging of the local devices will not impact the productivity of end-users as significantly as if the processing were performed by the local machine.
Leading DaaS Providers and Use Cases
Amazon and Microsoft continue their dominance of cloud computing services with their respective DaaS offerings, Amazon Workspaces, and Microsoft Windows Virtual Desktop. Smaller companies in industries heavily targeted by cybercriminals frequently rely on DaaS in order to offload the security to these 3rd party providers. The escrow industry, for instance, commonly involves small companies handling large sums of money. The constant attempts of bad actors to re-route wire transfers during home sales has led many of these escrow companies to outsource the required software and environment to DaaS providers such as Citrix Managed Desktop. Offloading the security to a 3rd party vendor can greatly reduce overhead related to employing full-time security professionals while also reducing a business’ cybersecurity insurance premiums.
Edge computing attempts to solve the issues related to latency, one of the primary drawbacks in cloud-computing. The idea is to utilize distributed systems in order to move processing closer to the local devices when possible. Content Management Systems (CMS) are a great example of a service benefiting from a reduction in latency for web traffic. By utilizing a Content Delivery Network (CDN), your website will have multiple servers housing the same web content in different locations around the globe. Your site then feeds the content from the server that is closest to the device loading the content. This improves user experience dramatically by providing quicker load times for web pages due to minimizing the latency inherent with sending data across greater distances.
This same strategy is implemented for other instances of cloud-computing as well. Businesses will utilize a central server for heavy data processing while edge devices take over when instant response times are needed, such as with real time data processing.
Benefits of Cloud-Computing for Businesses
The benefits of cloud-computing are significant and varied enough for almost any business to see some advantage in migrating to the cloud. For some, the savings and predictable monthly costs are reason enough to make the change. Businesses in tech heavy industries need the instant scalability offered, while reduction in staff can be a big benefit for business owners that don’t want the added responsibility of managing their own internal IT department. In conclusion, the evolution of cloud-computing is in a state of near exponential growth. New technology is being introduced at a breakneck pace, with each new advance pushing the capabilities of every other technology forward. With machine learning and artificial intelligence still in its infancy, it’s fair to say that with cloud-computing, not even the sky is the limit.