Let's say that you have an application that you would like
to run on the internet, but you don't have any equipment
that you could use to load up an operating system and the code
that you need to run.
In that case, you would need to use someone else's hardware.
And the cloud model for this is Infrastructure as a Service,
or IaaS.
This is sometimes referred to as Hardware as a Service, or HaaS,
because you are, effectively, outsourcing your equipment.
Although you are contracting with a third party
to provide this hardware, you're still
responsible for loading the application and all
of the data.
Sometimes hardware as a service might include the operating
system and sometimes it won't.
So it's up to you to make sure you
have all of the software you need to be
able to run your application.
Since this means that your data will also
be in this cloud-based system, you're
also responsible for the security of that data,
so it's up to you to manage not only the operating
system itself, but all of the data
that you're putting in that operating system.
If you've ever visited the Professor Messer website,
then you've taken advantage of infrastructure as a service
because I've contracted with a third party
to provide the web services, and then I
provide the content on my website.
Another popular cloud model is Software as a Service, or SaaS,
sometimes called "sass."
With software as a service, you don't
have to create the software.
You don't have to manage the infrastructure.
You don't have to create or manage any hardware.
This means if you need to send emails
from an email distribution system,
you don't have to manage any of that system.
You only have to provide the content for the emails.
Or if you're in charge of the payroll for your company,
instead of you managing your own payroll system,
you can use a third party payroll system
to manage the entire process.
This means that the applications, the data,
and everything that you're using will be located in the cloud.
And because it's software as a service,
someone else is responsible for managing and securing
all of that data.
This means that you, as the end user,
doesn't have to perform any development work.
Someone else is writing the application.
They are managing the systems.
And all you have to do is log into your web browser
and use the application.
This means that if you use Office 365 or Google Mail,
you're taking advantage of software as a service.
You can think of Platform as a Service, or PaaS,
as a middle-ground between software
as a service and infrastructure as a service.
This is a cloud-based system that someone else is managing
and in fact, they're providing you
with all of the building blocks you need
to build your own applications.
You don't have to worry about running the servers
or having a data center.
But instead, you can log into this platform
and build out exactly the type of application that you'd like.
It's very common for a platform as a service provider
to give you all of the building blocks you need,
so that you don't have to provide development
from scratch.
For example, if you need a login screen,
you would use the login block in your platform
as a service front end.
Then you might want an inventory page,
so you would grab the inventory block
and add it to your application.
This means that you can quickly create these applications,
but you don't have to perform a lot of programming
from scratch.
The platform as a service provider
provides all of the building blocks,
and you simply take advantage of that platform.
If you've used, for example, SalesForce.com
to put together your own custom-built application,
then you've used platform as a service.
If you were to create your own data
center with your own equipment running your own applications
that you've installed yourself, then everything
would be on premises.
Everything from the network, to the servers,
to the operating systems and applications
are all on systems that are inside of your facility.
With infrastructure as a service,
we would have the networking, storage server,
and virtualization managed by a provider,
and then we would handle everything else.
If this was software as a service,
all of these components would be provider-managed.
And if it was platform as a service,
you might have the provider give you everything
up to the runtime section, but you would still
be responsible for the application and the data.
There are different types of models
that you can use to roll out these cloud-based applications.
One is a public model where everyone, anywhere
on the internet, would be able to gain access and use
your cloud-based system.
You could also have a cloud-based infrastructure
that was community based.
There may be multiple organizations that
have a similar goal, and all of those organizations
can work together to pool their resources
and be able to afford this cloud-based system.
Or perhaps, you want to take advantage
of these cloud-based technologies,
but you want to do it inside of your own data center.
In that case, it would be a private cloud.
And a mix of public and private, which
is extremely common in most organizations,
would be considered a hybrid model.
If you're managing a lot of different workstations
and desktops in your environment,
you might consider using cloud-based technologies
to take what you're doing internally
and push it out to a single provider.
In that case, you would be using Desktop as a Service, or DaaS.
If you were running all of this within your own infrastructure,
you may already be familiar with a Virtual Desktop
Infrastructure, or VDI, and now running this in the cloud
brings it into a model for DaaS.
Locally, you would have a device that
had a keyboard, a mouse, and a screen.
But you would then connect to a desktop using that local device
to be able to run the entire desktop in the cloud.
This means that the system you're using locally
doesn't need a lot of hardware resources.
You can use a minimal amount of memory and storage space
to be able to connect to this desktop as a service.
One significant requirement, however,
is that you have the bandwidth available to be
able to connect and view this desktop that's in the cloud.
Everything you're seeing on this desktop in a cloud
is viewed in a remote controlled access,
so although the bandwidth requirements aren't enormous,
you would still need enough of a network infrastructure
to provide this connectivity.
Here's a bigger view of this desktop as a service.
This is Amazon's Workspaces.
I simply went into Amazon.
I asked it to create a Windows desktop for me,
and then I connected to that device through my browser,
and this was the screen I got.
Now that I have the system up and running,
I can add software.
I can run applications.
And I can do this from any system in the world
because all I need to do is connect to Amazon WorkSpaces.