In this lesson,
we're going to dive into the world
of cloud computing technologies.
After all, cloud computing is everywhere these days,
and much of the cloud is built on top of Linux servers.
Cloud computing also leverages networking
so that we can quickly share resources
and our physical servers
are often being replaced with cloud services
to provide infrastructure, services, platforms,
and applications on-demand
across the network or across the internet.
Virtualization technologies
have really revolutionized the way
that hardware is being used in many businesses,
and this forms the basis of cloud computing.
Applications and desktops are becoming more virtualized,
and this provides easier access to users and employees
that makes remote work easier to perform.
The virtualization of these networks, storage, and servers
improves the efficiency
and performance metrics for your organization,
and allows you to have a more powerful
and reliable infrastructure as well.
So, in this lesson, we're going to explore some ways
that we can configure cloud technologies
in order to optimize your own Linux infrastructure.
Now, cloud computing is a relatively new
and rapidly changing aspect of the IT industry.
According to the National Institute
of Standards and Technology, known as NIST,
there are five essential characteristics
of cloud computing.
This includes on-demand self-service,
broad network access, resource pooling,
rapid elasticity, and measured service.
Cloud services are characterized by their flexibility
in terms of deployment, scale, support, and fault tolerance.
By using cloud computing, businesses are able
to rapidly expand their resources on-demand
and only pay for the resources that they actually consume.
There are three primary models of cloud computing
with many subvariations of each one.
These include SaaS, PaaS, and IaaS.
Now, SaaS is the software as a service model.
Software as a service provides applications
to your end users.
The applications are not installed directly
on the user's workstation, though,
and are instead delivered over-the-network
as either a web application
or progressive web application
that can be installed on the user's workstation.
For example, I use a project management tool called ClickUp,
which can be used as a web application,
a progressive web application installed on my smartphone,
or as a progressive web application
that's installed on my workstation.
The big difference
with these different SaaS type offerings, though,
is that most of the work and storage of that data
is being done by the cloud services
and not the application that we installed on our smartphone
or our workstation.
And this is really the heart of SaaS.
Next, we have PaaS.
PaaS is the platform as a service model.
The platform as a service model includes virtualization
of the operating system layer of the environment,
as well as some applications or server software.
For example, if you wanted to create your own applications,
you could develop them
using a platform as a service cloud offering
that provides you with a development environment,
a database, and other things
that are ready for you as the customer
to use in your own projects.
These are not fully developed as a SaaS product,
but you can instead use them
to create your own SaaS products
on top of the PaaS cloud offering
that you're going to be using.
This area of cloud computing
is typically going to provide services to developers
and database administrators, not the end user.
The next one we have is known as IaaS.
The IaaS, or infrastructure as a service model,
is going to include the physical devices
such as servers, switches, routers, and other devices
that are virtualized and owned
by the cloud service provider.
This area of cloud computing
typically provides service to system administrators.
For example, if you've ever used Amazon's EC2 service,
you're going to be able to spin up a new virtual machine
on their servers, install Linux on it,
and then configure it to run as a web server,
an email server, a DNS server,
or whatever else you might need for your business needs.
In addition to being classified
as either SaaS, PaaS, or IaaS,
cloud services can also be categorized
based on who owns the cloud environment
that you're going to be using.
This is referred to as a public, private,
or hybrid cloud infrastructure.
First, we have public clouds.
Now, public clouds refer to hardware resources
that are owned by the cloud service provider,
and your customer resources, compute functions,
storage, and other features
can be shared among multiple different customers.
For example, if you've ever used Google Docs,
this is an example of a software as a service
or SaaS product,
but it runs in a public cloud that's owned by Google
as part of their Google Cloud Platform.
Second, we have private clouds.
Private clouds refer to the use of cloud technologies
as an on-premise solution.
In a private cloud,
the organization itself owns
and operates all the servers and infrastructure,
and then provides them to the rest of the organization
to build services and programs on top of it.
Alternatively, an organization can also contract out
to another organization
to create a private cloud for them
by setting aside dedicated hardware
for the contracting organization.
Private clouds are used to satisfy security requirements
and enables a company to control
exactly where their data is residing at any given moment.
And so, this can provide an easier overall management
and higher level of security
than using something like a public cloud.
For example, the US government
has contracted Amazon Web Services to create the GovCloud.
This is a private cloud that's operated by Amazon
for the exclusive use of the US government.
All of the hardware is set aside
and can only be used by government agencies
when they're building their own SaaS, PaaS,
and IaaS solutions inside of the GovCloud.
Third, we have hybrid clouds.
Now, hybrid clouds are a combination
of the other two concepts we just discussed:
public clouds and private clouds.
This can enable more cost-effective management for you,
but it also gives you the strict security management you get
with private clouds.
For example, my company has local file servers that we use
as part of our on-premise private cloud.
Then, we could connect our internal private cloud
to some EC2 instances inside of the AWS public cloud
to create a larger and more robust enterprise network.
This is now spanning both the public and private clouds,
so it becomes a hybrid cloud.
Now, there are many different
cloud service providers out there,
but the three biggest ones you're going to come across
are Amazon Web Services, known as AWS;
Microsoft Azure, known as Azure;
and the Google Cloud Platform, known as GCP.
Amazon Web Services
is used to support many different deployment options
with a wide variety of cloud-based services
under the SaaS, PaaS, and IaaS models.
By default, AWS instances
are built on a customized Linux solution
known as Amazon Linux AMI
or the Amazon Linux Amazon Machine Image.
If you choose to use the Amazon Linux AMI solution,
you don't have to pay any licensing costs upfront
because it is free and open-source for you to use
inside the AWS cloud.
On the other hand,
you can also choose to use Windows servers
inside of AWS, too,
but you will have to pay higher costs
to cover the licensing of those server's operating systems
for any instances that you spin up
and start running inside your cloud.
Microsoft Azure also provides
a lot of different deployment options and services.
Pretty much everything you can do in AWS,
you can also do in Microsoft Azure's cloud environment, too.
Microsoft Azure does support both Windows Analytics servers
inside its cloud environment.
But, of course, because Azure is run by Microsoft,
they do tend to try and convince you
to run Windows servers by default.
But, it does support the deployment
of Linux-based solutions,
not just Windows solutions if you want to use those.
Third, we have GCP or the Google Cloud Platform.
This is the third major player
inside the cloud services industry.
Just like AWS and Azure,
GCP can support SaaS, PaaS, and IaaS deployments
using both Linux and Windows servers.
Now, in addition to these three major players,
Red Hat also provides a Linux-based cloud solution
that's designed as a full-featured private cloud
for organizations that are more security-conscious
and want to be able to control
their own hardware and infrastructure.
All these cloud service providers
allow you to use compute, storage, database, IoT,
development platforms,
business continuity services, data center management,
and lots of scalability inside of their offerings.
Now, this lesson was really just a quick review
from your A+, Network+, and Security+ studies.
So, I really just wanted to go over the concepts
surrounding the SaaS, PaaS, and IaaS,
as well as public, private, and hybrid clouds
to ensure you have a solid foundation
before we move further into the course.