A middle ware layer offers that type of infrastructure,
and its design we will touch upon in this course, but
not delve too deeply because we are really concerned with applications.
The middle ware matches all these services with the hardware,
software, and data that's on the system.
Now, you notice over the side of here there's two boxes, control and resources.
The Cloud provider is going to actually offer control,
provide resource allocation and access control.
And he does that through software designed to do that.
And that's going to interact with mechanisms to actually allocate
the resources.
So, that's my overall software defined architecture.
Now, that's very abstract, and I apologize for
that, what we're going to talk about is some concrete examples of this, and
we're going to finish up with you actually programming one of these.
So, let's look at a data center.
A software-defined data center.
Example of an architecture.
You have your users doing applications, and
those applications will go in through a portal that
offers all the different services, the APIs.
Those APIs will split up the requests into different types of requests.
It will be, oh, this particular request requires so much network,
requires access to the storage, requires this compute.
Well, the portal divides these things up into tasks associated with the network,
associated with the storage, and associated with the compute, but
the user doesn't know anything about the real hardware.
So, these are all virtualized.
You're going to have, underlying this, controls and
schedulers to actually allocate the resources and
to orderly progress through the tasks that have been assigned.
Those in turn will end up talking to the actual hardware provided by
the data center, the network, the storage, and the computer.
Somewhere in there, those two boxes on the right on the previous diagram,
there's a lot of automation going on, and that is going to be the middle ware.
That is going to be the software that allows Clouds
to actually serve all the customers.
So today, what we've learned about is software defined architectures.
What we need to do is to tackle this question that's the reason about
virtualization.
It's a key abstraction in building software defined architectures, and
it's a key abstraction in actually building the first ever Clouds.
We're going to learn what software defined networks are,
what software defined storage is, what software defined compute is.
And we're going to relate that to the Clouds and
talk about it all in terms of virtualization.
Then, and very importantly, we need to get you some
practical experience of building an example.
So, we're going to just take a simple web service,
map it onto a data center, and allow you to scale it using load
balancing to send web requests to the appropriate services.
So, after that lesson, what you're going to learn, or
what you're going to be able to do, is actually build your own type
of system on a software defined architecture whether it's Amazon,
whether it's Google, or whether it's OpenStack.
After that, we're going to look through, or in this particular lesson,
we're going to look through exactly what does infrastructure as a service mean.
Because clearly you gotta start somewhere allocating machines,
and building services on top of those machines is a good place to focus.
We're going to move up that sort of software stack and
look at some of the middle ware.
And there, we're going to be looking at Mirantis and OpenStack as examples.
We are going to learn how they actually orchestrate,
how they provide views into the systems through dashboards.
We are going to see how they are controlled, and
how they control the Cloud itself.
And by the end of this lesson, you will have an appreciation
of how systems are structured with these abstractions and
with orchestration using all these tools.
So, that now, when we finish this lesson,
we'll be able to launch into some examples of applications.
We're going to be doing MapReduce as the next module.
But first, let's just move on to virtualization and
think about how does virtualization support this idea
we've got of software defined architecture.
[MUSIC]