18
Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Embed Size (px)

Citation preview

Page 2: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization2

In This Presentation• Deployment overview

Typical Virtuozzo server hardware configuration Disk partitioning recommendations Installation highlights Antivirus on Virtuozzo VE customization

• Monitoring your Virtuozzo server Monitoring via VZMC Windows Task Manager Windows PerfMon Other monitoring tools

Page 3: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization3

In This Presentation• Plesk Application Template

Installation Update Density

• Tips and Troubleshooting Mounting disks and sharing devices Useful command line Analyze VE resources utilization and inconsistencies Troubleshooting VZMC connection issues Virtuozzo doesn’t start Miscellaneous

Page 4: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization4

Deployment overview• Typical Hardware

2+ Dual core CPUs 12 Gb (8 to 16 Gb) RAM RAID controller SCSI disks

• Disk partitioning RAID1(mirror) for system (C:) RAID1+0 or RAID5 for Virtuozzo (D:) C:\ - at least 20 Gb, D:\ - remaining space

• Windows 64 bit (EMT64) is recommended Install in c:\windows Install only Service Pack (no extra MS hotfixes): SP1 as of 9 May 07 Pagefile on C:\ Consider NIC Teaming

Page 5: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization5

Deployment overview• Virtuozzo installation highlights

Use a static IP on the server Use the server physical console or “mstsc.exe /console” Have the Windows installation CD available Have Internet connectivity to install Virtuozzo updates and Windows updates Run Virtuozzo install from a local disk (not from a network share) Use NAT (default) for the Service VPS

• Virtuozzo post install Install Windows updates after Virtuozzo install (wuauclt /detectnow) Register the server in your VZMC Subscribe to Alerts (requires an SMTP relay) Use a network share for the Virtuozzo Backup storage:

▪ VZMC: Right click on VPS Backups > Tasks > Set Default Backup Location

▪ cmd: vzbackup storage -a \\server\shared_folder -u login -p password

Deploy application templates: vzpkgdeploy -i template_name

Page 6: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization6

Deployment overview• Antivirus

Must be compatible with Virtuozzo Runs on the Host, polices all VEs Real time scan exclude

▪ \vz\private

▪ *.efd

• VE quick start A new VE highlights

▪ IIS is installed by default, WWW and FTP are set to manual start

▪ Server and Remote registry services are stopped, set to “Manual” startup type

▪ Windows updates are disabled

▪ Default gateway is an auto generated IP 192.168.x.y (Host routed VE network)

▪ Disk footprint: ~50Mb, Memory footprint: ~60Mb Jumping into a VE’s cmd: vzctl enter VEID Connect to a VE’s desktop: “mstsc.exe” or “mstsc.exe /console” Listing VEs: vzlist -a; vzlist -a -o all

Page 7: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization7

Deployment overview• VE customization

Configuration samples Virtuozzo management cluster in VZMC VE Network: Host-routed vs Bridged VE Terminal Service: Remote administration vs Terminal Server Application templates: deliver applications and Windows scripts Use Windows scripting to configure Services in a VE

▪ Start “Server” (provides network file sharing) automatically:– vzctl exec VEID sc config lanmanserver start= auto

▪ Disable “Indexing Service”:– vzctl exec VEID sc config cisvc start= disabled

▪ Start “Remote Registry”:– vzctl exec VEID net start RemoteRegistry

Configure firewall:▪ “netsh.exe” on the Host or “vzctl exec VEID netsh” for VEs

Enable “Offline management” for VZPP and Plesk integration

Page 8: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization8

Deployment overview• Templates

Files are shared using references (pointers) Minimize disk usage in VEs Memory sharing Faster backup, restore, migration, etc Allow to achieve higher VE density

• Application Templates Can be created using “Virtuozzo Template Creation Wizard” Application files reside in \vz\templates\TMPL\...

• OS template References are point back to the Windows system directory

Install MS hotfixes on the Host ONLY, they will automatically appear in VEs: the same references will point to updated files

Page 9: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization9

Monitoring your Virtuozzo server• Host and VEs monitoring via VZMC

Real time resources charts Current resources (QoS) utilization in the Monitor Resources consuming VEs

• Windows Task Manager on the Host Add to view: PID, Session ID, Handles Sort by Memory, CPU usage Use “vzquery” to map a process to a VE vzctl exec VEID tasklist /svc Helps to troubleshoot

▪ high memory usage

▪ high CPU usage

▪ kernel memory usage (Handles)

Page 10: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization10

Monitoring your Virtuozzo server• Windows PerfMon

Run “perfmon” on the Host to monitor Host and VEs “Virtuozzo” perfmon object is available on the Host to monitor VEs Metrics to monitor on a server to make sure it’s not over provisioned

▪ CPU usage:– Processor\% Processor Time: average is below 80%

▪ Disk– PhysicalDisk\% Idle Time: more than 10%

– PhysicalDisk\Avg. Disk Queue Length: 0 to 200

▪ Memory and Pagefile usage– Memory\Available MBytes

– Paging File\% Usage

▪ Kernel memory usage (32 bit only)– Memory\Pool Nonpaged Bytes: less than 180Mb is used

– Memory\Pool Paged Bytes: less than 360Mb is used

Page 11: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization11

Monitoring your Virtuozzo server• Other monitoring tools

