VMWare 101 - WordPress.com

Download Report

Transcript VMWare 101 - WordPress.com

VMware 101
What is VMware?
Agenda
•
•
•
•
•
•
•
•
What is VMware?
Virtualization Foundation
VMware ESX/ESXi
Virtual Machines
Networking
Storage
Management
Special Features
What is VMware?
• To start with, VMware is a software company. They develop a
number of products, mostly around the virtualization space. Their
key competitors are Microsoft & Citrix at this point. Some of their
most well known products are Workstation, ESX/ESXi, Server, &
View
• VMware Workstation is a tool that can be used by IT professionals
and developers to create multiple “virtual machines” for testing
purposes on their workstation
• VMware ESX/ESXi is their flagship enterprise virtualization product
that allows you to run multiple “virtual machines” on one physical
server.
• VMware Server is another product that allows you to run multiple
“virtual machines” on one server, but there’s some key differences
• VMware View is their desktop virtualization offering that allows
multiple “virtual desktops” to run on one physical server
• For the purposes of this presentation, we’ll focus on ESX/ESXi
Foundation
• Virtualization is a topic that is talked about
frequently, but rarely defined.
– Virtualization is the creation of a virtual version of
something, whether hardware, storage, network,
etc.
– This uncouples resources from the underlying
physical hardware they run on.
• Easier to move servers around when they are not
physically attached to one particular piece of hardware.
– This ‘uncoupling’ allows for easier migration of
systems since there is no tie to a physical piece of
equipment residing in one facility
Foundation
• Virtualization for servers has been around for
some time.
– VMware capitalized on this space in the x86 server
market.
• Virtualization for storage is starting to be more
popular, as well as networking.
– Many of these moves are related to the ‘cloud’
computing market that requires a full de-coupling
of physical infrastructure from the instances &
applications that run on them
ESX/ESXi
• VMware ESX is the flagship server virtualization product from
VMware.
– ESX was first released in 2001, though usage did not pick up until ESX
2.5 was released in 11/2004.
• ESX is an Operating System (OS) itself, and is installed on a ‘barebones’ server, that is, a server not running any other OS.
• ESX is composed of two key components, a Linux kernel that is
commonly called the service console running Red Hat Enterprise
Linux, and the vmkernel.
– While this can get quite confusing, the Linux kernel is started, which
then starts the vmkernel, which then moves the Linux kernel to be the
first virtual machine it runs
– ESXi will make this more confusing
• The vmkernel itself is not a Linux OS, though some of the modules
within the vmkernel are derived from Linux modules.
ESX/ESXi
• The vmkernel is the ‘secret sauce’ that ESX brings
to the virtualization space, as it interfaces to the
hardware and the virtual machines, allowing each
virtual machine to believe it has access to the
physical resources.
– This vmkernel also implements some of the more
advanced features that we’ll discuss later, including
VMotion, SVMotion, DRS, HA, VMFS, and others.
• This approach where the physical server runs the
ESX OS itself, and then virtual machines, or
guests, run on top of ESX, reduce the overhead
compared to other virtualization platforms that
require an underlying OS to be installed, and then
virtual machines are created on top of that.
Comparison of ESX vs. Hyper-V
ESX/ESXi
• ESXi is a new version of the ESX product line, and will be the
standard going forward for VMware ESX.
• In the ESXi model, the Service Console has been removed
completely, leaving just the vmkernel
– There are some new modules that have been added to the vmkernel
to help manage it; a bare bones menu system has been added to
create the initial configuration needed to manage it later
• This has reduced the number of patches and security risks from the
system tremendously.
• The vmkernel itself is under 100mb, allowing systems to run ESXi on
a USB flash drive.
– This helps to drive the virtualization process forward even more, as
the physical servers themselves are just processing engines, and
contain no critical data.
• This also reduces the overhead used by ESX itself, providing more
resources to the virtual machines itself.
• All new ESX releases after 4.1 will be based on this model.
Comparison of ESX vs. ESXi
ESX
ESXi
ESX/ESXi
• When you purchase a new physical system to run
ESX or ESXi, the first step is to install ESX.
– We’ll concentrate on ESXi for now.
• The ESXi install itself takes about 6 minutes and
requires you to answer one question on which
disk to install ESXi.
– Once it’s installed, there are some basic configuration
steps to complete:
• Set a root password
• Configure Management Network – This is the initial network
needed to manage ESXi with a GUI later.
– Once this is complete, we’re on the way to creating
virtual machines, or guests.
Virtual Machines
• Virtual machines are the virtual instances, guests, or VM’s
(depending on what you like to call them) that run on the
server.
• Within ESX, virtual machines are defined with some basic
properties.
– To start with, we define a new virtual machine with a name.
Once we define a name, we set the OS of the virtual machine
(Dos, Windows, Linux, etc.).
– The next step is to figure out how much resources this VM will
receive. You can choose as much memory as you’d like, the
number of vCPU’s (virtual CPU’s), how many hard drives, how
many network adapters, and some other options like floppy
drive or CD-ROM.
• More on those options later.
• Once this virtual machine is defined with these properties,
we can “Power On” our VM and install our guest OS.
Virtual Machines
• For each of the properties of a VM, there’s
some options and discussions that need to
take place.
– Starting with the easy ones, Floppy & CD-Rom
• If the VM doesn’t need access to a Floppy or CD-Rom,
then do not add those to the VM, as they can take a
small amount of resources away. Typically you connect
the CD-Rom to an .iso image that is used to install the
OS or other applications on a temporary basis only
when needed
Virtual Machines
• Moving onto Network adapters, basically each VM should
have at least one network adapter.
– Now the network adapter defines one virtual network card, the
network it’s connected to, and its MAC address.
– We will go into more detail on the network configuration later.
– For systems that require more virtual network cards, you can
keep adding Network adapters like any regular physical server.
• Each VM also needs a hard disk to store its information, like
a physical server.
– When a new VM is created, it needs a place to store the OS that
will be installed, and any data volumes. When a new hard disk is
created, you tell ESX where the data will go, which will be stored
in a disk somewhere. These disks are also commonly called
“vmdk”. This disk also needs to know how large it should be, so
a size has to be set.
Virtual Machines
• Onto the last two items that define a VM, CPU and memory.
– CPU is a fairly simple process where you select 1, 2, 4, or 8 vCPU’s for your
virtual machine.
– You should be as conservative as possible with this configuration, so if your
VM only needs 1 processor, do not give it 2, as the scheduling between
multiple processors can consume more processing power than it provides to
the VM. I recommend no more than 2 vCPU’s per VM unless there is a special
case, like SQL or Oracle Databases.
• Memory is also a fairly simple process where you select how much
memory the VM can use.
• For both memory and CPU, you can over-allocate resources, like an airline
that oversells its seats
– If your physical server has 32GB of memory, you can allocate 128GB to virtual
machines, and in some cases, not see any performance issues.
– ESX does a good job of managing memory, and will share memory if each VM
is looking for the same data set, or will compress memory if need be.
– The same applies to CPU’s
– In both cases, over provisioning needs to be well managed or it will cause
performance issues
Storage
• For any VM, we discussed that we need to store
data relating to that VM. Now we’ll discuss more
about how that data is stored, and where it is
stored.
• All VM information is stored in two key files, one
storing configuration information, the other
storing data.
– The configuration file, also known as .vmx, stores the
configuration of the VM, including the details on the
name, configuration, options, etc.
– The data file, also known as .vmdk, stores the data
that the VM stores.
– Both of these files make up the VM itself, and can be
moved to another ESX host if need be.
Storage
• These files are stored on a shared storage system, using
technologies like Fibre Channel (FC), iSCSI, NFS, etc.
– This is to ensure multiple ESX hosts can access the VM’s
that are running to provide some extra features that we’ll
discuss later.
• These files are stored on special volumes, formatted in
the “VMFS” format. There are different versions of
VMFS, the latest is 3.
– This VMFS format allows for some of the features above,
and will go into more detail later.
– Basically, VMFS allows any one ESX host to lock one
individual file, or group of files that comprise a VM.
• This differs from traditional file systems that only lock an entire
volume, not an individual file.
Networking
• Networking can take up days of planning, but I
will try to get to the key components.
– Traditional physical servers are connected to the
specific network they need access to, whether it’s an
internal secure network, DMZ, etc.
– The server is patched into a particular network port,
which is configured to be on the appropriate network,
and we’re done.
• In the virtual world, one physical server may
support many networks. This is not possible if we
patched in one cable for each network when
there could be hundreds of possible networks.
Networking
• We need to instead create network configurations that
allow our physical ESX host to have access to many
networks, using VLANs, Port Aggregation, and trunking.
– In a typical configuration, each network in a site is defined
by a VLAN.
– Our physical ESX host will need a physical connection that
is set to trunk mode, which allows access to every VLAN.
– Considering that each physical host could support multiple
VM’s, we typically bond multiple network connections into
one logical connection using Aggregation protocols like
pAgp and LACP.
– This configuration allows us to define, per VM, which VLAN
it belongs to. The ESX kernel then tags all traffic that VM
sends with its proper 802.1q VLAN tag.
Networking
• Usually this is a good place to bring in a
traditional network engineer into the mix, as
not all networks are designed to allow one
connection to have multiple VLAN’s, especially
in secure environments.
• The flexibility of ESX networking is that no
matter what the network configuration,
there’s a way to create an ESX configuration to
match.
Management
• With all this talk about ESX, we are now onto the actual
management of the software.
– When we go back to the installation, we defined an IP
address to use for management.
– This allows us to use a GUI, the vSphere client, to manage
this ESX host.
• If we were managing multiple hosts, we could also install server
software called Virtual Center Server that would let us manage
multiple hosts from one console.
– Within the vSphere client, we connect to the management
IP of the ESX host, using the root username and password
we defined earlier.
• This management console lets us configure
networking, storage, VM’s, and other advanced
options.
Management
• When you first logon you’ll notice there are some
configuration options specific to the ESX host, and
some specific to VM’s.
– Its always important to remember whether you’re making
changes to the entire host, or, to VM’s.
• In an environment of multiple ESX hosts, there are
other groupings that are created to help manage some
advanced features and to more easily manage multiple
hosts as one logical grouping.
– Datacenters are created that allow multiple ESX hosts to
be grouped into one logical datacenter. Within that
datacenter we can apply permissions, alerts, and other
options.
– Within Datacenters you can create clusters, which are subgroupings that enable some special features within ESX.
Special Features
• Now many people are asking why ESX, why
should I pay for a product like this, when there
are other free applications out there. I’d like to
discuss some of the special features that ESX
has to help answer that question.
Key Features
• VMotion
– VMotion is a technology that allows a running VM to move
from one physical ESX host to another physical ESX host in
the same datacenter cluster with NO disruption.
– Yes that’s right, no disruption. If you were streaming in HD
the Super Bowl using a VM, and wanted to move it to
another ESX host without disrupting the VM, you would
use the VMotion technology to do that.
• In the ESX design, where the VM is really a few files, and what is in
memory, VMotion copies the data in memory to the other ESX
host, then quickly changes which ESX host has access to the .vmx
and .vmdk files. That’s it.
• In practice, this can reduce outages due to hardware
maintenance to zero.
Key Features
• Storage VMotion, SVMotion, is a new take on
VMotion, this time with storage.
– Traditionally, moving data from one storage array
to another is a large task, taking lots of downtime
to accomplish.
– SVMotion allows running VM’s to be moved from
one storage system to another with no disruption.
• Adding onto the previous Vmotion slide, SVMotion
copies the .vmdk file to another array, and then tells
the ESX host to use the new file.
• This reduces to zero the time required to
upgrade the storage supporting ESX.
Key Features
• Building on VMotion are two other technologies, DRS, and HA.
• HA, or High Availability, is a feature that keeps track of which ESX
hosts are online.
– When an ESX host fails, all the VM’s running on that host will also fail.
– HA realizes the ESX host is down, and then restarts all the VM’s that
were running on the failed ESX host on other ESX hosts in the same
cluster.
– This reduces downtime significantly for hardware related issues that
take down an ESX host in your cluster.
• DRS is a feature that load balances out the ESX hosts themselves.
– Traditionally, if you had some number of ESX hosts in a cluster, each
could be overloaded with VM’s.
– DRS looks at each ESX host in the cluster, and then VMotion will move
VM’s around the cluster in order to balance out performance of each
ESX host. This can be configured in multiple ways, but VMware has
such confidence in their VMotion technology that DRS will move VM’s
between ESX hosts throughout the day with no disruption.
Key Features
• There are some other add-ons and features
that add to the value of ESX that I will not go
into, but once you start looking, you’ll find
features that enhance security, networking,
Disaster Recovery, and more.
• Now while I do not work for VMware, nor do I make any money off
VMware products, I have been using ESX since version 2.5 and hopefully
this helps get a basic technical overview of what ESX is and what it does.
• At one of my employers, ESX enabled us to:
– Reduce power consumption in one datacenter from 80kVA to under 40kVA
within 3 months.
• This also reduced our annual hardware support contract by approximately $100k a year.
– Reduce our network port requirement in the same datacenter down to 32
physical network ports from 160.
– Provide 220 VM’s for new projects without any capital requests
– Migrate a datacenter of about 600 servers (physical and virtual) in three and a
half months to another datacenter while hitting all of our Service Level
Agreements, most of which were above 99.9% availability.
– Provide services to 50,000 users across 800 sites with 1400 servers, of which
55% are virtual, including some critical applications like SAP.
• Any questions please feel free to add comments to the blog and I will get
back to you.