Book Image

Cloud Computing Demystified for Aspiring Professionals

By : David Santana
5 (1)
Book Image

Cloud Computing Demystified for Aspiring Professionals

5 (1)
By: David Santana

Overview of this book

If you want to upskill yourself in cloud computing domains to thrive in the IT industry, then you’ve come to the right place. Cloud Computing Demystified for Aspiring Professionals helps you to master cloud computing essentials and important technologies offered by cloud service providers needed to succeed in a cloud-centric job role. This book begins with an overview of transformation from traditional to modern-day cloud computing infrastructure, and various types and models of cloud computing. You’ll learn how to implement secure virtual networks, virtual machines, and data warehouse resources including data lake services used in big data analytics — as well as when to use SQL and NoSQL databases and how to build microservices using multi-cloud Kubernetes services across AWS, Microsoft Azure, and Google Cloud. You'll also get step-by-step demonstrations of infrastructure, platform, and software cloud services and optimization recommendations derived from certified industry experts using hands-on tutorials, self-assessment questions, and real-world case studies. By the end of this book, you'll be ready to successfully implement cloud computing standardized concepts, services, and best practices in your workplace.
Table of Contents (23 chapters)
1
Part 1: The Journey to Cloud Computing
5
Part 2: Implementing Cloud Deployment Models
9
Part 3: Cloud Infrastructure Services in Action
13
Part 4: Administrating Database and Security on the Cloud
18
Part 5: Roadmap for a Successful Journey in Cloud Engineering

Cloud computing explored

In this section, you will learn about the cloud computing concepts derived from the National Institute of Standards and Technology (NIST). Then I will describe the cloud computing models used by cloud computing providers today. Additionally, I will describe cloud computing deployment models.

Cloud computing plays an increasingly important role in IT. Therefore, as an IT professional, you must be cognizant of the fundamental cloud principles and methods. There are three main cloud computing deployment models: public, private, and hybrid. Each provides a range of services but implements the resources differently. Equally important to consider are the cloud computing service models: infrastructure as a service (IaaS), platform as a service (PaaS), and SaaS. They are the core tenets from which cloud computing is defined.

By now, you should understand the historic journey that led us to cloud computing. However, if you are still unsure, I highly recommend you revisit the section titled Genesis and then correlate the researched data with the section titled The advent of cloud computing. Nevertheless, the cloud is the culmination of evolutionary technological advancements in human history.

To understand cloud services, we first refer to standards.

There are undoubtedly many organizations that develop standards built to ensure we measure, innovate, and lead following industry best practices to reach an overarching goal, and that is to improve our quality of life.

These standard entities may be deemed regulatory or non-regulatory. For simplicity’s sake, regulatory organizations such as the International Energy Agency (IEA) are appointed by international legislation to devise energy requirement standards, and entities such as NIST are non-regulatory because they define supplemental standards that are not official rules enforced by some regulation delegated through legislation. However, in cloud computing, NIST is the gold standard.

NIST proclaims the following regarding cloud computing services:

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.

The cloud computing model(s), which we will define in grandiose detail in later sections, are derived from NIST standards, which you can review at your leisure, by navigating to their online website. You can use the URL located at http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf.

Cloud computing provides a modern alternative to the traditional on-premises data center. Public cloud providers such as Amazon, Microsoft, and Google are responsible for hardware procurement and continual maintenance, and the public cloud provides on-demand resources. Rent hardware to support your software whenever you need it; organizations can convert what had been an upfront capital expenditure for hardware to an operating expense. This allows you to rent resources that would be traditionally too costly for some companies, and you pay if the resources are being utilized.

Cloud computing typically provides an online website experience, making it user-friendly to administrators who are responsible for managing compute, storage, networking, and other resources. For example, administrators can quickly define VMs by compute size, which includes VM capacity settings, such as virtual CPU core quantity, amount of RAM, disk size, disk performance, an operating system image such as Linux, preconfigured software, and the virtual network configuration, and then has the capability to deploy the VM using the described configuration anywhere in the world, and within several minutes securely access the deployed compute instance where the IT pro or developer can perform role-based tasks. This illustrates the rapid deployment capability of cloud computing defined by NIST.

