From Hypervisors to Cloud Architecture
Key Points
- The speaker moves from using personal Type 1 or Type 2 hypervisors for projects to migrating applications toward a production‑grade cloud environment.
- They emphasize that “cloud computing” isn’t just using a few services; it entails a full cloud computing model that includes hardware, software, virtual networking, and other resources.
- Rather than a simple “lift‑and‑shift,” the migration should be designed to exploit the full range of cloud provider capabilities and require careful architectural planning.
- Cloud architecture is broken into distinct layers: a front‑end (UI/APIs), networking that routes traffic to the front‑end, and a back‑end comprising runtime environments, storage, infrastructure, and databases.
- Successful cloud delivery depends on how these front‑end and back‑end components interoperate, requiring thoughtful integration and design of the overall cloud delivery model.
Sections
- Untitled Section
- Evaluating Cloud Service Tiers - The speaker discusses integrating front‑end and back‑end systems while reviewing the three cloud delivery models—SaaS, PaaS, and IaaS—and their implications.
- Hybrid Cloud Deployment Strategies - The speaker explains how to allocate dedicated private resources—incurring time, cost, and expertise—to host databases and services, and then integrate them with public cloud environments via hybrid approaches using VPNs, firewalls, and dedicated pipelines for seamless application connectivity.
- Hybrid Cloud Architecture Strategy - The speaker describes blending a monolithic app pattern with a mix of IaaS, PaaS, SaaS, and private/public cloud resources to guide architectural decisions and migration planning.
- Discussing Favorite Cloud Patterns - The speaker highlights the importance of cloud architecture, invites viewers to share their preferred patterns and services, and encourages likes, subscriptions, and comments.
Full Transcript
# From Hypervisors to Cloud Architecture **Source:** [https://www.youtube.com/watch?v=phLPKVx3Cl4](https://www.youtube.com/watch?v=phLPKVx3Cl4) **Duration:** 00:12:59 ## Summary - The speaker moves from using personal Type 1 or Type 2 hypervisors for projects to migrating applications toward a production‑grade cloud environment. - They emphasize that “cloud computing” isn’t just using a few services; it entails a full cloud computing model that includes hardware, software, virtual networking, and other resources. - Rather than a simple “lift‑and‑shift,” the migration should be designed to exploit the full range of cloud provider capabilities and require careful architectural planning. - Cloud architecture is broken into distinct layers: a front‑end (UI/APIs), networking that routes traffic to the front‑end, and a back‑end comprising runtime environments, storage, infrastructure, and databases. - Successful cloud delivery depends on how these front‑end and back‑end components interoperate, requiring thoughtful integration and design of the overall cloud delivery model. ## Sections - [00:00:00](https://www.youtube.com/watch?v=phLPKVx3Cl4&t=0s) **Untitled Section** - - [00:03:04](https://www.youtube.com/watch?v=phLPKVx3Cl4&t=184s) **Evaluating Cloud Service Tiers** - The speaker discusses integrating front‑end and back‑end systems while reviewing the three cloud delivery models—SaaS, PaaS, and IaaS—and their implications. - [00:06:11](https://www.youtube.com/watch?v=phLPKVx3Cl4&t=371s) **Hybrid Cloud Deployment Strategies** - The speaker explains how to allocate dedicated private resources—incurring time, cost, and expertise—to host databases and services, and then integrate them with public cloud environments via hybrid approaches using VPNs, firewalls, and dedicated pipelines for seamless application connectivity. - [00:09:16](https://www.youtube.com/watch?v=phLPKVx3Cl4&t=556s) **Hybrid Cloud Architecture Strategy** - The speaker describes blending a monolithic app pattern with a mix of IaaS, PaaS, SaaS, and private/public cloud resources to guide architectural decisions and migration planning. - [00:12:30](https://www.youtube.com/watch?v=phLPKVx3Cl4&t=750s) **Discussing Favorite Cloud Patterns** - The speaker highlights the importance of cloud architecture, invites viewers to share their preferred patterns and services, and encourages likes, subscriptions, and comments. ## Full Transcript
Whenever I start projects,
I usually start out on my favorite Type 1 or Type 2 hypervisor.
Type 2, of course, being something that runs on your operating system,
which is really easy to get going
and Type 1 being have some hardware in my own lab,
that I can actually run virtual server hardware to emulate things.
But there does come a time when I had to migrate
a lot of that applications
to be something that I want to run in a more production
or kind of testing environment where I can really get used to go.
The preferred target nowadays is, of course, cloud computing.
Now, something that I learned on my journey
that I do want to share with you in this video
that if I ask you what cloud computing is, you would probably say,
"hey, using some services in the cloud", but that is actually not it.
There is something called the cloud computing model
that takes advantage of all the necessary hardware,
software, virtual networking, and other resources
that really what forms the actual cloud computing model here.
And when you want to do this process,
it does take some effort
to figure out the cloud architecture that you want to actually take on,
or how you're going to achieve that
Now I'm talking beyond what we like to call lift and shift,
and that would be taking what's already one of my hypervisors
and really trying to trying to find the simplest target to go.
I want to actually take full opportunity
of the particular all the cloud service providers
resources that are there.
So I want to kind of get started with
you got to understand some things to really get going.
The first are the actual components of the actual cloud.
And that's really how you start to break up your application to really fit those.
Let's get started with those.
First, let's have the front end.
Let's think of the front end as
the actual UI or front end applications.
Or as usual, we have a lot of APIs
that really make up that first interface that actually works,
where users interact with your application.
Let's jump down to the actual networking,
because you have to kind of think that
people are coming in from the general cloud
to your UI or API.
And talking to some kind of back-end resources.
All right?
And there's a bunch of other patterns here that goes into play.
You can say back-end or front-end or actual data stores.
But that brings up another great point:
What do you mean by back-end, Jamil?
That's a separate category that we do have.
So the back here is actually going to be all the services,
I'll abbreviate that,
The runtime environments.
The storage.
All the infrastructure.
I'm going to abbreviate that, infra.
All right, there it goes.
And maybe even some databases.
So we're going to loop those all in to one category there.
So we have front ends that talk to our back ends.
We have the ability for all those pieces to kind of talk together,
which I need to consider,
all right, how are they going to function together?
And then the last part is the actual cloud delivery model
that I want to take advantage of.
And when we get into this particular conversation,
there were three different layers or tiers
that I want to evaluate and look at.
The first we all know, when we think about cloud,
is the actual SaaS.
And that's Software as a Service.
So think about a lot of the services
that are provided by the cloud provider that are there,
and you usually are just build based on the instances
of the services that you want.
You can have multiple services,
but you really don't have to worry about any other hardware software there,
which is great, a relief to do.
But it comes with some considerations there.
Next is the Platform as a Service.
All right, and then we have the IaaS.
I know, a lot of acronyms here, but Infrastructure as a Service.
So, think about the infrastructure
is the actual kind of like your actual Type 1 hypervisor.
It's giving you all of the actual networking to figure out -
all the servers, all the storage,
everything that you can need to do those bare bones stuff
that you actually build upon.
And usually when I'm on my Type 1 hypervisor,
I may use those resources
to build all the toolsets that I want in.
And that's kind of similar, analogous to the platform as a service,
which is the PaaS,
which is going to be all your infrastructure resources
plus software.
All the tooling that needs to kind of make these applications run effectively there.
So, taking my application,
I have these four different components that I have to think about.
Front end, back end, the networking and of course, the actual
tiers that I want to take advantage of there,
how deep I want to go in.
And then the next thing you have to do is, all right, now I have all those components,
how do I want to consume the particular tiers of the cloud?
And for those we have the public, private and hybrid.
So when you think about public,
that's going to be your, it's no hardware or software.
So you don't have to build any of those pieces, you aren't billed for any of that,
its very easy to jump in, get started.
But it's going to often be what we call a multi-tenant environment,
where you have multiple users,
times infinity into the whatever power there,
that are all sharing these resources.
And that's part of the the trade off that you get,
that I can really easily get started,
but I'm going to leverage some shared, actual resources
that'll go, that's going to be there as well.
And usually there are particular infrastructure that powers those particular services.
And that's all taking advantage, for you to use.
Now the next is going to be the private.
So under the private you take a different step up to say,
hey, I definitely want to make some dedicated resources to use,
but I'm going to require a lot of money to do that -
time, effort, expertise on how to set up those resources,
maintain those resources there.
So I'm getting a little more into the actual infrastructure tier,
all right, that I want to kind of marshal that as well.
So if you already have that expertise and sometimes I do,
I love the ability of setting my own database servers up
or setting dedicated service to run certain workloads
that I want that my front end or back ends may communicate with.
And that brings up a great point that you may want to think of a
hybrid model here where it's a mixture of the private and public.
Or I had the opportunity to get other resources from somewhere.
I may want to, let's say, keep a lot of my data in my database that resides
locally in my lab or your data center for your company,
if you are executing this strategy as an architect.
So you may have the data that you want in another location
and you want to connect actually up to the actual cloud for that.
And that's done through ...
you can have dedicated pipelines, firewalls, VPNs that kind of make that connection.
So you can actively kind of get there as well.
And that's often another popular strategy is, I may want to
have my UIs be in the cloud, do my ingress for applications to come in,
but then I get a lot of my data to get it where I can maintain it in another place there.
All right, so I'm kind of going through the consumption and components.
Let's wrap it all up with some use cases.
How do I put that to use?
Because as I analyzed all the many, many plethora of apps
that are on my local computing environment,
I said, how am I going to make a strategy to put these into
the cloud computing model?
What is my cloud architecture going to be?
And I kind of came up with some patterns, and I highly recommend this,
taking an inventory of all the patterns that you use.
My first one I had is I have a lot of monolithic apps, all right.
Apps that are, I'll do a "mono" here,
where we have more tiers of functionality that are together,
or they may already be, kind of in a cloud native world,
but let's deal with those, particular monolithic apps.
Definitely, I want to easily get going.
Their job is just to serve out.
So I want to take advantage of the public, OK?
Using those services there, where no hardware's required.
And I also may want to take advantage of some past tooling
because, again, I just have my code I want to run.
I don't want to worry about particularly managing the servers or anything there.
So that may work very, very well.
And maybe for some of the other services, the back end services,
I can select to do plus some SaaS.
All that networking is all the public tier, not maintained by me.
It's a great strategy to say I'm building this locally here.
I can envision this to be a kind of,
I call it my monolithic app pattern,
but definitely come up with these mixtures of how you want to
equivocate things to be.
And that really helps in the,
as you start getting your application and building it, you kind of know upfront
how it's going to pan out to go, because how you build it really helps transition it to
a particular architecture there.
All right, the next - so I have my monolithic app,
which could be a Type 2, you know, my hypervisor I'm building in here.
But let's say I have a bunch of services, which is usually the case for me,
easy to build a a lot of free Type 1 hypervisors out there.
So a virtual server migration where I may want to kind of go from there
and build these out,
that may be a little more intricate so I may want to say
I may have a mixture of some private cloud resources that I want to maintain.
And because it's private and as we said,
dedicated resources,
I am definitely going to do the infrastructure as a service.
And that may actually also, it may actually also pair with some
platform as a service resources or maybe some public resources.
All right, some SaaS services, I mean, I'm sorry to say there,
that I want to pair, but the key thing is I may want to
control a lot of the architecture that I already have.
I already have my patterns, my Terraform set up
for the type of services that I want to do, the servers that I need
for my app computing environment.
Because a lot of the templates that come with the
actual platform as a service may just be, just to take code and run.
And I may be a little more intricate that I have there, a series of servers in there.
And then the last I'll do is the actual, let's say we're going to do a ...
... let's say we're going to be something that's already built cloud native,
and there's a lot of resources to build those locally,
that you can kind of get those going.
And that may be, a lot of great ways you can do.
I can, of course, be in the private and build my own series of infrastructure,
of virtual machines that make up my Kubernetes cluster.
Or it could be a lot of great public resources
to kind of go in and just use those services,
pay just for the worker node resources,
a little bit of that infrastructure that you're going to do whatever you need.
And combine that with some SaaS,
or my own dedicated infrastructure as a service services as well.
I may want to maintain my other things that it talks to
or kind of leverage some of the free services that are there.
So definitely in today's environment, I encourage you,
as I've made my journey, figure your journey
on the particular patterns that you want to use,
for taking advantage of the complete cloud computing environment.
Cloud architecture is very important to that,
to figure out the components that you want to use.
I want to hear more in the comments below about your favorite patterns,
your favorite services that you've used, and things that you've been successful.
As always, technically yours, Señor España.
If you like this video and want to see more like it, please like and subscribe.
If you have any questions or want to share your thoughts about this topic,
please leave a comment below.