Beruflich Dokumente
Kultur Dokumente
DavidLutterkort
20070509
Overview
VirtualAppliances
Benefits Problems
Appliances
VirtualAppliance
Distributionofawholesystem
Typicaldistribution
Examples
AppliancesBenefits
AppliancesProblems
Oneappliance,twoappliances,... DatacenterfullofDSLrouters?
AppliancesProblems
Separation
Configuration
Discovery
BuildersandUsers
Developmentvs.Assembly
Consumersvs.Enterprise
VirtualizationPlatforms
libvirt
Uselibvirtcapabilities
Appliancesvs.Baremetal
Similarproblemsandadvantagesasimagebased management
StatelessLinux
Persistent(/etc/statetab) Temporary(/etc/rwtab)
ImagesandRecipes
Images:metadata+diskimages
Recipes:metadataonly
Hybridapproach
Images:VMdescriptor
CreatelibvirtXMLfromdescriptor Checkappliancematchesplatform
Bootdescriptor(multiple) Storagedescription
Listdiskimages MapintoVM
Images:Disks
Imagesareraw(wouldliketouseqcow) Classifyintosystem/data/scratch
SimilartoclassificationforStateless
Replacesystemdisksonupdate MultipleVM'scanrunsameappliance
Images:Building
Createinitialimagesinanywaythatseemsconvenient
Forrepeatability,userecipe Multiplebootdescriptors,e.g.,paravirtandfullyvirt
Write/generateappliancedescriptor
Packageastarball PackageasRPM
Toolsneededtosimplifybuilding
Images:Deploying
Downloadandinstallinto/var/lib/appliances UsevirtinstalltocreateVM
Integrationwithvirtmanagerplanned
Recipes
Onlymetadataconsistingof
Importantpartsofkickstart
Keepkickstartsimple,moveappliancespecificsetupto puppet
Recipes:Puppet
Manifestdescribesconfigurationindeclarative language
Resourcesdescribebasicconfigelement
Files,users,services,packages,etc. webserver,mailserver,nagiosclient
Classesgroupresourcesintologicalunits
Nodesmappingclassestosystems(hostsand guests)
Client/servermodeandcommandlinemode Distributepuppetconfigasmodule
Recipes:ApplianceModifications
Overridesofcoreapplianceconfig
Additionstoapplianceconfig
Worksarounddiscoveryproblems
Recipes:Deploying
Example:Kronolithsetup
SimplewebcalendaringappliancebasedonKronolith
UsePostgreSQLstoragebackend Twodisks
Mainsystemdisk DatadiskforPostgreSQL
CreateappliancebyfollowingKronolithinstallguide
Example:ImageandRecipe
ProduceApplianceImage
ProduceApplianceRecipe
Usecfttoautomatethis
Onlytextfilesverysmall
Example:Mailsetup
Kronolithsendsemailreminders,needsmailserver SolutionforApplianceImage
SolutionforApplianceRecipe
Example:DiskFull
Howtoindicatethatdatadiskisfillingup
Howtoexpanddatadisk
Storagemanagementinvirtinfrastructure
Links
ETWebsitewithlinkstotoolsmentioned:http://et.redhat.com/ Mailinglist:etmgmttools@redhat.com Commentedimage/recipeexamples: http://people.redhat.com/dlutter/kronolithappliance.html