UNIT-2
CloudComputing
Virtualization-
Virtualization in cloud computing is a fundamental technology that
enables the efficient utilization of physical hardware resources by
creating multiple virtual instances of servers, storage, networks, and
other computing resources. These virtual instances, often referred to
as virtual machines (VMs),are isolated from each other and from the
underlying physical hardware, allowing multiple workloads to run
concurrently on the same physical infrastructure .The machine on
which the virtual machine is going to create is known as Host
Machine and that virtual machine is referred as a Guest Machine
Here's howvirtualization is usedin cloudcomputing:
Resource Multiplication: Virtualization allows cloud providers to maximize
the utilization of physical servers by running multiple virtual machines
on a single physical server. This helps in efficient resource utilization
and cost reduction.
Isolation: Each virtual machine is isolated from other virtual machines
running on the same physical server. This ensures that the resources
allocated to one virtual machine do not interfere with or impact the
performance of other virtual machines.
Flexibility and Scalability: Virtualization provides the flexibility to easily
create, deploy, and manage virtual machines on-demand. This enables
rapid scalability, allowing businesses to quickly scale up or down
based on demand without the need for additional physical hardware.
Resource Optimization: Virtualization enables the allocation of resources
such as CPU, memory, and storage dynamically based on workload
requirements. This ensures optimal resource utilization and
performance efficiency.
Fault Isolation and Recovery: Virtualization helps in isolating faults within
individual virtual machines, preventing them from affecting other
virtual machines or the underlying physical infrastructure. It also
enables easy backup, migration, and recovery of virtual machines in
case of failures or disasters.
Hardware Independence: Virtualization abstracts the underlying hardware
from the virtual machines, allowing applications to run on a variety of
hardware platforms without modification. This provides flexibility and
portability, making it easier to migrate workloads between different
environments.
Virtualization in Cloud Computing and Types
Host Machine: The machine on which the virtual machine is going to be
built is known as Host Machine.
Guest Machine: The virtual machine is referred to as a Guest Machine.
Work of Virtualization in Cloud Computing:-
Virtualization has a prominent impact on Cloud Computing. In the case
of cloud computing, users store data in the cloud, but with the help of
Virtualization, users have the extra benefit of sharing the infrastructure.
Cloud Vendors take care of the required physical resources, but these
cloud providers charge a huge amount for these services which
impacts every user or organization. Virtualization helps Users or
Organisations in maintaining those services which are required by a
company through external (third-party) people, which helps in reducing
costs to the company. This is the way through which Virtualization
works in Cloud Computing.
Benefits of Virtualization
More flexible and efficient allocation of resources.
Enhance development productivity.
It lowers the cost of IT infrastructure.
Remote access and rapid scalability.
High availability and disaster recovery.
Pay per use of the IT infrastructure on demand.
Enables running multiple operating systems.
Drawback of Virtualization
High Initial Investment: Clouds have a very high initial investment, but it is
also true that it will help in reducing the cost of companies.
Learning New Infrastructure: As the companies shifted from Servers to
Cloud, it requires highly skilled staff who have skills to work with the
cloud easily, and for this, you have to hire new staff or provide
training to current staff.
Risk of Data: Hosting data on third-party resources can lead to putting
the data at risk, it has the chance of getting attacked by any hacker or
cracker very easily.
CharacteristicsofVirtualization
Increased Security: The ability to control the execution of a guest
program in a completely transparent manner opens new
possibilities for delivering a secure, controlled execution
environment. All the operations of the guest programs are generally
performed against the virtual machine, which then translates and
applies them to the host programs.
Managed Execution: In particular, sharing, aggregation, emulation, and
isolation are the most relevant features.
Sharing: Virtualization allows the creation of a separate computing
environment with in the same host.
Aggregation: It is possible to share physical resources among several
guests, but virtualization also allows aggregation, which is the
opposite process.
Types of Virtualization
Application Virtualization
Network Virtualization
Desktop Virtualization
Storage Virtualization
Server Virtualization
Data virtualization
Hardware virtualization
1. Application Virtualization: Application virtualization helps a user to
have remote access to an application from a server. The server stores
all personal information and other characteristics of the application
but can still run on a local workstation through the internet. An example
of this would be a user who needs to run two different versions of the
same software. Technologies that use application virtualization are
hosted applications and packaged applications.
2. Network Virtualization: Network Virtualization is a process of logically
grouping physical networks and making them operate as single or
multiple independent networks called Virtual Networks.
General Architecture Of Network Virtualization
Tools for Network Virtualization:
Physical switch OS–
It is where the OS must have the functionality of network virtualization.
Hypervisor–
It is which uses third-party software or built-in networking and the
functionalities of network virtualization.
The basic functionality of the OS is to give the application or the
executing process with a simple set of instructions. System calls that
are generated by the OS and executed through the libc library are
comparable to the service primitives given at the interface between the
application and the network through the SAP (Service Access
Point).The hypervisor is used to create a virtual switch and configuring
virtual networks on it. The third-party software is installed onto the
hypervisor and it replaces the native networking functionality of the
hypervisor. A hypervisor allows us to have various VMs all working
optimally on a single piece of computer hardware.
Functions of Network Virtualization:
It enables the functional grouping of nodes in a virtual network.
It enables the virtual network to share network resources.
It allows communication between nodes in a virtual network
without routing of frames.
It restricts management traffic.
It enforces routing for communication between virtual networks.
Network Virtualization in Virtual Data Center:
1. Physical Network
Physical components: Network adapters, switches, bridges ,repeaters,
routers and hubs.
Grants connectivity among physical servers running a hypervisor,
between physical servers and storage systems and between physical
servers and clients.
2. VMNetwork
Consists of virtual switches.
Provides connectivity to hypervisor kernel.
Connects to the physical network.
Resides inside the physical server.
Network Virtualization In VDC
Advantages of Network Virtualization:
Improves manageability–
Groupingandregroupingof nodesareeased.
Configuration of VM is allowed from a centralized management
workstationusingmanagementsoftware.
Reduces CAPEX–
The requirement to set up separate physical networks for different
nodegroupsisreduced.
Improvesutilization –
Multiple VMs are enabled to share the same physical network which
enhances theutilizationof networkresource.
Enhances performance–
Network broadcastisrestrictedandVMperformanceis improved.
Enhances security–
Sensitivedata isisolatedfromoneVMtoanother VM.
Accesstonodesisrestrictedin aVMfromanother VM.
DisadvantagesofNetworkVirtualization:
It needstomanageITintheabstract.
It needstocoexistwithphysical devicesina cloud-integratedhybrid
environment.
Increasedcomplexity.
Upfrontcost.
Possiblelearningcurve.
ExamplesofNetworkVirtualization:
VirtualLAN(VLAN)–
The performance and speed of busy networks can be improved by
VLAN.
VLANcan simplify additions or anychanges tothenetwork.
NetworkOverlays–
A framework is provided by an encapsulation protocol called VXLAN
for overlayingvirtualizedlayer2networks over layer3networks.
The Generic Network Virtualization Encapsulation protocol (GENEVE)
provides a new way to encapsulation designed to provide
control-planeindependencebetweentheendpointsof thetunnel.
NetworkVirtualizationPlatform:VMwareNSX–
VMware NSX Data Center transports the components of networking
and security such as switching, firewalling and routing that are defined
andconsumedin software.
It transports the operational model of a virtual machine (VM) for the
network.
Applicationsof Network Virtualization :
Network virtualization may be used in the development of application
testingtomimicreal-worldhardwareand systemsoftware.
It helps us to integrate several physical networks into a single network
orseparatesinglephysical networksintomultipleanalytical networks.
In the field of application performance engineering, network
virtualization allows the simulation of connections between
applications, services, dependencies, and end-users for software
testing.
It helps us to deploy applications in a quicker time frame, thereby
supportingafastergo-to-market.
Network virtualization helps the software testing teams to derive
actual results with expected instances and congestion issues in a
networkedenvironment
3. Desktop Virtualization: Desktop virtualization allows the users’ OS
to beremotely stored on a server in thedata center. It allows the user to
accesstheirdesktopvirtually, fromanylocation by adifferentmachine.
Users who want specific operating systems other than Windows
Server will needto havea virtual desktop. Themain benefits of desktop
virtualization are user mobility, portability, and easy management of
softwareinstallation,updates, andpatches.
4. StorageVirtualization: Storagevirtualizationisan arrayof servers that
are managed by a virtual storage system. The servers aren’ t aware of
exactly wheretheir data isstoredandinsteadfunctionmorelikeworker
bees in a hive. It makes managing storage from multiple sources be
managed and utilized as a single repository. storage virtualization
software maintains smooth operations, consistent performance, and
a continuous suite of advanced functions despite changes, breaks
down, anddifferencesintheunderlyingequipment.
5. Server Virtualization: Server Virtualization is most important part of
Cloud Computing. So, Talking about Cloud Computing, it is composed
of two words, cloud and computing. Cloud means Internet and
computing means to solve problems with help of computers.
Computing is related to CPU & RAM in digital world. Now Consider
situation, You are using Mac OS on your machine but particular
application for your project can be operated only on Windows. You can
eitherbuynewmachinerunningwindowsorcreatevirtual environment
in which windows can be installed and used. Second option is better
because of less cost and easy implementation. This scenario is called
Virtualization. In it, virtual CPU, RAM, NIC and other resources are
provided to OS which it needed to run. This resources is virtually
provided and controlled by an application called Hypervisor. The new
OS running on virtual hardware resources is collectively called Virtual
Machine(VM).
AdvantagesofServerVirtualization:
Each server in server virtualization can be restarted separately
without affectingtheoperation of other virtual servers.
Server virtualization lowers the cost of hardware by dividing a single
serverintoseveral virtual privateservers.
Oneof themajorbenefitsof servervirtualizationisdisasterrecovery.
In server virtualization, data may be stored and retrieved from
any location and moved rapidly and simply from one server to
another.
It enables users tokeeptheir privateinformationin thedata centers.
DisadvantagesofServerVirtualization:
The major drawback of server virtualization is that all websites that
are hosted by the server will cease to exist if the server goes
offline.
Theeffectiveness of virtualizedenvironments cannot bemeasured.
It consumesa significantamount of RAM.
Settingit upandkeepingit uparechallenging.
Virtualization is not supported for many essential databases and
apps.
6. DataVirtualization: Thisisthekindof virtualization inwhich thedata is
collected from various sources and managed at a single place without
knowing more about the technical information like how data is
collected, stored & formatted then arranged that data logically so that
its virtual view can be accessed by its interested people and
stakeholders, and users through the various cloud services remotely.
Many big giant companies are providing their services like Oracle, IBM,
Atscale, Cdata, etc.
UsesofVirtualization
Data-integration
Business-integration
Service-orientedarchitecturedata-services
Searchingorganizational data
7.servicevirtualization-
servicevirtualizationin cloudcomputingrefers to thepracticeof
simulatingthebehaviorof components or services in acloud
environment. It allowsdevelopersandtesters tocreatevirtual
instances of servicesorcomponentsthat maybeunavailable,
expensive,ordifficulttoaccess duringdevelopment, testing,or
integration phases.
Here's howittypicallyworks:
CreatingVirtualInstances: Developersortesters usespecialized
toolstocreatevirtual instancesof servicesorcomponents.
Thesevirtual instances mimicthebehavioroftheactual services
orcomponents.
Isolation: Virtual instancesareisolatedfromtheactual services or
components. This ensuresthat anytestingor development
activitiesperformedonthesevirtual instances do not affectthe
real servicesorcomponents.
TestingandDevelopment: Developersand testerscanusethese
virtual instancestoperformvarioustasks such astesting
applicationfunctionality,conductingperformancetests, or
simulatingdifferent scenarios withoutrelyingontheactual
services.
CostandAccessibility: Servicevirtualization helpsinreducingcosts
associatedwith testinganddevelopment by eliminatingthe
needfor accessingexpensiveorthird-party services. It also
improvesaccessibilitybyprovidingdevelopersandtesters with
on-demandaccess tovirtual instances.
IntegrationTesting: Servicevirtualization isparticularlyuseful for
integration testing,wheremultiplecomponentsorservices need
tointeractwitheach other. Virtual instances allowdevelopersto
simulatedifferent integration scenarios andensurethatthe
systembehaves asexpected undervarious conditions.
Virtualizationmanagement-
Virtualizationmanagementrefers totheset of tools, processes,and
policiesusedtocontrol, monitor,andoptimizevirtualized
infrastructure.Virtualizationitself involvescreatingvirtual versions of
computingresources such asservers,storage, networks,oroperating
systems. Thesevirtual resourcescanthenbeefficientlyutilized,
shared, andmanagedacross multipleapplicationsorusers.
Virtualizationmanagementincludes varioustasks such as:
ResourceAllocation: Ensuringthat virtualizedresourcesareallocated
efficientlytomeet thedemandsof applicationsoruserswhileavoiding
resourcecontention.
PerformanceMonitoring: Monitoringtheperformanceof virtualized
resources toidentifybottlenecks,optimizeresourceutilization,and
ensureadequateperformancefor applications.
CapacityPlanning: Predictingfutureresourcerequirementsbasedon
historical usagepatternsandgrowthprojections toensurethat
sufficientresourcesareavailabletomeetfuturedemands.
SecurityManagement: Implementingsecurity measurestoprotect
virtualizedenvironmentsfromthreatssuchas malware,unauthorized
access,ordatabreaches.
Automation: Automatingroutinetaskssuchasprovisioning, deployment,
andscalingof virtualizedresources toimproveefficiencyand reduce
manual intervention.
BackupandDisasterRecovery: Implementingbackupanddisasterrecovery
solutionstoensuredataintegrityandavailabilityin virtualized
environments.
PolicyEnforcement: Enforcingpolicies relatedtoresourceusage,access
control,andcomplianceto ensurethat virtualized environments
adheretoorganizational requirements andstandards.
Integration: Integratingvirtualization managementtoolswith otherIT
management systems such asITservicemanagement(ITSM)
platformsorcloudmanagementplatformsfor centralizedcontrol and
visibility.
Overall,effectivevirtualization management is essential for
maximizingthebenefitsof virtualization, including costsavings, agility,
scalability,andresourceoptimization,whileminimizingrisksand
ensuringthestabilityandsecurityof ITenvironments.
Virtualizationtechnologies
In cloudcomputingplay acrucial rolein enablingtheefficient
utilization of resources,scalability, andflexibilityofcloud
environments. Herearesomekeyvirtualization technologies
commonlyusedincloudcomputing:
Hypervisor-BasedVirtualization: Alsoknownas hardware
virtualization,thistechnology allowsmultiplevirtual machines
(VMs) torunon asinglephysical machine(host).A hypervisor,or
virtual machinemonitor (VMM), manages theallocationof
physical resourcessuchas CPU,memory, andstoragetoeach
VM. Examples of hypervisors includeVMwarevSphere,
Microsoft Hyper-V,and KVM(Kernel-basedVirtual Machine).
Containerization: Containers providealightweightformof
virtualizationthat allowsapplicationstobepackagedalongwith
their dependencies andrun in isolatedenvironmentscalled
containers.UnlikeVMs, containers sharethehostoperating
systemkernel,which makesthemmoreresource-efficientand
fastertostartcompared to VMs. Popular containerization
technologies includeDocker andKubernetes.
ServerlessComputing: Serverlesscomputingabstracts awaythe
underlyinginfrastructureandallows developers tofocuson
writingcodewithout worryingabout provisioningor managing
servers. Under thehood,serverlessplatformsusevirtualization
technologies todynamically allocateresourcestorun code
snippetsorfunctionsinresponsetoevents. Examplesof
serverlessplatformsincludeAWSLambda, GoogleCloud
Functions, andAzureFunctions.
NetworkVirtualization: Networkvirtualization allowsthecreation of
virtual networks thatoperateontopof physical network
infrastructure.Itenablestheisolation,segmentation,and
customization of networkresourcestomeet thespecific
requirements of differentapplications or tenants. Technologies
suchas Virtual LANs(VLANs),Virtual PrivateClouds (VPCs), and
Software-DefinedNetworking(SDN) arecommonlyusedfor
networkvirtualization in cloudenvironments.
StorageVirtualization: Storagevirtualization abstractsphysical
storageresourcesfromtheunderlyinghardware,allowingthem
tobepooled,managed, andallocated dynamically. Itenables
featuressuchas datareplication,snapshotting, andtiering,
whilealsoimproving scalabilityandperformance. Technologies
likeStorageArea Networks (SANs), Network-AttachedStorage
(NAS),andsoftware-definedstoragesolutionsprovidestorage
virtualizationcapabilitiesinthecloud.
Whatisahypervisor
Ahypervisor, alsoknown asa virtual machinemonitororVMM.The
hypervisorisa pieceof softwarethatallows ustobuildandrunvirtual
machines whichareabbreviatedas VMs.
Ahypervisor allowsasinglehost computer tosupportmultiplevirtual
machines (VMs)bysharingresourcesincludingmemory and
processing.
Whatistheuseofahypervisor?
Hypervisors allowtheuseof moreof asystem's availableresources
andprovidegreater ITversatilitybecausetheguestVMsare
independentof thehost hardwarewhichisoneof themajor benefitsof
theHypervisor.
In otherwords, thisimplies thattheycanbequicklyswitchedbetween
servers. Sinceahypervisor withthehelpofitsspecial feature,itallows
several virtual machines tooperateon asinglephysical server. So,it
helpsustoreduce:
TheSpaceefficiency
TheEnergy uses
TheMaintenancerequirementsof theserver.
Kindsof hypervisors
Therearetwo typesof hypervisors: "Type1"(alsoknown as"bare
metal") and"Type2"(alsoknown as"hosted").Atype1hypervisor
functionsas alight operating systemthatoperates directlyonthe
host's hardware,whilea type2hypervisor functionsasa softwarelayer
ontopofanoperatingsystem, similartoothercomputerprograms.
Sincetheyareisolatedfromtheattack-proneoperatingsystem,
bare-metal hypervisors areextremelystable.
Furthermore,theyareusuallyfasterandmorepowerful than hosted
hypervisors. For thesepurposes,themajorityof enterprisebusinesses
opt forbare-metal hypervisorsfortheirdatacentercomputing
requirements.
Whilehostedhypervisors runinsidetheOS,theycanbetoppedwith
additional (anddifferent) operatingsystems.
Thehostedhypervisorshavelonger latencythan bare-metal
hypervisorswhich isa very majordisadvantageof theit. Thisisdueto
thefact thatcontactbetween thehardwareandthehypervisormust go
throughtheOS'sextra layer.
TheType1hypervisor
Thenativeor baremetal hypervisor,theType1hypervisor is known by
both names.
It replacesthehostoperatingsystem,andthehypervisor schedules
VMservicesdirectlytothehardware.
Thetype1hypervisorisverymuch commonlyused in theenterprise
datacenterorotherserver-basedenvironments.
It includesKVM, MicrosoftHyper-V, andVMwarevSphere. If weare
runningtheupdatedversionof thehypervisorthenwemusthave
alreadygottheKVMintegratedintotheLinuxkernel in 2007.
TheType2hypervisor
It is alsoknown asa hostedhypervisor,Thetype2hypervisorisa
softwarelayerorframeworkthatruns on atraditional operating
system.
It operatesbyseparatingtheguestandhost operatingsystems. The
hostoperatingsystemschedulesVMservices,whicharethen
executedon thehardware.
Individual userswhowish tooperatemultipleoperatingsystemsona
personal computershoulduseaform2hypervisor.
Benefitsof hypervisors
Usingahypervisor tohost several virtual machines hasmany
advantages:
Speed: Thehypervisorsallowvirtual machinestobebuilt instantly
unlikebare-metal servers. This makes provisioningresources
for complexworkloads much simpler.
Efficiency: Hypervisors thatrun multiplevirtual machines on the
resources of a singlephysical machineoften allowfor more
effectiveuseof a singlephysical server.
Flexibility: Sincethehypervisordistinguishes theOSfromthe
underlyinghardware, theprogramnolongerreliesonparticular
hardwaredevicesordrivers,bare-metal hypervisorsenable
operatingsystems andtheir relatedapplicationstooperateona
varietyof hardwaretypes.
Portability: Multipleoperatingsystemscanrunonthesame
physical serverthanks tohypervisors(host machine). The
hypervisor's virtual machinesareportablebecausetheyare
separatefromthephysical computer.
WhatisKVM?
Kernel-basedVirtual Machine(KVM) isa softwarefeaturethatyou
caninstall onphysical Linuxmachinestocreatevirtual machines.
Avirtual machineisa softwareapplicationthat acts asan
independentcomputerwithin another physical computer. It
sharesresourceslikeCPUcycles,network bandwidth,and
memory withthephysical machine. KVMis aLinuxoperating
systemcomponent thatprovidesnativesupportforvirtual
machines on Linux.Ithas been availablein Linuxdistributions
since2007.
WhyisKVMimportant?
Kernel-basedVirtual Machine(KVM) canturn anyLinuxmachineinto
abare-metal hypervisor. Thisallowsdeveloperstoscale
computinginfrastructurefordifferentoperatingsystemswithout
investingin newhardware. KVMfrees serveradministratorsfrom
manuallyprovisioningvirtualizationinfrastructureandallows
largenumbersof virtual machinestobedeployedeasily in cloud
environments.
Businesses useKVMbecauseof thefollowingadvantages.
Highperformance-KVMisengineeredtomanagehigh-demanding
applicationsseamlessly. All guestoperatingsystems inheritthe
highperformanceof thehostoperatingsystem— Linux. TheKVM
hypervisoralsoallows virtualization tobeperformedas closeas
possibletotheserverhardware, whichfurtherreduces process
latency.
Security-Virtual machines runningonKVMenjoysecurityfeatures
nativetotheLinuxoperatingsystem,including
Security-EnhancedLinux(SELinux).Thisensures thatall virtual
environments strictlyadheretotheirrespectivesecurity
boundariestostrengthendata privacyandgovernance.
Stability-KVMhas beenwidely usedin businessapplications formore
than adecade. It enjoysexcellentsupportfromathriving
open-sourcecommunity.ThesourcecodethatpowersKVMis
matureandprovides astablefoundationforenterprise
applications.
Costefficiency-KVMisfreeandopen source,which means
businessesdonothavetopay additional licensingfeestohost
virtual machines.
Flexibility-KVMprovidesbusinessesmanyoptionsduring
installations,as itworks withvarioushardwaresetups.Server
administratorscan efficientlyallocateadditional CPU,storage,or
memory toavirtual machinewithKVM.KVMalsosupportsthin
provisioning,which onlyprovidestheresourcestothevirtual
machinewhen needed.
Xen
xenis anopen-sourcehypervisorusedforvirtualization. Itisknownfor
itsefficiency,scalability, androbustness. Originallydevelopedatthe
University of Cambridge,Xenhasbecomea popularchoicefor
virtualizationinbothenterpriseandcloudcomputingenvironments.
Herearesomekey features andcharacteristicsof Xen:
Para-virtualization: Xen initially introducedpara-virtualization,a
techniquewheretheguest operatingsystemsaremodifiedtobe
awareofthehypervisor. Thisallows formoreefficient
communication betweentheguestOSandthehypervisor,
resultinginbetterperformancecomparedtofull virtualization
techniques.
Hardware-assistedVirtualization: Xen alsosupports
hardware-assistedvirtualizationtechnologies such asIntel VT-x
andAMD-V.Withhardwaresupport,Xen can rununmodified
guest operating systems,providinggreater flexibility and
compatibility.
ResourceIsolationandManagement: Xen provides strong isolation
between guestdomains,ensuringthatactivitieswithinone
domain donot impactothers. It alsooffersadvancedresource
management features,allowingadministratorstoallocateCPU,
memory, andother resourcestodifferentdomainsbasedon their
requirements.
LiveMigration: Xensupports livemigration,allowingrunningvirtual
machines tobemovedbetween physical hosts withoutdisrupting
serviceavailability. Thisfeatureisessential forworkload
balancing,hardwaremaintenance,anddisasterrecovery.
CommunityandEcosystem: Xenhasavibrant communityof
developersanduserswhocontributetoitsdevelopmentand
maintenance. Itisalsosupportedbyvariousvendorsand
organizations, including Citrix, AmazonWebServices(AWS),and
others.
CloudIntegration: Xenis widelyusedincloudcomputingplatforms
andInfrastructure-as-a-Service(IaaS) offerings. Itprovidesthe
foundationfor virtual machinedeploymentandmanagementin
cloudenvironments, offeringscalability, reliability, and
performance.
VMware
VMwarehypervisorrefers to VMware's suiteof virtualization products,particularly
VMwarevSphere Hypervisor, formerlyknownas VMware ESXi. VMwareis a
leading provider of virtualization and cloud computing solutions,and itshypervisor
is oneof themost widely used in enterprise environments.
Herearesome key featuresand characteristics of VMwarehypervisor(vSphere
Hypervisor):
Type-1 Hypervisor: VMwarevSphere Hypervisoris a type-1 hypervisor,alsoknown
as a bare-metal hypervisor. It runs directlyon the physical hardware of theserver
withouttheneed for aseparateoperating system. This architectureprovides
betterperformance and resourceutilization compared totype-2 hypervisors.
High Performance:VMware hypervisoris optimized forperformance and
scalability,allowing organizations torundemanding workloads and applications
with minimaloverhead. Itprovides efficient resource allocation,memory
management,and I/O handling to maximizesystem performance.
vSpherePlatform:VMwarevSphere Hypervisor is part of thebroaderVMware
vSphereplatform,which includes additional features and components for
virtualization management, such as VMwarevCenterServer,VMwarevSphere
Client,and VMware vSphereWeb Client. These tools provide centralized
management,monitoring,and automation of virtualized environments.
Hardware Compatibility: VMwarehypervisorsupports a wide rangeof hardware
configurations,making it suitable for deploymentin various IT environments,from
small businesses tolargeenterprises. It is compatiblewithservers from leading
hardware vendors, including Dell,HP,Cisco, and others.
Virtual Machine Management: VMware hypervisor allows administrators to create,
deploy, and managevirtualmachines (VMs) with ease. Itoffers features such as
livemigration (vMotion), high availability (HA),distributed resource scheduler
(DRS),and fault tolerance (FT) to ensuretheavailability and performanceof
virtualized workloads.
Security: VMwarehypervisor includes built-in security features toprotect
virtualized environments from threats and vulnerabilities. Itprovides features such
as secure boot,virtualTPM (Trusted Platform Module),vSphereSecurity Modules,
and vSphere Encryptiontosafeguard virtual machines and data.
Ecosystem: VMwarehas a vast ecosystem of partners,vendors,and third-party
developers that offer complementary products and solutions forVMware
hypervisor deployments. This ecosystem includes software vendors,hardware
manufacturers,serviceproviders,and consultants who specializein VMware
technologies.
Overall, VMwarehypervisor (vSphereHypervisor) is a powerfuland feature-rich
virtualization platform thatenables organizationstoconsolidate servers,improve
resourceutilization, enhance scalability,and streamlineIT operations. Its
comprehensivesetof features,performance optimizations,and ecosystem
support makeit a popularchoice for virtualization in enterpriseenvironments.
Containerization
Containerization is a lightweight formof virtualization thatallows applicationsand
theirdependencies to be packaged togetherand run in isolated environments
called containers. Unliketraditionalvirtual machines (VMs),which virtualize the
entireoperating system, containers virtualizetheoperating systemat the
application level. This approachprovides several benefits for software
development, deployment,and management:
Portability:Containers encapsulateapplications and their dependencies,
making themhighly portable across different computing environments,
such as developmentlaptops,data centers,and cloud platforms. This
portability streamlines the process of deploying and scaling applications
acrossdiverse infrastructure environments.
Isolation: Each containerprovides a self-contained and isolated runtime
environmentfor anapplication. Containers sharetheunderlying host
operating systemkernel but remain isolated fromeach other,ensuring that
applications donotinterferewith oneanotherand providing a level of
security and stability.
Efficiency: Containers are lightweightand haveminimal overhead compared to
traditional VMs. They share the host operating systemkerneland only
include the necessary libraries and dependencies required torun the
application,resulting in faster startup times,efficient resource utilization,
and higherdensity of application instances on a singlehost.
Consistency: Containers ensureconsistency between development,testing,
and productionenvironments by packaging applications and
dependencies intoa standardized format. This eliminates the "it works on
my machine"problemand helps ensurethatapplications behave
consistently across differentstages of thesoftwaredevelopmentlifecycle.
Scalability: Container orchestration platformssuch as Kubernetes enable
automated deployment, scaling,and management of containerized
applications. By leveraging containerorchestration, organizations can
easily scaletheir applicationsbased on demand,deployupdates
seamlessly,and maintain high availability and reliability.
MicroservicesArchitecture: Containerizationaligns well with the microservices
architecturalpattern,where applications arecomposed of small,
independently deployableservices. Each servicecan bepackaged and
deployed in its owncontainer,allowing for modular development,
deployment, and scalability of complexdistributed systems.
Popularcontainerizationtechnologiesinclude:
Docker: Docker isoneof the mostwidelyadopted containerization platforms,
providing tools for building,packaging,and running containers.
Kubernetes: Kubernetes is an open-source container orchestration platform for
automating thedeployment,scaling,and management of containerized
applications.
Containerd: Containerd is an industry-standard containerruntimethatprovides
corecontainerization functionality,used by platforms like Dockerand
Kubernetes.
WhatisDocker?
Dockeris a standard Platform as a Service (PAAS) that developers use to develop,
test,and deploy applications by using containers. It is anopen-sourceplatform
thatenables youtodisconnect your application fromthesysteminfrastructureand
runon the OS-level virtualenvironment. Dockerhas becomea standalone,
self-sufficient containermanagementplatform thatdevelopers blindly rely on to
handletheir complex containerization requirements.
It uses a REST API running in thebackground to managerequests and perform
operations,a process called theDockerdaemon (ordockerd).
FYI,the Dockerdaemon is single-handedly responsiblefor managing all the
containers on asingle host,including Docker images,networks,containers,and
storage.
HowDoesDocker Work?
Theheavy lifting for every Docker client is doneby thedaemon. Let me explain.
Dockerruns on client-serverarchitecture, whichmeans theclientinteracts with the
daemon to initiate creating,testing, and deploying containers. TheDocker client
can eitherrun on thesameOS with thedaemon or access itremotely. The
connection happens through CLI or REST APIs over aUNIX socketornetwork
interface.
What is Podman?
Podman is a container management toolthathas recently sprung out in the market.
Aproductof RedHat, Podman isan open-source,Linux-based tooluseful in
developing,managing,and running containers as per the Open Container Initiative
(OCI) standards. Itis oftenlabeled asuser-friendly and is the defaultcontainer
engineforRedHat 8 and CentOS 8.