Anytime you make a web application you're going to have to consider the different types of deployment
models that are available for it.
How are you going to get that to the people who need to use this new amazing app that you've developed.
Well you've got a lot of choices here.
So let's start with way back in the day.
Back in the old days if you developed an app you mean old days I'm talking about like you know 2005
if you developed a web app you would have to then buy yourself physical servers and you have to take
these physical servers and you'd install some type of server software and you install a web server on
there and then you would install your web application and you'd set up your own DNA Zee's and you set
up your own firewall you'd be responsible for everything.
And if a lot of people liked it you'd have to start setting up more servers.
SSL accelerators and low balancers.
It wasn't a really pretty way to do it.
It didn't take very long for third party organizations to offer new ways to host these types of applications.
So one that came on fairly early was a called a hosted application in this particular situation what
would happen is that some big building with really incredible Internet connectivity and extra power
and generators in case the power went out and all the security and all this safety would allow you to
put your computer into their facility.
Now after a while that got even better and they would then say listen we've already got a computer here
for you and then you just go ahead and put your application on there and then you can imagine that we
got to the point where virtualization came along and now people are taking a system and they're saying
well here just install it onto one of my virtual machines here and my third party location.
And if you really think about it you're using the cloud.
I mean what do you got.
It's a remote location.
It's running virtualization.
You have no real direct control over the hardware just the actual software and the VM that you're renting.
You have now generated the cloud.
So if I'm an organization I can make my own cloud anytime I want as long as I've got some server systems
and I've got some big storage is like a sand system or something like that that could store lots and
lots of data.
I can make my own cloud.
It's actually pretty easy.
Now there's a lot of different clouds out there.
So depending on what your deployment is you're going to have to pick from one of these four different
clouds.
The first one is a private cloud in a private cloud situation.
Here's my little cloud.
So let's just say I've got a whole bunch of computers here and I've got this all set up now we can generate
our own virtual machines anytime we want but it's private.
So keep out it is just for us so it's just within my organization that we can use this private cloud
the next type is a public cloud a public cloud is pretty much the exact opposite of a private cloud
with a public cloud.
And these are things like Amazon S3 and Microsoft as your.
These places are open for business and anybody with a credit card can connect in.
They can set up their own Vians they can upload their web apps they can do anything they want to do
and it includes all kinds of stuff like security add ons and all kinds of fun stuff.
So a public is very very popular.
We see them all the time.
Next is a hybrid cloud hybrid cloud is a little bit from column A and a little bit from column B.
What we have is one big cloud.
But some of this cloud is segregated as private and some of the cloud maybe we don't need all this capacity
so we offer this up as a public so that we can make some money while we have our cloud now fourth is
a community cloud.
The problem with setting up your own cloud is that it's expensive.
We're talking hundreds of thousands of dollars even for the most base type of robust cloud.
So a lot of smaller organizations businesses government entities instead of making their own.
They'll join up as a community three four five 10 different organizations.
Everybody puts a little money and they build one cloud.
So in this particular case it's like having your own private club.
So it's just members only.
And if you could be a part of that member then you can be a part of that cloud.
All of these different clouds are great in the virtualization gives us some real opportunities.
One of the places we're deploying that really comes into play is the idea of virtualizing our desktops
now this is a little bit different than simply a web type application.
In this case what we're talking about is virtualizing the OS itself.
So what we're talking about that there's two different ways to do that.
And the first is virtual desktop environment a virtual desktop environment is also known as Old School
remote desktop.
In this particular situation we have a local client that is taking control of some kind of remote system.
This remote system is not virtualise.
It's a real computer like my desktop in my office.
If I access this system with some type of remote terminal tool if anybody walks up to my computer the
computer is not going to like that because it's going to go wait a minute somebody is remotely connected
in at this particular moment.
These types of remote desktop tools have been around for ever.
The Windows Remote Desktop Protocol has been popular since the arguably the late 1980s.
One of the nice things about something like this though is that we can do some interesting stuff like
here I've got my little Android right here and what I want to do is I want a remote desktop into my
system in my office so it's pretty easy to do.
I've already logged in and everything so he already knows I'm here and I'm actually on the Windows system
yes I'm running Android on here.
But if you were to take a look at the screen there's nothing Android about the screen at all is there.
It's all there.
All my icons on.
Yes I have a messy desk top with a lot of icons.
I can actually start up applications I assure you I don't have Microsoft Word on this Android.
The important thing to keep in mind in this situation is he's really nothing more than a terminal.
It's nothing more than keystrokes mouse movements which are manifested through my finger and an actual
interface to the screen itself.
So there's not a lot of work involved with this type of virtual desktop environment.
Now let's take this idea and take it one step further.
What if I took some type of local system and instead of connecting to a real machine what if I connected
to a virtualise machine in the cloud.
In that type of situation I would have some interesting controls for example.
I don't really have to have any operating system on here at all.
I'd have to have some type of virtualise hypervisor or something like that so I could load something.
But really all I would need is a terminal tool and that's what virtual desktop integration is all about.
So let's take a look at the screen that I have right here.
Now if you look at this I've just got a little copy of Ubuntu running on top of Windows.
Now what if I did something like this.
It takes a minute but it gets there.
If you look at the screen there's nothing to tell you that you're actually running Ubuntu in a virtual
machine on top of Windows.
Yeah OK there's a little tab here we can make that go away.
And now to the common user all that they're seeing is a desktop.
And this is the power of VDI in a VDI environment you can deploy complete operating systems.
People don't have to have a zillion copies of something they just have a terminal tool that's on whatever
they want.
A tablet a phone a laptop whatever it might be or desktop and they can log in and connect to their always
running always in one place virtual machine.
So when it comes to deployment deployment isn't locked in only for web applications.
We can also do it for operating systems.
Make sure you're comfortable with the idea of VD versus VDI.