Advanced System Management
Presented by Andrew Kutz Principal l o s t c r e a t i o n s
Abstract After an environment is virtualized, IT professionals are faced with managing a virtualized architecture on an enterprise scale likely for the first time in their career. This session goes beyond the point level GUI-driven management solutions offered by each virtualization platform vendor, instead examining scripting solutions for virtualization management. You’ll also get a review of the available tools for centrally managing the virtual enterprise.
WHAT I ASSUME YOU (THE AUDIENCE) KNOWS Virtualization platform familiarity Basic knowledge of virtualization management concepts and problems
BY THE END OF THE SESSION, YOU’LL KNOW THE FOLLOWING Post deployment tuning How to overcome common management challenges
Post Deployment Tuning Disk/Storage Network Routine Performance Spikes
General Tuning Disable unused ports and devices USB, Floppy, CD-ROM Do not use virtual SMP unless required by apps Disable unnecessary programs and services Run a single application per VM Consolidate virtual memory maps by grouping like OS/applications
General Tuning Install VM Tools or additions Install paravirtualized drivers whenever possible Video Disable screen savers Do not run X Windows
Management Tools Point-level Centralized management CA Unicenter ASM SWsoft ZENworks Virtual Machine Management
CA Unicenter ASM
Controlling VM Sprawl Domain VHD Audit Script Connect to domain Collect list of all computers Connect to each computer and list all VHD, VMDK, and files over 800MB
Domain VHD/VMDK Audit Script 'Create Log File Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.OpenTextFile (strLogFile, _ ForWriting, True) ' Connect to domain and collect computer accounts Const ADS_SCOPE_SUBTREE = 2 Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCommand.ActiveConnection = objConnection set objRootDSE = GetObject("LDAP://RootDSE") objCommand.CommandText = _ "SELECT Name, Location FROM 'LDAP://" & _ objRootDSE.Get("defaultNamingContext") & "'" _ & "WHERE objectClass='computer'" objCommand.Properties("Page Size") = 1000 objCommand.Properties("Timeout") = 30 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE objCommand.Properties("Cache Results") = False Set objRecordSet = objCommand.Execute objRecordSet.MoveFirst
Domain VHD/VMDK Audit Script ' Output domain computer accounts, connect to each ' computer, and enumerate virtual disk files or ' files larger than 800 MB Do Until objRecordSet.EOF strComputer = objRecordSet.Fields("Name").Value objFile.WriteLine "System: " & strComputer Set objWMIsvc = GetObject("winmgmts:" &_ "{impersonationlevel=impersonate}!\\" & _ strComputer & "\root\cimv2") 'Check for connection error. If systems are 'unreachable, ensure that a software firewall 'is not blocking WMI connections. If Err = 462 Then objFile.Writeline("*** System Unreachable ***") Err.Clear Else
Domain VHD/VMDK Audit Script 'Enumerate VHDs and VMDKs set colFiles = objWMIsvc.ExecQuery _ ("Select * from CIM_DataFile where Extension =" & _ " 'vhd' or Extension = 'vmdk' or FileSize " & _ "> ") ' Note: is the byte value of 800 MB 'List VHDs on host For Each objVHD In colFiles objFile.WriteLine(objVHD.Name & " -- " & _ objVHD.FileSize & " bytes") Next End If objfile.writeline(" ") objfile.writeline() objRecordSet.MoveNext Loop ' All done! WScript.Echo("Audit Complete!")
Auditing Virtual MAC Addresses Needed for MAC filtering, new deployments, VLANs Virtual MAC Tool (VMware) Vbscript (Windows) downloads.chriswolf.com
VM Failover Issues Linux file systems may re-mount as read only following a data path failover in a multipath environment Solution: VMware patch (KB 51306) Manual repair: “VMware ESX, Linux virtual machines and read- only file systems” SCSI Error : return code = 0x20008 end_request: I/O error, dev sda, sector Aborting journal on device dm-0 ext3_abort called. EXT3-fs error (device dm-0): ext3_journal_start_sb: Detected aborted journal Remounting filesystem read-only.
Resizing Virtual Hard Disks VMware: vmware-vdiskmanager.exe -x Microsoft: VhdResizer (vmtoolkit.com) Xen: xe disk resize
Adding a “VM” Property to AD Objects Useful for knowing which servers are virtual and which are physical Requires a schema modification Requires scripted AD integration to initially set the property
Management Resources Chriswolf.com VMware, XenSource, MS, Virtual Iron, SWsoft scripting downloads VMware SDK XenSource KB
USE AT THE OFFICE Tons o’ scripts VM appliances Resource guides
RECOMMENDATIONS / SUMMARY Don’t assume anything works as promised until you validate it Centralized monitoring and script support make life easier Share your experiences!
QUESTIONS? Audience Q&A
FOR MORE INFORMATION Virtualization: From the Desktop to the Enterprise