vDisk Types - The following vDisk types can stream an operating system:
- Standard image
- Difference disk image
- Private image
Standard Image - Multiple target devices share the same vDisk image. The vDisk is configured in read-only format and any changes made by the target device are stored in a write-cache file for the duration of the desktop session
Benefits:
- Many virtual machines can be deployed from a single vDisk creating a central point of management of the virtual machine
- Virtual machines are reverted to a consistent state after each restart
- Storage requirements are reduced as the write cache is reset after each restart
- Standard image
- Difference disk image
- Private image
Standard Image - Multiple target devices share the same vDisk image. The vDisk is configured in read-only format and any changes made by the target device are stored in a write-cache file for the duration of the desktop session
Benefits:
- Many virtual machines can be deployed from a single vDisk creating a central point of management of the virtual machine
- Virtual machines are reverted to a consistent state after each restart
- Storage requirements are reduced as the write cache is reset after each restart
Considerations:
- Any application or system-level automatic updates will starts after each restart (Automatic updates should be disabled at the operating and application level)
- Applications that are installed and data that is created by the end user during the session are discarded after each restart; end users might not expect this
Differencing Disks - Multiple target devices share the same vDisk image. The vDisk is configured in read-only format and any changes made to the target device are stored in a differencing disk file. Each differencing disk that is associated with a base disk represents a different version. Upon restart, the differential cache file is saved and reused for future sessions
Benefits:
- Allows for greater level of customization by retaining changes made by each end user
- Significant storage savings compared to the use of private images
Considerations:
- If the base vDisk is ever modified, the end user changes are deleted and the end user must recreate their customizations
Private image - Each target device is provided with an assigned vDisk. The vDisk is configured in read/write format allowing any changes to be saved for further use
Benefits:
- End users are able to completely personalize their desktops and all applications
- End user data and configurations are saved on the vDisk
Considerations:
- vDisk support will become increasingly difficult as every image becomes customized for every end user
- Private images can require extensive storage
High Availability for Provisioning Services - Configuring high availability for Provisioning Services provides the ability for target devices to maintain an active connection to a virtual disk. High availability for Provisioning Services assists in maintaining constant uptime. You can configure high availability in several ways, including the following options, which are based on the location of the virtual disks:
- Virtual disks hosted locally on a Provisioning Services host
- Virtual disks hosted on shared storage:
Windows Network share (CIFS) / Network Attached Storage (NAS) / Storage Area Network (SAN)
Virtual Disks Hosted Locally on a Provisioning Services Host - A common storage configuration for hosting virtual disks is to use the local hard disk subsystem of the Provisioning Services host. This method, known as a distributed store, provides an easy way of implementing and maintaining virtual disk high availability without additional cost
Benefits:
- Synchronization of vDisks between the Provisioning Services host
- Dependency of the I/O performance on disk subsystem capabilities
Considerations:
- Configure NIC teaming to increase the reliability
- Add Provisioning Services hosts and configure for more reliance on load-balancing
Virtual disk locks properly redirect target devices in this configuration. For example, if you are using the virtual disk in private image mode, the lock file holds the information of the device accessing it. If it fails from Server 1 to Server 2, Server 2 typically does not have an associated lock file yet because no other virtual disk has accessed it on that server. Server 2 then creates a new lock. If it still fails over to Server 1, the lock file, which stores the target device information, will reconnect it.
If you are using the virtual disk in standard image mode, then the lock files should allow read-only access. Server-side caching is not supported unless the cache is re-directed to a share. If the cache is being stored on the local drive of the server and becomes unavailable after failover, the target device operating system stops unexpectedly and an error message appears on a blue screen when it tries to access needed information in the cache
Virtual Disks Hosted on Shared Storage - While it is more common to store hosted vDisks locally, you can use a shared storage solution to store the virtual disks as a central virtual disk store. These shared storage options include shared network drives, such as NAS, SAN iSCSI, and SAN Fibre Channel. Using a shared storage solution for vDisk storage with Provisioning Services requires that a shared file system be placed in front of the SAN or other shared storage to coordinate multiple server access to the NTFS formatted LUN. Otherwise, once a virtual machine accesses a vDisk, no other virtual machine can access it.
Windows File shares (CIFS) do not share LUNs effectively between virtual machines, configuring multiple virtual machines to read from a shared virtual machine can cause errors. You can purchase software to put in place in front of the shared storage and configure it to map as a LUN with iSCSI or Fibre Channel. If a CIFS or NAS solution is used, the intended behavior might not result.
For more information about high availability options for virtual disk storage see CTX119286 - Provisioning Server High Availability Considerations
Optimization recommendations:
- Use NIC teaming to increase the reliability and the I/O between Provisioning Services hosts, the file server, and target devices
- When possible, use dedicated NICs for loading the vDisks and for delivering the virtual disks to the target devices
Provisioning Services High Availability Points of Failure - Provisioning Services high availability only provides failover for the streaming service. You should configure other components for failover separately. The following are configurations you can apply to create more redundancy in your network:
Network redundancy
- NIC teaming
- Load-balancing switches and routers with failover
- Dual connections to back-end storage with multiple paths
Storage redundancy
- Clustered file systems
- Shared storage, balancing configuration complexity, and scalability
TFTP redundancy
- Using TFTP clustered servers or PXE service instead of DHCP options will solve this issue
- If DHCP is in use and you want TFTP to be fully available, a load balancer, such as NetScaler Global Server Load Balancing, can be used
Bootstrap delivery redundancy
- DHCP clustering
- Multiple PXE servers
- Any application or system-level automatic updates will starts after each restart (Automatic updates should be disabled at the operating and application level)
- Applications that are installed and data that is created by the end user during the session are discarded after each restart; end users might not expect this
Differencing Disks - Multiple target devices share the same vDisk image. The vDisk is configured in read-only format and any changes made to the target device are stored in a differencing disk file. Each differencing disk that is associated with a base disk represents a different version. Upon restart, the differential cache file is saved and reused for future sessions
Benefits:
- Allows for greater level of customization by retaining changes made by each end user
- Significant storage savings compared to the use of private images
Considerations:
- If the base vDisk is ever modified, the end user changes are deleted and the end user must recreate their customizations
Private image - Each target device is provided with an assigned vDisk. The vDisk is configured in read/write format allowing any changes to be saved for further use
Benefits:
- End users are able to completely personalize their desktops and all applications
- End user data and configurations are saved on the vDisk
Considerations:
- vDisk support will become increasingly difficult as every image becomes customized for every end user
- Private images can require extensive storage
High Availability for Provisioning Services - Configuring high availability for Provisioning Services provides the ability for target devices to maintain an active connection to a virtual disk. High availability for Provisioning Services assists in maintaining constant uptime. You can configure high availability in several ways, including the following options, which are based on the location of the virtual disks:
- Virtual disks hosted locally on a Provisioning Services host
- Virtual disks hosted on shared storage:
Windows Network share (CIFS) / Network Attached Storage (NAS) / Storage Area Network (SAN)
Virtual Disks Hosted Locally on a Provisioning Services Host - A common storage configuration for hosting virtual disks is to use the local hard disk subsystem of the Provisioning Services host. This method, known as a distributed store, provides an easy way of implementing and maintaining virtual disk high availability without additional cost
Benefits:
- Synchronization of vDisks between the Provisioning Services host
- Dependency of the I/O performance on disk subsystem capabilities
Considerations:
- Configure NIC teaming to increase the reliability
- Add Provisioning Services hosts and configure for more reliance on load-balancing
Virtual disk locks properly redirect target devices in this configuration. For example, if you are using the virtual disk in private image mode, the lock file holds the information of the device accessing it. If it fails from Server 1 to Server 2, Server 2 typically does not have an associated lock file yet because no other virtual disk has accessed it on that server. Server 2 then creates a new lock. If it still fails over to Server 1, the lock file, which stores the target device information, will reconnect it.
If you are using the virtual disk in standard image mode, then the lock files should allow read-only access. Server-side caching is not supported unless the cache is re-directed to a share. If the cache is being stored on the local drive of the server and becomes unavailable after failover, the target device operating system stops unexpectedly and an error message appears on a blue screen when it tries to access needed information in the cache
Virtual Disks Hosted on Shared Storage - While it is more common to store hosted vDisks locally, you can use a shared storage solution to store the virtual disks as a central virtual disk store. These shared storage options include shared network drives, such as NAS, SAN iSCSI, and SAN Fibre Channel. Using a shared storage solution for vDisk storage with Provisioning Services requires that a shared file system be placed in front of the SAN or other shared storage to coordinate multiple server access to the NTFS formatted LUN. Otherwise, once a virtual machine accesses a vDisk, no other virtual machine can access it.
Windows File shares (CIFS) do not share LUNs effectively between virtual machines, configuring multiple virtual machines to read from a shared virtual machine can cause errors. You can purchase software to put in place in front of the shared storage and configure it to map as a LUN with iSCSI or Fibre Channel. If a CIFS or NAS solution is used, the intended behavior might not result.
For more information about high availability options for virtual disk storage see CTX119286 - Provisioning Server High Availability Considerations
Optimization recommendations:
- Use NIC teaming to increase the reliability and the I/O between Provisioning Services hosts, the file server, and target devices
- When possible, use dedicated NICs for loading the vDisks and for delivering the virtual disks to the target devices
Provisioning Services High Availability Points of Failure - Provisioning Services high availability only provides failover for the streaming service. You should configure other components for failover separately. The following are configurations you can apply to create more redundancy in your network:
Network redundancy
- NIC teaming
- Load-balancing switches and routers with failover
- Dual connections to back-end storage with multiple paths
Storage redundancy
- Clustered file systems
- Shared storage, balancing configuration complexity, and scalability
TFTP redundancy
- Using TFTP clustered servers or PXE service instead of DHCP options will solve this issue
- If DHCP is in use and you want TFTP to be fully available, a load balancer, such as NetScaler Global Server Load Balancing, can be used
Bootstrap delivery redundancy
- DHCP clustering
- Multiple PXE servers