Cloud Computing
Cloud Computing
Cloud Computing is the delivery of computing services such as servers, storage, databases, networking,
software, analytics, intelligence, and more, over the Cloud (Internet).
Cloud Computing provides an alternative to the on-premises data centre. With an on-premises data
centre, we have to manage everything, such as purchasing and installing hardware, virtualization,
installing the operating system, and any other required applications, setting up the network, configuring
the firewall, and setting up storage for data. After doing all the set-up, we become responsible for
maintaining it through its entire lifecycle.
But if we choose Cloud Computing, a cloud vendor is responsible for the hardware purchase and
maintenance. They also provide a wide variety of software and platform as a service. We can take any
required services on rent. The cloud computing services will be charged based on usage.
The cloud environment provides an easily accessible online portal that makes handy for the user to
manage the compute, storage, network, and application resources. Some cloud service providers are in
the following figure.
Advantages of cloud computing
o Cost: It reduces the huge capital costs of buying hardware and software.
o Speed: Resources can be accessed in minutes, typically within a few clicks.
o Scalability: We can increase or decrease the requirement of resources according to the business
requirements.
o Productivity: While using cloud computing, we put less operational effort. We do not need to
apply patching, as well as no need to maintain hardware and software. So, in this way, the IT team
can be more productive and focus on achieving business goals.
o Reliability: Backup and recovery of data are less expensive and very fast for business continuity.
o Security: Many cloud vendors offer a broad set of policies, technologies, and controls that
strengthen our data security.
o Public Cloud: The cloud resources that are owned and operated by a third-party cloud service
provider are termed as public clouds. It delivers computing resources such as servers, software,
and storage over the internet
o Private Cloud: The cloud computing resources that are exclusively used inside a single business
or organization are termed as a private cloud. A private cloud may physically be located on the
company’s on-site datacentre or hosted by a third-party service provider.
o Hybrid Cloud: It is the combination of public and private clouds, which is bounded together by
technology that allows data applications to be shared between them. Hybrid cloud provides
flexibility and more deployment options to the business.
1. Infrastructure as a Service (IaaS): In IaaS, we can rent IT infrastructures like servers and virtual
machines (VMs), storage, networks, operating systems from a cloud service vendor. We can create
VM running Windows or Linux and install anything we want on it. Using IaaS, we don’t need to
care about the hardware or virtualization software, but other than that, we do have to manage
everything else. Using IaaS, we get maximum flexibility, but still, we need to put more effort into
maintenance.
2. Platform as a Service (PaaS): This service provides an on-demand environment for developing,
testing, delivering, and managing software applications. The developer is responsible for the
application, and the PaaS vendor provides the ability to deploy and run it. Using PaaS, the
flexibility gets reduce, but the management of the environment is taken care of by the cloud
vendors.
3. Software as a Service (SaaS): It provides a centrally hosted and managed software services to
the end-users. It delivers software over the internet, on-demand, and typically on a subscription
basis. E.g., Microsoft One Drive, Dropbox, WordPress, Office 365, and Amazon Kindle. SaaS is used
to minimize the operational cost to the maximum extent.
AWS
o AWS stands for Amazon Web Services.
o The AWS service is provided by the Amazon that uses distributed IT infrastructure to provide
different IT resources available on demand. It provides different services such as infrastructure as a
service (IaaS), platform as a service (PaaS) and packaged software as a service (SaaS).
o Amazon launched AWS, a cloud computing platform to allow the different organizations to take
advantage of reliable IT infrastructure.
Uses of AWS
o A small manufacturing organization uses their expertise to expand their business by leaving their
IT management to the AWS.
o A large enterprise spread across the globe can utilize the AWS to deliver the training to the
distributed workforce.
o An architecture consulting company can use AWS to get the high-compute rendering of
construction prototype.
o A media company can use the AWS to provide different types of content such as ebox or audio
files to the worldwide files.
Pay-As-You-Go
Based on the concept of Pay-As-You-Go, AWS provides the services to the customers.
AWS provides services to customers when required without any prior commitment or upfront
investment. Pay-As-You-Go enables the customers to procure services from AWS.
o Computing
o Programming models
o Database storage
o Networking
Advantages of AWS
1) Flexibility
o We can get more time for core business tasks due to the instant availability of new features and services in
AWS.
o It provides effortless hosting of legacy applications. AWS does not require learning new technologies and
migration of applications to the AWS provides the advanced computing and efficient storage.
o AWS also offers a choice that whether we want to run the applications and services together or not. We
can also choose to run a part of the IT infrastructure in AWS and the remaining part in data centres.
2) Cost-effectiveness
AWS requires no upfront investment, long-term commitment, and minimum expense when compared to
traditional IT infrastructure that requires a huge investment.
3) Scalability/Elasticity
Through AWS, autoscaling and elastic load balancing techniques are automatically scaled up or down,
when demand increases or decreases respectively. AWS techniques are ideal for handling unpredictable
or very high loads. Due to this reason, organizations enjoy the benefits of reduced cost and increased
user satisfaction.
4) Security
o AWS provides end-to-end security and privacy to customers.
o AWS has a virtual infrastructure that offers optimum availability while managing full privacy and isolation
of their operations.
o Customers can expect high-level of physical security because of Amazon's several years of experience in
designing, developing and maintaining large-scale IT operation centers.
o AWS ensures the three aspects of security, i.e., Confidentiality, integrity, and availability of user's data.
The services of GCP can be accessed by software developers, cloud administrators and IT professionals
over the Internet or through a dedicated network connection.
Apart from this, GCP was announced as the leading cloud platform in the Gartner's IaaS Magic Quadrant
in 2018. Gartner is one of the leading research and advisory company. Gartner organized a campaign
where Google Cloud Platform was compared with other cloud providers, and GCP was selected as one of
the top three providers in the market.
Most companies use data centers because of the availability of cost forecasting, hardware certainty, and
advanced control. However, they lack the necessary features to run and maintain resources in the data
center. GCP, on the other side, is a fully-featured cloud platform that includes:
o Capacity: Sufficient resources for easy scaling whenever required. Also, effective management of those
resources for optimum performance.
o Security: Multi-level security options to protect resources, such as assets, network and OS -components.
o Network Infrastructure: Number of physical, logistical, and human-resource-related components, such as
wiring, routers, switches, firewalls, load balancers, etc.
o Support: Skilled professionals for installation, maintenance, and support.
o Bandwidth: Suitable amount of bandwidth for peak load.
o Facilities: Other infrastructure components, including physical equipment and power resources.
Therefore, Google Cloud Platform is a viable option for businesses, especially when the businesses
require an extensive catalog of services with global recognition.
Benefits of Google Cloud Platform
Some of the main benefits of Google Cloud Platform are explained below:
Best Pricing: Google enables users to get Google Cloud hosting at the cheapest rates. The hosting plans
are not only cheaper than other hosting platforms but also offer better features than others. GCP
provides a pay-as-you-go option to the users where users can pay separately only for the services and
resources they want to use.
Work from Anywhere: Once the account is configured on GCP, it can be accessed from anywhere. That
means that the user can use GCP across different devices from different places. It is possible because
Google provides web-based applications that allow users to have complete access to GCP.
Private Network: Google has its own network that enables users to have more control over GCP
functions. Due to this, users achieve smooth performance and increased efficiency over the network.
Scalable: Users are getting a more scalable platform over the private network. Because Google uses
fiber-optic cables to extend its network range, it is likely to have more scalability. Google is always
working to scale its network because there can be any amount of traffic at any time.
Security: There is a high number of security professionals working at Google. They always keep trying to
secure the network and protect the data stored on servers. Additionally, Google uses an algorithm that
encrypts all the data on the Cloud platform. This gives assurance to the users that their data is
completely safe and secure from unauthorized sources.
Redundant Backup: Google always keeps backup of user's data with built-in redundant backup
integration. In case a user has lost the stored data, it's not a big problem. Google always has a copy of
the users' data unless the data is deleted forcefully. This adds data integrity, reliability and durability with
GCP.
o On-demand services: Automated environment with web-based tools. Therefore, no human intervention is
required to access the resources.
o Broad network access: The resources and the information can be accessed from anywhere.
o Resource pooling: On-demand availability of a shared pool of computing resources to the users.
o Rapid elasticity: The availability of more resources whenever required.
o Measured service: Easy-to-pay feature enables users to pay only for consumed services.
Working of Google Cloud Platform
When a file is uploaded on the Google cloud, the unique metadata is inserted into a file. It helps identify
the different files and track the changes made across all the copies of any particular file. All the changes
made by individuals get synchronized automatically to the main file, also called a master file. GCP further
updates all the downloaded files using metadata to maintain the correct records.
Suppose that MS Office is implemented on Cloud to enable several people to work together. The
primary aim of using cloud technology is to work on the same project at the same time. We can create
and save a file on the cloud once we install a plug-in for the MS Office suite. This will allow several
people to edit a document at the same time. The owner can assign access to specific people to allow
them to download and start editing the document in MS Office.
Once users are assigned as an editor, they can use and edit the document's cloud copy as desired. The
combined, edited copy is generated that is known as the master document. GCP helps to assign a
unique URL to each specific copy of the existing document given to different users. However, any of the
authorized users' changes will be visible on all the copies of documents shared over the cloud. In case
multiple changes are made to the same document, then GCP allows the owner to select the appropriate
changes to keep.
Google Cloud Platform Services
Google provides a considerable number of services with several unique features. That is the reason why
Google Cloud Platform is continually expanding across the globe. Some of the significant services of GCP
are:
o Compute Services
o Networking
o Storage Services
o Big Data
o Security and Identity Management
o Management Tools
o Cloud AI
o IoT (Internet of Things)
Compute Services
GCP offers a scalable range of computing services, such as:
o Google App Engine: It is a cloud computing platform that follows the concept of Platform-as-a-Service to
deploy PHP, Java and other software. It is also used to develop and deploy web-based software in Google-
managed data centers. The most significant advantage of Google App Engine is its automatic scaling
capability. This means that the App Engine automatically allocates more resources for the application when
there is an increase in requests.
o Compute Engine: It is a cloud computing platform that follows the concept of Infrastructure-as-a-Service
to run Windows and Linux based virtual machines. It is an essential component of GCP. It is designed on
the same infrastructure used by Google search engine, YouTube and other Google services.
o Kubernetes Engines: This computing service is responsible for offering a platform for automatic
deployment, scaling, and other operations of application containers across clusters of hosts. The engine
supports several container tools like a docker, etc.
Networking
GCP includes the following network services:
o VPC: VPC stands for Virtual Private Network. The primary function of VPC is to offer a private network with
routing, IP allocation, and network firewall policies. This will help to create a secure environment for the
application deployments.
o Cloud Load Balancing: As its name states, Cloud balancing are used to distribute workload across
different computing resources to balance the entire system performance. This also results in cost-
reduction. The process also helps in minimizing the availability and maximizing the capability of the
resources.
o Content Delivery Network: CDN is a geographically distributed network of proxy servers and their data
centers. The primary aim of using CDN is to provide maximum performance to the users. Additionally, it
also helps deliver high availability of resources by equally distributing the related services to the end-users.
Storage Services
GCP has the following storage services:
o Google Cloud Storage: It is an online data storage web service that Google provides to its users to store
and access data from anywhere. The service also includes a wide range of features like maximum
performance, scalability, security and sharing.
o Cloud SQL: It is a web-service that enables users to create, manage, and use relational databases stored on
Google Cloud servers. The service itself maintains and protects the databases, which helps users focus on
their applications and other operations.
o Cloud Bigtable: It is known for its fast performance and highly manageable feature. It is a highly scalable
NoSQL database service that allows collecting and retaining data from as low as 1 TB to hundreds of PB.
Big Data
GCP provides a variety of services related to big data; they are:
o BigQuery: It is a fully managed data analysis service by Google. The primary aim of Google BigQuery
service is to helps businesses to analyze Big Data. It offers a highly scalable data management option. This
means BigQuery allows users to perform ad-hoc queries and share data insights across the web.
o Google Cloud Datastore: Google Cloud Datastore is a kind of datastore service that is fully managed,
schema-less, and non-relational. This service enables businesses to perform automatic transactions and a
rich set of queries. The main advantage of Google Cloud Datastore is the capability of automatic scaling.
This means that the service can itself scale up and down, depending on the requirement of resources.
o Google Cloud Dataproc: It is a very fast and easy to use big data service offered by Google. It mainly
helps in managing Hadoop and Spark services for distributed data processing. The service allows users to
create Hadoop or Spark clusters sized according to the overall workload and can be accessed whenever
users want them.
o Cloud Data Loss Prevention API: It is mainly designed to manage sensitive data. It helps users manage
sensitive data elements like credit card details, debit card details, passport numbers, etc. It offers fast and
scalable classification for sensitive data.
o Cloud IAM: It stands for Cloud Identity and Access Management. It is a framework that contains rules and
policies and validates the authentication of the users for accessing the technology resources. That is why it
is also known as Identity Management (IdM).
Management Tools
GCP includes the following services related to management tools:
o Google Stackdriver: Google Stackdriver service is primarily responsible for displaying the overall
performance and diagnostics information. This may include insights of data monitoring, tracing, logging,
error reporting, etc. The service also prompts an alert notification to the public cloud users.
o Google Cloud Console App: It is a native mobile application powered by Google. The primary aim of this
service is to enable users to manage the core features of Google Cloud services directly from their mobile
devices anytime, anywhere. The primary functions of this service are alerting, monitoring, and performing
critical actions on resources.
Cloud AI
When it comes to Cloud AI, GCP offers these services:
o Cloud Machine Learning Engine: It is another fully managed service that allows users to create Machine
Learning models. The service is mainly used for those ML models, which are based on mainstream
frameworks.
o Cloud AutoML: It is the type of service that is based on Machine Learning. It helps users to enter their data
sets and gain access to quality trained pre-designed ML models. The service works by following Google's
transfer learning and Neural Architecture Search method.
Cloud IoT Core: It is one of the fully managed core services. It allows users to connect, control, and
ingest data from various devices that are securely connected to the Internet. This allows other Google
cloud services to analyze, process, collect and visualize IoT data in real-time.
Cloud IoT Edge: The Edge computing service brings memory and other computing-power resources
near to the location where it is required.
o Google Cloud Offers Quick and Easy Collaboration: Multiple users can access the data and
simultaneously contribute their information. This is possible because the data is stored on the cloud
servers, not on the user's personal computers.
o Higher Productivity with Continuous Development: Google is always working on adding new features
and functionalities to provide higher productivity to the customers. Therefore, Google delivers frequent
updates to its products and services.
o Less Disruption with Adopting New Features: Instead of pushing huge disruptive updates of changes,
Google provides small updates weekly. This helps users to understand and adopt new features easily.
o Least or Minimal Data is stored on Vulnerable Devices: Google does not store data on local devices
unless a user explicitly tries to do it. This is because the data stored on local devices may get compromised
compared to the cloud's data.
o Users can access Google Cloud from Anywhere: The best thing is that a user can easily access the
information stored on Google cloud from anywhere because it is operated through web-based
applications.
o Google provides Maximum Security with its Robust Structure: Google hires leading security
professionals to protect user's data. Users get process-based and physical security features made by
Google.
o Users have Full Control over their Data: Users gain full control over services and the data stored in
Google Cloud. If a user does not want to use Google services any longer and wants to delete the cloud
data, it can be easily performed.
o Google provides Higher Uptime and Reliability: Google uses several resources to provide higher and
reliable up-time servers. If a data center is not working for technical issues, the system will automatically
communicate with the secondary center without interruption visible to users.
Microsoft Azure
Microsoft Azure is a growing set of cloud computing services created by Microsoft that hosts your
existing applications, streamline the development of a new application, and also enhances our on-
premises applications. It helps the organizations in building, testing, deploying, and managing
applications and services through Microsoft-managed data centers.
Azure Services
o Compute services: It includes the Microsoft Azure Cloud Services, Azure Virtual Machines, Azure
Website, and Azure Mobile Services, which processes the data on the cloud with the help of
powerful processors.
o Data services: This service is used to store data over the cloud that can be scaled according to
the requirements. It includes Microsoft Azure Storage (Blob, Queue Table, and Azure File services),
Azure SQL Database, and the Redis Cache.
o Application services: It includes services, which help us to build and operate our application, like
the Azure Active Directory, Service Bus for connecting distributed systems, HDInsight for
processing big data, the Azure Scheduler, and the Azure Media Services.
o Network services: It helps you to connect with the cloud and on-premises infrastructure, which
includes Virtual Networks, Azure Content Delivery Network, and the Azure Traffic Manager.
Microsoft Azure is completely based on the concept of virtualization. So, similar to other virtualized data
center, it also contains racks. Each rack has a separate power unit and network switch, and also each rack
is integrated with a software called Fabric-Controller. This Fabric-controller is a distributed application,
which is responsible for managing and monitoring servers within the rack. In case of any server failure,
the Fabric-controller recognizes it and recovers it. And Each of these Fabric-Controller is, in turn,
connected to a piece of software called Orchestrator. This Orchestrator includes web-services, Rest API to
create, update, and delete resources.
When a request is made by the user either using PowerShell or Azure portal. First, it will go to the
Orchestrator, where it will fundamentally do three things:
Combinations of racks form a cluster. We have multiple clusters within a data center, and we can have
multiple Data Centers within an Availability zone, multiple Availability zones within a Region, and
multiple Regions within a Geography.
o Geographies: It is a discrete market, typically contains two or more regions, that preserves data
residency and compliance boundaries.
o Azure regions: A region is a collection of data centers deployed within a defined perimeter and
interconnected through a dedicated regional low-latency network.
Azure covers more global regions than any other cloud provider, which offers the scalability needed to
bring applications and users closer around the world. It is globally available in 50 regions around the
world. Due to its availability over many regions, it helps in preserving data residency and offers
comprehensive compliance and flexible options to the customers.
VMware Cloud
VMware cloud is a Software-Defined Data Center (SSDC) unified platform for the Hybrid Cloud. It allows
cloud providers to build agile, flexible, efficient, and robust cloud services.
Features of VMware
o VMware cloud works on the pay-as-per-use model and monthly subscription
o It provides better customer satisfaction by protecting the user's data.
o It can easily create a new VMware Software-Defined Data Center (SDDC) cluster on AWS cloud by
utilizing a RESTful API.
o It provides flexible storage options. We can manage our application storage on a per-application basis.
o It provides a dedicated high-performance network for managing the application traffic and also supports
multicast networking.
o It eliminates the time and cost complexity.