If you’re wondering what is cloud computing and how it works, then this series is for you. In our first post, we talked about cloud computing resources, history, benefits, and types of cloud computing. Today, we’ll answer the question, “what is cloud computing?” from a different perspective. We’ll look at the cloud computing services and a few cloud computing use cases that businesses can relate to. Finally, we’ll talk about how data center architecture is reflected in the cloud.
In the final “episode” of this series, we’ll spend a full post about the disadvantages of cloud computing you should know.
Cloud Computing services
If you’ve read our first post of this series What is cloud computing?, you should have an idea about the different types of cloud computing (public, private, and hybrid), you’ll need to know which cloud computing service you would like to deploy within it.
There are many different cloud services available, with more being defined all the time. The three most common cloud services are Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). Each provides a different level of manageability and customization for your solution.
Software as a Service (SaaS)
You have probably used many examples of Software as a Service applications without even realizing it. SaaS helps deliver an application that can be widely distributed and accessed. An example of this would be Google’s Gmail. This email-based application is fully managed and accessed over the internet. You are not required to install any software on your local device to be able to use it. SaaS apps are usually simple in their design to ensure ease of use for a wider audience. From a user perspective, this offers the least amount of customization for the application itself.
Platform as a Service (PaaS)
Platform as a Service providers offer you a higher level of management and control by providing access to a framework from the operating system, up. The underlying architecture of the host hardware network components and OS are typically managed by the vendor, who also takes care of maintenance and support. This aspect makes it a great deployment service for developers who are free to concentrate on developing and not on maintenance.
Infrastructure as a Service (IaaS)
The infrastructure as a Service model offers the highest level of customization and management. This cloud service allows you to architect your environment by configuring a virtual network that is segmented from other networks. This allows you to deploy the compute, storage, and other network resources that you require, and you can configure the type of OS and applications that you need. IaaS allows you to take full advantage of the cloud’s automation, resiliency, and other infrastructure service features. The underlying host is still managed by the vendor for maintenance purposes.
Other cloud service models
There are a number of other cloud computing services defined as XaaS, which is essentially anything as a service and includes Disaster Recovery as a Service, Communications as a Service, and Monitoring as a Service.
Cloud Computing use cases
Now that we’ve looked at cloud services, let’s explore at some of the most common use cases for implementing cloud computing.
Migrating production services from an on-premise solution into the cloud is one of the most common cloud computing use cases. This allows companies to take advantage of all of the benefits of the cloud, as we outlined in our previous post on What is Cloud Computing. Some companies have even chosen to host all of their infrastructure in the cloud.
If you’re in the retail business, for example, demand on your e-commerce infrastructure will spike over certain periods of the year (Christmas, for example). In a classic data center environment, you’d need to provision your compute, storage, and network capacity to reflect this. This is not an effective method of scaling. You will be paying for extra infrastructure that you may only use for a couple of months of the year. Cloud computing offers a far better method for handling peak traffic loads. The public cloud can be used to scale your network and resources to manage and handle this additional traffic over your peak season. When traffic has reduced, you can terminate your infrastructure within the cloud. Remember, you only pay for what you use, when you use it.
Backup and disaster recovery
The public cloud’s built-in resiliency and durability offers a great backup solution. To a degree, you have access to unlimited storage space with built-in data lifecycle management policies, which allows you to make use of even cheaper storage. For example, using Amazon Web Services, you could implement a policy to archive any data that is over 30 days old to AWS Glacier, a cold storage service with an even lower storage cost. The data is then available as long as you have access to the internet. These storage services are often replicated by the vendor to ensure durability.
Many organizations choose to host their web services in the cloud because it can balance the load across multiple servers and scale up and down quickly and automatically with traffic. The ability to provision and implement automatic scaling simplifies the whole process and takes out much of the administrative input and maintenance required. Businesses can also make use of services such as Content Delivery Networks (CDN) and Domain Name Services (DNS).
In our What is Cloud Computing post, we talked about selecting a geographic region for your instance depending on where your end users are located. Well, what if you have end users all over the world? A CDN is a set of systems that redirects traffic to the closest caching server, which can deliver the content much faster. If there are sufficient caching servers in place, a CDN can reduce the latency of a website for users across the globe. DNS services can help manage demand on your web servers by redirecting any request to a load balancer first. This allows you to reduce demand on a particular server by evenly distributing requests across multiple web servers.
Testing and development
As with traffic bursting, you may not have the capacity to host lots of servers and storage in your data center for testing and development purposes. This would also be a huge expense. Using the public cloud allows you to spin up servers as you need them, and then shut them down when you’re finished. This also allows you to provision the size and capacity of your compute resources. For example, If you just need a high and powerful server for an hour’s worth of testing, then you can have it. Having this wide range of compute resources within your own data center would be costly.
Proof of concept
The cloud allows you to implement a proof of concept design and helps you bring ideas to life at a fraction of the cost. The results of your proof of concept can help you build a successful business case when presenting to senior management.
Big Data and data manipulation
The cloud also makes it easier and cheaper to manage Big Data. Maintaining and implementing compute resources to handle huge datasets can be expensive and complicated. Using cloud computing resources, you can use only the resources you need to analyze data when you need them. Some public cloud vendors offer specialized managed Big Data services that gives you managed resource infrastructure and a framework on which to run your workloads. With a vendor managing some of these elements, you can focus on data processing and not worry about the underlying architecture.
How data center architecture is reflected in the cloud
While you may be new to the concept of cloud computing, you probably have at least a basic understanding of architecture from a classic on-premise solution within a data center. As a whole, we can break the data center and its architecture down into six components.
A business may have multiple data centers to house their infrastructure, and they can be located on-site or off-site. Public cloud providers all have at least two data centers within each region, around the world. These data centers will be in different geographic locations within that region, but close enough to provide interconnection for high-speed links for data transfer, aiding high availability and resilience.
Because the public cloud is operated, managed, and maintained by the vendor, the end user doesn’t have access to the physical data center where the resources are located.It is the vendor’s responsibility to manage and implement proper security and certification. Public cloud vendors must adhere to the most stringent security controls. You can check out your cloud provider’s compliance documentation online.
Mechanical and electrical infrastructure
Generators, uninterruptible power supplies, computer room air conditioning units for cooling, fire suppression, etc. are located at the data center itself. It is the vendor’s responsibility to ensure that they are implementing the correct capacity, resiliency, and testing to ensure availability and uptime of their infrastructure. Again, this burden is removed from the end user.
Roles and responsibilities begin to change with the components described below.
In the cloud, networking components such as switches, routers, and even firewalls have been replaced with virtual networks and their configurable components. The back-end elements of how these services work are again maintained and managed by the vendor, but architecting how your virtual network is created is your responsibility. It’s also the user’s responsibility to ensure that the network is secure and not vulnerable to attacks.
Depending on your vendor, servers are typically referred to as instances or virtual machines, VMs. Vendors provide different services to reflect servers in the cloud. For example, some providers offer servers that are specific to hosting databases, and others offer heavy processing power for analyzing big data. This is a major benefit offered by the cloud. Vendors can replicate the functions you use with your in-house data center, but with many more advantages.
Storage is fantastic within the cloud, as it’s often regarded as unlimited, hugely scalable, and highly durable. As with compute power, there are different storage services depending on the data you’re using, and where you intend to use it. Within your data center environment, you may have access to a storage area network, SAN. Public cloud providers can also provide this block-level storage via their different services. There are other great storage services within the public cloud for fire level storage, object storage, and a range of different solutions.
Next Steps: Cloud Computing disadvantages and…
We are nearing the end of this series. I hope you now have an understanding of the most common cloud services, some frequent cloud computing use cases and how cloud computing can be used, deployed, and the benefits it offers over a typical data center deployment. The last important step of this series we highly recommend you will be about the disadvantages of cloud computing. In the meantime, check out the free Cloud Academy course What is Cloud Computing? for detailed examples and more information.