Sysinternals▪ RegMon

▪ Process Explorer (procexp.exe)

▪ handle.exe | find “VEID“

▪ PsExec suite

Open Systems Resources (www.osr.com)▪ 32 bit only: pooltag.exe - Kernel pool troubleshooting

Page 12: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization12

Plesk application template• Installation

Download templates (.efd) to \vz\templates\__cache▪ http://www.swsoft.com/en/download/plesk/templates/

Deploy Plesk and Power Pack templates, e.g.:▪ vzpkgdeploy -i Plesk_8.1.1_20070326_x64

▪ vzpkgdeploy -i PleskPP_8.1.1_20070326_x64

• Plesk VE customization Create a VE configuration sample for Plesk VEs

▪ at least 512Mb memory

▪ at least 1Gb disk

▪ include Plesk template

▪ optional: include Power Pack template (PleskPP )

Disable “Indexing Service”▪ vzctl exec VEID sc config cisvc start= disabled

Page 13: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization13

Plesk application template• Plesk Updates

Update templates are downloaded and installed by “VZ Template updating service”

Update templates are not cumulative in 3.5.1, each contains a specific fix only

• Plesk density for Virtuozzo 64 bit 12Gb 4xCPU: 70 Plesk VEs 16Gb, 2xCPU: 60 to 70 Plesk VEs 32Gb, 4xCPU: 80 to 100 Plesk VEs Number of VEs is technically unlimited in 64 bit Windows We recommend to create less than 100 VEs

• Plesk density for Virtuozzo 32 bit 12Gb, 2xCPU: 30 to 40 Plesk VEs 40 Plesk VEs is a limit due to 32 bit Windows kernel architecture

Page 14: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization14

Tips and troubleshooting• Mounting disks and sharing devices

To over subscribe disk on the Host create VEs with “compact” disk type:▪ vzctl create VEID --config basic --disktype compact

▪ vzctl set VEID --disktype compact &vzctl restart VEID

Mount a partition (e.g. CDROM) from the Host to a VE▪ VZMC: Right click a VE > Tasks > Manage mounts

▪ Scripting to add D:\ drive to a VE

– vzctl set VEID --devadd d:

– vzctl mountext VEID --srcdir d: --dstdir d:

Mount a directory from the Host to a directory in a VE▪ mkdir d:\shared\VEID

▪ vzctl exec VEID cmd /c mkdir c:\data

▪ vzctl set VEID --devadd d:

▪ vzctl mountext VEID --srcdir c:\data --dstdir d:\shared\VEID

Share a device (e.g. an USB device or a COM port) from the Host with a VE▪ vzdevctl add VEID --deviceid "PCI\VEN_104C&DEV_8025” --alias “dev1”

Page 15: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization15

Tips and troubleshooting• Useful command line

Cycle through all VEs (a single line command)▪ for /F "skip=3 usebackq tokens=*" %i in (`cmd /c "vzlist -ao veid"`) do vzctl exec %i "cmd /c net start

lanmanserver &sc config lanmanserver start= auto"

Export a VE traffic usage▪ vza_ve_stat.exe vzagent0@localhost VEID 2007-03-01T12:00:00+0400

• Analyze VE resources utilization and inconsistencies vzlist -a -o all >vzlist.txt &notepad vzlist.txt

▪ Examine NPROC, CPUUNI, CPULIMIT, VPRVMEM

▪ 20 to 30% difference between CPUUNITS min and max is recommended

▪ CPULIMIT might be a reason for a bad VE performance

Page 16: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization16

Tips and troubleshooting

• Troubleshooting VZMC connection issues Restart VZAgent on the Host:

▪ net stop vzaop &net start vzaop

Restart the Service VE▪ vzctl restart 1

Perform an ssh connection to VZAgent of the Service VE▪ Connections to the Host on port 22 are forwarded to the Service VE (when NAT is

used for the SVE)

▪ On a machine with VZMC installed run this in a “cmd” session:– cd C:\Program Files\Common Files\SWsoft\ssh

– ssh.exe vzagent0@virtuozzo_host_ip

▪ XML output means that VZAgent is functioning properly

Try to register the Host from another computer running VZMC Recreate the SVE using “Virtuozzo Configuration Wizard”

Page 17: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization17

Tips and troubleshooting• Virtuozzo doesn’t start

Quick check if Virtuozzo is running, get the list of VEs:▪ vzlist -a

Try to start Virtuozzo Management Service:▪ net start vzsrv

Browse Windows Event logs to find the service that fails Browse \vz\log\*-vzlog.log Virtuozzo KSAL service (vzksal)

▪ Might be failing because of not supported MS updates - try to uninstall

Other common reasons when support should be involved:▪ Not a clean Virtuozzo reinstall

▪ Failed or interrupted Virtuozzo update

Please always use “Submit Support Issue” tool to send a report from your server to support

Page 18: Virtuozzo Windows Advanced Q&A Alec Istomin Andrey Moruga May 9, 2007

Virtuozzo Windows Advanced Q&A: deployment and optimization18

Miscellaneous• Online resources

SWsoft knowledgebase▪ http://kb.swsoft.com/

Windows Command shell overview Windows Server Virtualization Calculator Troubleshoot 32 bit kernel memory pools usage Compare the Editions of Windows Server 2003