Technical
Explainer
SUSE
Have
you
ever
wished
you
could
launch
virtual
machines
(VMs)
on
top
of
bare-metal
servers
as
easily
as
you
can
deploy
VMs
in
the
public
cloud?
And
that
you
didn't
have
to
install
a
complex
set
of
underlying
orchestration
and
virtualization
technologies
to
do
so?
Thanks
to
Harvester
from
Rancher,
you
can.
Harvester
makes
it
is
possible
to
build
an
environment
where
VM
deployment
is
as
simple
as
in
the
public
cloud,
without
the
hassle
of
a
complex
setup
and
management
process.
Related:
How
to
Create
a
Linux
Virtual
Machine
in
Hyper-V
Keep
reading
for
a
look
at
how
Harvester
works,
how
it
compares
to
similar
solutions
(like
OpenStack),
and
why
you
may
or
may
not
want
to
take
advantage
of
Harvester
to
help
power
virtualized
infrastructure.
SUSE
What
Is
Rancher
Harvester?
Harvester
is
an
open
source
tool
for
deploying
virtual
machines
and
distributed
storage
on
top
of
bare-metal
servers.
It
was
developed
by
Rancher,
a
Kubernetes
vendor
now
owned
by
SUSE,
and
released
in
2021.
With
Harvester,
users
can
choose
the
virtual
CPUs
and
memory
they
want
to
assign
to
a
VM,
select
an
image
to
provision
it
with,
and
then
deploy
it
in
a
few
clicks.
The
experience
is
pretty
similar
to
the
one
you
get
when
launching
VMs
using
a
public
cloud
infrastructure-as-a-service
(IaaS)
service
like
Amazon
EC2.
Rancher.com
However,
the
crucial
difference
between
Harvester
and
public
cloud
IaaS
is
that
Harvester
runs
on
private
infrastructure.
Think
of
it
as
a
private
cloud
equivalent
of
EC2.
How
Does
Harvester
Work?
Harvester
works
in
a
fairly
straightforward
way:
First,
admins
install
Harvester
on
bare-metal
servers
using
an
ISO
image.
You
can
operate
Harvester
on
just
one
server,
but
in
production
environments,
it's
common
to
create
a
cluster
of
bare-metal
servers
to
host
Harvester
so
that
if
one
server
fails
Harvester
will
keep
running.
Once
installed
on
servers,
Harvester
provides
a
Linux-based
operating
system
to
manage
the
servers.
It
also
provides
a
hypervisor
(based
on
KubeVirt,
an
open
source
tool
for
running
VMs
using
a
cloud-native
approach)
for
operating
VMs
and
a
distributed
block
storage
system
based
on
Longhorn.
Users
can
deploy
and
manage
Harvester
VMs
using
a
web
interface,
an
API,
or
a
command-line
interface
(CLI)
tool.
Benefits
of
Harvester
Harvester
offers
several
benefits
compared
with
other
types
of
IaaS
solutions:
Control:
Because
you
can
deploy
Harvester
on
private
servers,
you
retain
complete
control
over
how
your
infrastructure
and
networks
are
configured.
You
don't
get
this
level
of
flexibility
in
the
public
cloud.
Cost
savings:
Harvester
is
open
source
and
free
of
cost,
so
there
are
no
service
or
licensing
fees
to
pay.
The
only
expense
is
whatever
you
pay
for
the
private
servers
that
host
Harvester.
Simple
deployment:
Harvester's
ISO-based
approach
to
installation
makes
for
a
fast
and
straightforward
installation
process.
That's
a
big
advantage
over
platforms
like
OpenStack,
which
are
notoriously
difficult
to
set
up.
(To
be
fair,
OpenStack
installation
has
arguably
gotten
easier
over
the
years,
but
it's
still
a
lot
more
complicated
than
booting
to
an
ISO
and
running
an
installer,
as
you
can
do
with
Harvester.)
In
short,
Harvester
provides
more
control
and
a
greater
potential
for
cost
savings
than
public
cloud
IaaS
services.
At
the
same
time,
it's
a
simpler
solution
than
private
cloud
platforms
like
OpenStack.
Harvester
vs.
OpenStack
We
mention
OpenStack
because
it's
the
main
open
source
alternative
to
Harvester.
Like
Harvester,
OpenStack
also
lets
you
deploy
VMs
on
top
of
private
bare-metal
servers.
The
end-user
experience
is
similar
with
both
solutions.
Under
the
hood,
however,
OpenStack
and
Harvester
work
in
very
different
ways.
Harvester
relies
on
cloud-native
technologies,
such
as
KubeVirt
and
Kubernetes,
to
manage
VMs
and
the
resources
they
depend
on.
OpenStack
uses
homegrown
services
for
this
purpose.
On
the
whole,
Harvester's
stack
is
leaner
and
integrates
more
seamlessly
with
other
cloud-native
tools
or
software.
On
the
other
hand,
OpenStack
provides
more
configuration
and
customization
options
than
Harvester.
If
you
have
truly
complex
or
bespoke
private
cloud
needs
—
if,
for
example,
you
want
to
do
things
like
deploy
network
functions
on
top
of
a
private
cloud,
which
requires
fine-tuned
network
controls
that
you'll
probably
struggle
to
implement
in
Harvester
—
OpenStack
is
a
better
choice.
But
if
you
just
want
to
give
your
teams
a
simple
way
to
deploy
VMs
on
demand
using
your
organization's
private
cloud
infrastructure,
Harvester
is
the
simplest
way
to
do
so.
Harvester
vs.
Kubernetes
It's
worth
noting,
too,
that
Harvester
is
distinct
from
Kubernetes.
The
purpose
of
Harvester
is
to
deploy
VMs,
whereas
the
purpose
of
Kubernetes
is
to
deploy
containerized
applications.
Harvester
depends
on
Kubernetes,
among
other
tools,
for
orchestration,
but
that
doesn't
mean
that
Harvester
and
Kubernetes
have
overlapping
functionality.
So,
if
you
only
want
to
deploy
containers,
use
Kubernetes.
If
you
want
to
run
VMs
on
a
private
cloud,
consider
Rancher.
Conclusion
Harvester
doesn't
offer
any
fundamentally
new
functionality.
It
was
possible
to
deploy
VMs
on
private
clouds
using
open
source
software
prior
to
the
advent
of
Harvester.
But
Harvester
does
make
this
process
simpler
than
other
options
—
at
the
expense
of
providing
somewhat
less
flexibility.
About
the
author
Christopher
Tozzi
is
a
technology
analyst
with
subject
matter
expertise
in
cloud
computing,
application
development,
open
source
software,
virtualization,
containers
and
more.
He
also
lectures
at
a
major
university
in
the
Albany,
New
York,
area.
His
book,
“For
Fun
and
Profit:
A
History
of
the
Free
and
Open
Source
Software
Revolution,”
was
published
by
MIT
Press.
Comments