In order to increase computer utilization and availability, many companies are using server virtualization technology. To better support customers interested in this technology, Wonderware has tested several products for production use on VMware’s ESX Server product.
The following products are supported running on virtualized computers using VMware ESX Server v.3.0, 3.5 and 4.0. For details, refer to the Recommendations section below.
- Wonderware Application Server 3.1 SP2
- Wonderware InTouch® 10.1 SP2
- Wonderware Historian 9.0, 10.0
- Wonderware ActiveFactory 9.2
- Wonderware Historian Client 10.0
- Wonderware Information Server 3.0, 3.1, 4.0
- Wonderware InBatch 9.0
- Wonderware Factelligence 3.4, 3.5
- Wonderware MES Operations and Performance Software 4.0
- Equipment Operations Module 2.0, 2.1
- Wonderware Manufacturing Execution Module 1.0
- Production Events Module 2.0, 2.1
- Wonderware Formula Management Module 1.0, 1.1
- QI Analyst 8.0
- Wonderware DA Servers using a DASEngine with build 780.0401 or later. This includes ABTCP 1.5 and SIDirect 1.5.
Supported VMware Products
- ESX 3.0, 3.5
- EsXi 4.0
- Vsphere 4.0
- Vsphere Exceptions
- FT: Fault Tolerance
- HA: High Availability (VMOTION during Runtime)
- DR: Disaster Recovery
- Hot Add, Add CPU and Memory during runtime.
- Advanced Networking, 3rd party support for Virtual Switches
- Pooling of resources, Scheduler.
- Load Balancing during Runtime.
Supported VMware Technologies
- Snapshots for testing backup and recovery.
Note: VMware Workstation is NOT supported for production environments.
Physical & Virtual Systems Summary
In the context of virtualization, the physical machine is called the host, and the virtual machine is called the guest.
Virtualization technology partitions physical resources (such as memory, disk and processors) across multiple virtual computers. It also uses a virtualized system clock. Both the physical system and the virtual system experience time drift, but for different reasons.
The virtualized system clock is directly affected by resource utilization on the physical host system. The more heavily-utilized the physical system is, the less reliable the virtualized system clock becomes. The result is a virtual system clock that slows and accelerates relative to real-time.
Just as a physical computer can have insufficient resources for any particular Wonderware application (e.g. trying to run 10 InTouch Terminal Services sessions on a 500MHz Pentium with 128MB of memory), virtualized computers can be overloaded. While virtualization consolidates multiple servers and increases hardware utilization, it also increases the volatility of the system clock.
Most applications can easily adapt to such dynamic system clocks, but scan-based applications such as Wonderware Application Server that synchronize with external systems are more sensitive to these differences.
The more time-critical the execution is, the more important it is to minimize the drift in the system clock.
Wonderware Time-Sensitive Applications
The following Wonderware software products are typically most sensitive to time-critical execution:
- Wonderware Application Server: When used for supervisory control.
- Wonderware InTouch HMI Software: When used for supervisory control.
- Wonderware Historian: When the historized data is timestamped by the Historian engine, or when it is timestamped external to the Historian, but has latency greater than 20 seconds.
Wonderware’s testing of adequately-sized systems and applications found the drift between the virtualized system clock and an external real-time clock was typically no more than 100 milliseconds. The drift is continuously corrected by the system to match real time.
The drift was significantly lessened when the physical host’s processor was utilized at 50% or less.
The following guidelines will minimize the amount and impact of the virtual system clock drift:
- Target CPU Utilization: Deploy virtual machines on ESX Server with the goal of keeping server processor utilization at 50% or less.
- Use Memory Reservations: Use the VMware ESX Server console to make CPU and memory reservations for the virtual machine running Wonderware software. Virtual machines with reservations get preferential treatment by the scheduler in the ESX Server host, and will reduce the system clock drift in the guest.
- Processors: Although multi-processor physical host machines running ESX Server are strongly recommended, virtual machines configured with a single processor makes the ESX Server’s scheduling simpler and keep the guest’s system clock closer to real-time.
- Monitor System Clocks: Use both VMware and Wonderware tools for monitoring the system clock for excessive drift that will indicate excessive loading for a given application. The VMware tools are described in the Timekeeping in VMware Virtual Machines white paper.For Wonderware Application Server, monitor the scan overruns in each AppEngine. If these tools indicate excessive drift, redeploy virtual machines and/or reduce the scan rates in AppEngines accordingly.
- High-Speed Processing: To ensure proper timing functions of critical applications do not over-commit resources and keep processor affinity locked. For example, if a physical unit was going to be 2 cores and 2GB of RAM, dedicate this to the virtual machine as well and make it the minimum.Ensure that the host has always 25% resources left (disk, memory, CPU’s) to guaranty proper execution of VM’s and reduce the risk of timing issues..
- Use Single Time Synch: Microsoft® Windows and some Wonderware products include integrated time synchronization mechanisms, as do VMware Tools running in the guest. Wonderware and VMware recommend using the VMware Tools time synch, but it is essential to use exactly one of these mechanisms to avoid competing time adjustments. Since the guest clock is synchronized with the host clock, configure ESX Server to synchronize with a reliable clock.
- Use the VMware Memory Control Driver: Install the optional VMware Tools component Memory Control Driver (sometimes called the “balloon driver”) in the guest machine. This component improves virtual memory performance and reduces associated paging delays that impact the system clock.
- Descheduled Time Accounting: Another optional component of the VMware Tools for the guest, VMDesched, provides experimental support for improved clock reliability.Ensure the associated Windows Service is set to start automatically. For more information, see Timekeeping in VMware Virtual Machines.
Figure 1: Memory Control Driver and Descheduled Time Accounting Installation Setup Options
Software License Considerations
Wonderware software is licensed under the terms of the Wonderware End User License Agreement and the terms of that agreement apply to the virtual machine. For example, each virtual machine running InTouch requires its own license, even if multiple virtual machines are running on the same host computer.
Some license files, used to enable the software, are locked to a specific USB or parallel port key or dongle. Current releases of VMware ESX Server do not expose USB or parallel ports on the host computer to the guest operating system, making it a problem for Wonderware’s software to validate the license file against a key.
“Soft” (non-keyed) license files are recommended for use within VMware ESX Server.
Technical Support has performed limited testing using a product called AnywhereUSB in relation with USB keyed licenses. The testing was limited to validation of an InTouch 10.1 license in combination with VMware ESX Server 4.0 and Windows 2003 SP2, Windows XP SP3 and Windows 2008 SP2 images. When the AnywhereUSB unit was attached on a network with the same Subnet as the ESX Server and there were no Firewalls, the license USB key was recognized and the license validated.
More information on the AnywhereUSB product can be found on www.digi.com including a white paper on using AnywhereUSB with VMware ESX Server. All issues with set up and configuration of the AnywhereUSB product should be taken up with Digi International Inc. (http://www.digi.com/support/).
Update November 14th, 2016: VMWare now exposes host USB Ports to Operating Systems on Virtual Machines in ESX Server. In addition, VMWare has conducted testing for pass-through of USB License Keys including the licensing utilized by Wonderware for System Platform. More information can be found on the VMWare website at the following Links:
Technical Support & Troubleshooting
Wonderware Technical Support will not require clients running on VMware ESX to recreate and troubleshoot every issue in a non-virtualized environment; however, Wonderware does reserve the right to request customers to diagnose certain issues in a native operating system environment, operating without the virtual environment. Wonderware will only make this request when there is reason to believe that the virtual environment is a contributing factor to the issue.
If a user encounters licensing problems involving USB pass through to a Virtual Machine, Wonderware may request testing of the key outside of the virtual environment. If the USB License Key is found to be working outside of the virtual environment, Wonderware may request the user contact VMWare and/or Digi to resolve the issue.
For more information about VMware products and technology, click here.