- Now let's review an introduction to
Amazon Elastic Compute Cloud, or EC2.
With EC2, we have the ability to create virtual machines.
We call them instances,
and we have our choice of Linux or Windows,
very many flavors of either one.
Of course, these are powered by either the
Xen or Nitro hypervisor.
Up until recently, Xen was the hypervisor for everything,
but with some of the later generations of EC2 families,
such as the C5 series, M5, R5 series.
Some of these are now using the Nitro hypervisor,
which is more heavily borrowed from KVM,
and moving away from the Xen hypervisor.
The benefit of the Nitro hypervisor
is that it gives us very close to bare metal performance.
The overhead of the virtualization is very, very low
compared to that with Xen or other hypervisor's.
Bare metal is also available.
So, if you have workloads that could benefit
from having access to bare metal,
without the overhead of a hypervisor,
that is an option.
Generally, when we choose instances within EC2,
we don't really get to say,
well, I want this much CPU and this much memory.
We choose from sort of a price fixed menu,
and we do our best to choose
a machine that gives us a certain
blend of CPU, memory, network IO, and so on,
that will match that particular workload.
Of course, the beautiful thing about EC2 is that,
as we talk about in the very beginning,
the on demand nature of EC2,
and the lack of long-term commitments,
the pay as you go pricing,
allows us to change our minds, right?
That's one of the big benefits of cloud computing,
is that, we are not locked in to our decisions
for a long period of time.
So, if we try one of these instances,
and we find that after monitoring
our application for awhile,
we find that, that particular combination of CPU and memory
doesn't really work that well.
That perhaps we need more CPU,
or we need more memory.
We can throw that machine away,
and create a new one very easily.
That really, right there,
that ability
gives us a level of flexibility and agility
that we've never had before.
That concept, that ability
is really the number one driver for
enterprise adoption of AWS.
Even above cost savings,
because we,
through these kind of things,
we have access to technology,
and a way of doing things,
a way of approaching our infrastructure,
that we've never had before.
So,
with EC2
we also have the ability
to launch virtually any number of instances.
We can launch one, we can launch a thousand.
Of course, within our current account limit.
Remember that Amazon services have
sometimes hard limits, and sometimes soft limits,
and the initial soft limit for EC2 instances
is somewhere around 20 instances.
At least at the time of this video.
So, if you need a thousand instances,
you can get that by submitting a ticket to AWS support,
and asking for an increase in that limit.
There are different billing models
we are going to go into in detail here momentarily.
Depending on the operating system,
most operating systems like Windows and Red Hat and so on,
will charge by the hour.
So, the hourly fee in those cases will include
the license for the operating system.
So, if you were to compare something like Fedora
with Red Hat, you would see that the same instance would
cost more with Red Hat or Windows than it would with Fedora,
simply because the hourly fee includes
a license for the operating system.
Now, at least at the time of this video,
for Amazon, Linux, and Ubuntu,
we actually have per second billing.
All right?
So, again, per second billing
is available for certain operating systems.
Not every operating system qualifies for per second billing.
Either way, if you're using an hourly billing model,
then it's billed hour forward.
So, what that means is,
if you run a machine for five minutes,
you pay for the whole hour.
If you run it for 61 minutes,
you pay for two hours.
With the per second fee,
it's essentially rounded up to the next second,
but there's always a 60 second minimum
that you have to pay for.
We also have the AWS marketplace,
which offers what we might call, canned solutions.
So, if you're looking for a particular type of software,
say a virtual networking device,
like some type of a
virtual Cisco, or a virtual Palo Alto device,
or perhaps some type of big data solution.
There's a lot of different solutions available
that are already packaged as a machine image,
and already available for us to choose.
In those cases, the hourly cost of the machine
also includes a license for that
particular piece of software.
So, the take away from this lesson is that,
with EC2 we gain access to
either virtual machines or bare metal.
We have the ability to launch one machine
or a thousand machines or more.
We have a lot of flexibility
in terms of operating systems to use,
and the different billing models that we'll use.
Of course, throughout this lesson we will take a
closer look at a lot of details regarding EC2,
and how we might deploy applications to those instances.