What is Cloud Computing?
Cloud Computing simply refers to the use of a globally available network of remote servers hosted on the internet to store, manage and process data. This is mostly done with the aim of reducing operational costs that are incurred by having dedicated infrastructure engineers on-premises. With this approach, a cloud provider now takes responsibility for the management of required IT infrastructure and Data Centers. Subscribed clients only pay for the use of resources that run on the provider’s infrastructure on a pay per use basis.
A great example is power utility firms, we could very well set up our own electricity generation plants to supply our own power, but the costs involved are way too high. Instead, designated organizations take care of the engineering heavy lifting and we only get to pay for the power that we actually use! This is pretty much the same approach that cloud computing takes, only now we’re dealing with servers, networking, databases, security, monitoring, data analytics among many other services.
Going with Amazon’s definition of Cloud Computing:
Cloud computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing. Instead of buying, owning, and maintaining physical Data Centers and servers, you can access technology services, such as computing power, storage, and databases, on an as-needed basis from a cloud provider like Amazon Web Services (AWS).
Today, the cloud is a part of everyday life that has quickly become an ideal solution for organizations’ technology needs everywhere. Owing to its scalability, on-demand solutions, and flexible pricing, organizations can focus on bringing their innovative ideas to life rather than stressing about the heavy lifting associated with the underlying infrastructure.
I will be basing my article on the Amazon Web Services Cloud Computing platform as this is what I am familiar with and experienced with. AWS Cloud also happens to be the leading global provider of Cloud Computing technologies, they pretty much set the tone for what is Cloud Computing.
Advantages of Cloud Computing?
- Faster Global Service Deployment. Making use of the global infrastructure footprint of AWS Cloud, you can deploy your applications in multiple locations by just following a few simple steps; literally clicks away. This enables a quick expansion of services to new geographic locations.
- Elastic Usage and Billing. With Cloud Computing, you only spin up resources that you need depending on your business needs at that point in time. It offers the flexibility of scaling resources up and down based on demand. You can thereby reduce resource wastage.
- Cost Savings. Cloud Computing is very attractive in that you only get to pay for what you use. This is also cheaper since one gets to take advantage of the economies of scale that Cloud Computing provides.
- Agile Service Delivery. Cloud Computing gives you the edge of being able to quickly test and implement new innovative services using a wide range of Cloud technologies and resources that are readily available, for instance, Blockchain, Machine Learning, and Quantum technologies.
- High Availability and Redundancy. Cloud providers such as AWS have invested in setting up multiple Data Centers across the globe in what is referred to as availability zones and regions. In the event that one Data Center goes down, your service is uninterrupted as another Data Center picks up with the same quality of uninterrupted service.
In light of all of the above, if youâ€™re interested in getting into a technology field now or in the future, a grasp of cloud computing skills is important. You can start with an Insoft instructor-led training on AWS Cloud Computing Associate Fundamentals to build a foundation and grow your expertise.
Types of Cloud Computing
To help meet the unique needs of different users, three types of Cloud Computing models have emerged, these include;
Infrastructure as a Service (IaaS)
This can also be referred to as Hardware as a Service. IaaS provides access to virtual hardware, networking features e.g IP addresses, firewalls and load balancers, and storage space. It is also the model that gives you the most flexibility when it comes to controlling your IT resources.
Software as a Service (SaaS)
With SaaS, you don’t need knowledge of how the underlying infrastructure is managed. You only focus on how you will use a piece of software. The software is offered on a subscription basis. An example being web-based email services; you don’t have to worry about the administration of email servers, you just focus on using the email services. All the software licensing and updates thereof are done by the provider.
Platform as a Service (PaaS)
With this model, a provider offers both hardware and software functionality in a usually ‘provider locked-in’ platform. You just focus on the deployment and management of your applications without having the pressure of procuring resources, capacity planning and any other form of undifferentiated heavy lifting.
Function as a Service (FaaS)
With this model, cloud application developers can execute microservice applications or code; in response to certain events without worrying about the provisioning of servers and other required infrastructure elements. AWS Lambda offers such capabilities. This is a form of serverless computing.
Cloud Deployment Models
A cloud deployment model is based on the location of the deployed infrastructure and even more specifically; who has control over it. The varying deployment models offer different user experiences. They include Private, public, and hybrid cloud models.
This model is very relatable to running a dedicated on-premises IT infrastructure or datacenter environment. The only difference is that virtualization is used in an attempt to increase resource utilization. You can learn more about AWS Virtual Private Cloud here.
This refers to cloud computing services that are offered via the public internet. They are thus available for use either free or on a subscription basis to the general public. With this model, shared resources are leveraged as needed. Examples of public clouds include Amazon EC2, Google AppEngine, IBM Blue Cloud, and Windows Azure services platform.
As the name suggests, a hybrid cloud architecture supports the integration of both an on-premises private cloud and the public cloud. This allows organizations to make use of public cloud resources when the need arises. It incorporates some degree of workload portability between various cloud types. You can learn more about the AWS hybrid cloud here.
Security in The Cloud
After all, is said and done, just how secure are the applications, data and other content that is hosted on the various clouds? Fortunately, most leading cloud service providers take security very seriously. They have thus invested tonnes of resources into building highly secure environments.
Can your data be accessed by other cloud users? Not quite, stringent policies and control mechanisms protect subscriber’s data from being accessed by other cloud users. Additional higher levels of security are also provided in private and hybrid cloud environments especially.
It is also important to appreciate the fact that security is a mutual responsibility between the cloud provider and the client. Amazon Web Services Cloud, for instance, has a well defined shared responsibility model; while AWS is responsible for the security of the cloud, the client is responsible for security in the cloud! Some level of control is given to the clients to implement their own preferred choice of security solutions over their data, applications, and systems; the same way that they do it on an onsite Data Center.
AWS Cloud, for instance, provides security-specific tools and features across data, network security, access control, and configuration management. In addition, redundant and layered controls, security automation, continuous monitoring, validation, and testing are used to ensure that the underlying infrastructure is monitored and protected around the clock. You can learn more about how AWS enforces security in the cloud here.