Cloud computing supports various deployment options as well, such as public, private, and hybrid cloud. These options are known as cloud computing deployment models, not to be confused with IaaS, PaaS, and SaaS cloud computing models.

You will have a general understanding of the public cloud deployment model once you have completed reading this book. So, let me take a moment to elaborate on private and hybrid. In a private cloud, your organization creates a cloud environment in your on-premises data center and provides engineers in your organization with access to private resources. This deployment model offers services similar to the public cloud but exclusively for your users, but your organization remains responsible for procuring the hardware infrastructure and ongoing maintenance of the software services and hardware. In a hybrid-cloud deployment model, enterprise organizations integrate the public and private cloud, permitting you to host workloads in whichever cloud computing deployment model meets your current business requirements. For example, your organization can host highly available website services in the public cloud and then connect it to a non-relational database managed in your private cloud.

Planning, preparing, and implementing a cloud service model is as imperative as deciding whether to remain utilizing traditional systems built using monolithic architecture topology or choose an all-in cloud approach. From a consumer’s point of view, the myriad resources that cloud computing providers such as Amazon, Microsoft, and Google provide are daunting to the untrained eye. Thankfully, Amazon, Microsoft, and Google organize their distributed services into three major categories, referred to as cloud computing models.

One of the first cloud computing models is known as IaaS. In this model, the customer pays the cloud SP (CSP) to host VMs in the public cloud. Customers are responsible for managing the VM guest operating system, including hosted services or applications. This cloud computing model offers the customer complete control and flexibility.

The second cloud computing model is known as PaaS. In this cloud computing model, customers are responsible for the deployment, configuration, and management of applications in an agile manner using the cloud platform. The CSP manages the application runtime environment and is responsible for managing and maintaining the platform’s underlying VM guest operating system.

Another widely utilized cloud computing model is known as SaaS. In this model, clients utilize turnkey online software services such as storage, or email software managed by the cloud computing provider. Customers access cross-platform installable and online apps. These products are typically pay-as-you-go.

Cloud computing providers Amazon, Microsoft, and Google offer all three cloud computing models: IaaS, PaaS, and SaaS. These services are made available as consumption-based offerings. The cloud computing service models form three pillars on top of which cloud computing resources are administered.

All three service models allow the cloud computing engineer to access the services over the internet. The service models are supported by the global infrastructure of the CSP. Every service includes a service-level agreement (SLA) between the provider and the user. The SLA is addressed in terms of the services’ availability, performance, and general security controls.

To help you better understand these service models, I’ll describe in detail IaaS and PaaS enterprise implementation by sharing real-world examples in later chapters from Amazon, Microsoft, and Google.

All three major cloud providers’ solutions are built on virtualization technology, which abstracts physical hardware as a layer of virtualized resources for networking, storage, and processing. Amazon, Microsoft, and Google add further abstraction layers to define specific services that you can provision and manage. Regardless of the unique technology that one of these organizations uses to implement cloud computing solutions, the characteristics commonly observed remain on-demand, broad network access, shared resource pools, and rapid elasticity, and include metering capabilities, which allows enterprise organizations to track resource utilization at a cloud scale.

Cloud computing resources are built-in data centers that are commonly owned and operated by the cloud provider. The cloud core platform includes SANs, database systems, firewalls, and security devices. APIs enable programmatic access to underlying resources. Monitoring and metering are used to track the utilization and performance of resources dynamically provisioned.

The cloud platforms handle resource management and maintenance automatically. Internal services detect the status of each node and server joining and leaving and do the tasks accordingly. Cloud computing providers such as Amazon, Microsoft, and Google have built many economically efficient, eco-friendly data centers all over the world. Each data center theoretically houses tens of thousands of servers.

Here is a layered example of the cloud computing architecture: infrastructure, platform, and application. These layers are implemented with virtualization and provisioned in adherence to each cloud provider’s well-architected framework, which will be explored in a later section for each cloud provider. The infrastructure layer is implemented first to support IaaS resources. This infrastructure layer serves as the foundation to build PaaS resources. In turn, the platform layer is a foundation to implement the application layer for the SaaS.

This begs the question: What are the benefits of said services?