This document supports the version of each product listed and
supports all subsequent versions until the document is replaced
by a new edition. To check for more recent editions of this
document, see http://www.vmware.com/support/pubs.
EN-000734-00
VMware View Integration
You can find the most up-to-date technical documentation on the VMware Web site at:
http://www.vmware.com/support/
The VMware Web site also provides the latest product updates.
If you have comments about this documentation, submit your feedback to:
VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks
and names mentioned herein may be trademarks of their respective companies.
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
2VMware, Inc.
Contents
About This Book5
1Introduction7
VMware View Components 7
Integration Interfaces to VMware View 8
2Integrating with the Event Database9
Event Database Tables and Schemas 9
Connection Broker Events 11
View Agent Events 17
View Administrator Events 17
View Transfer Server Events 25
Event Message Attributes 25
Sample Database Queries and Views 27
3Using View PowerCLI29
Introduction to View PowerCLI 29
Start the PowerShell Console with View PowerCLI Loaded 30
Displaying Help for a View PowerCLI cmdlet 30
Error Handling 30
Error When Piping and Specifying Objects at the Same Time 30
View Composer Maintenance Task Types 38
Examples of Using View PowerCLI Cmdlets 39
Displaying Information About a View Connection Server Instance 39
Updating the Configuration of a View Connection Server Instance 39
Managing the Configuration of vCenter Servers in VMware View 39
Managing Desktop Pools 39
Creating and Updating Automatically Provisioned Desktop Pools 40
Creating and Updating Linked-Clone Desktop Pools 40
Creating and Updating Manually Provisioned Desktop Pools 41
Creating Manual Unmanaged Desktop Pools 41
Creating and Updating Desktops Provisioned by Terminal Servers 41
Obtaining Information About Users and Groups from Active Directory 41
Managing Desktop Entitlements 42
VMware, Inc.3
VMware View Integration
Managing Local Desktops 42
Managing Remote Sessions 42
Managing Virtual Machines 42
Displaying Information About Physical Computers 43
Updating the Ownership of Machines 43
Displaying Information About Events 43
Managing the Global Configuration of VMware View 43
Managing View Licenses 44
Examples of Using View PowerCLI for Enhanced Functionality 44
Checking if a View Connection Server Instance Is Running 44
Resize Automatic and Linked-Clone Desktop Pools 45
Determining Paths to vSphere Inventory Objects 46
Determining Paths to vSphere Datastore Objects 47
Adding and Removing Datastores 47
4Customizing LDAP Data49
LDAP Configuration Data 49
Export LDAP Configuration Data 50
Modify LDAP Configuration Data 50
Import LDAP Configuration Data 53
Import LDAP Configuration Data Using the LDIFDE Command 54
5Integrating with SCOM55
View Management Packs 55
Name a View Connection Server Group 56
Import the View MPs 56
View Discovery Script 56
Run the Discovery Script 57
Display Discovered Objects 57
Display Managed Objects 58
Views and Monitors 58
Performance Data Collection Settings 59
Enable a Proxy Agent on a Server 60
Display Performance Data 60
Display Information About an Alert 60
Restart a Service 60
Exclude a Domain from Connectivity Monitoring 60
Close Alerts 61
Class and Relationship Definitions 61
6Examining PCoIP Session Statistics65
Usage Notes for Recorded Statistics 65
General Session Statistics 66
Audio Statistics 66
Imaging Statistics 67
Network Statistics 68
USB Statistics 69
Examples of Using PowerShell to Examine PCoIP Statistics 69
Index71
4VMware, Inc.
About This Book
This guide describes how to integrate VMware View™ software with third-party software such as
Windows PowerShell, business intelligence reporting engines, and Microsoft System Center Operations
Manager (SCOM).
Intended Audience
This book is intended for anyone who wants to customize or integrate software to work with View Manager.
The information in this manual is written for experienced Windows or Linux system administrators who are
familiar with virtual machine technology and datacenter operations.
VMware, Inc.5
VMware View Integration
6VMware, Inc.
1
Introduction
With VMware View™, system administrators can provision desktops and control user access to these
desktops. Client software connects users to virtual desktops running on VMware vSphere™, or to physical
systems running within your network environment.
This chapter includes the following topics:
“VMware View Components” on page 7
“Integration Interfaces to VMware View” on page 8
VMware View Components
You can use VMware View with VMware vCenter Server to create desktops from virtual machines that are
running on VMware ESX
VMware View uses your existing Active Directory infrastructure for user authentication and management.
After you create a desktop, authorized end users can use Web-based or locally installed client software to
securely connect to centralized virtual desktops, back-end physical systems, or terminal servers.
VMware View consists of the following major components:
View Connection Server – a software service that acts as a broker for client connections by authenticating
and then directing incoming user requests to the appropriate virtual desktop, physical desktop, or
terminal server.
®
or VMware ESXi™ hosts and deploy these desktops to end users. In addition,
1
View Agent – a software service that is installed on all guest virtual machines, physical systems, or
terminal servers in order to allow them to be managed by VMware View. The agent provides features such
as connection monitoring, Virtual Printing, USB support, and single sign-on.
View Client – a software application that communicates with View Connection Server to allow users to
connect to their desktops.
View Client with Local Mode – a version of View Client that is extended to support the local desktop
feature, which allows users to download virtual machines and use them on their local systems.
View Administrator – a Web application that allows View administrators to configure View Connection
Server, deploy and manage desktops, control user authentication, initiate and examine system events, and
carry out analytical activities.
vCenter Server – a server that acts as a central administrator for ESX/ESXi hosts that are connected on a
network. A vCenter Server provides the central point for configuring, provisioning, and managing virtual
machines in the datacenter.
View Composer – a software service that is installed on a vCenter server to allow VMware View to rapidly
deploy multiple linked-clone desktops from a single centralized base image.
View Transfer Server – a software service that manages and streamlines data transfers between the
datacenter and View desktops that are checked out for use on end users' local systems. View Transfer
Server is required to support desktops that run View Client with Local Mode.
VMware, Inc.7
VMware View Integration
Integration Interfaces to VMware View
You can use several interfaces to integrate VMware View with external applications.
Event database – you can configure VMware View to record events to a Microsoft SQL Server or Oracle
database. You can then use business intelligence reporting engines to access and analyze this database.
View PowerCLI – you can use the PowerShell interface to perform a wide variety of administration tasks
on View components.
Lightweight Directory Access Protocol (LDAP) – you can export and import LDAP configuration data
from and into VMware View. You can create scripts that update this configuration data without accessing
View Administrator directly.
Microsoft System Center Operations Manager (SCOM) – you can monitor the operations of View
components from the SCOM console.
Windows Management Instrumentation (WMI) – you can examine performance statistics for a PCoIP
session.
8VMware, Inc.
2
Integrating with the Event Database
You can configure VMware View to record events to a Microsoft SQL Server or Oracle database. VMware View
records events such as the following examples:
End-user actions such as logging in and starting a desktop session.
Administrator actions such as adding entitlements and creating desktop pools.
Alerts that report system failures and errors.
Statistical sampling such as recording the maximum number of users over a 24-hour period.
You can use business intelligence reporting engines such as Crystal Reports, IBM Cognos, MicroStrategy 9,
and Oracle Enterprise Performance Management System to access and analyze the event database.
This chapter includes the following topics:
“Event Database Tables and Schemas” on page 9
“Connection Broker Events” on page 11
“View Agent Events” on page 17
“View Administrator Events” on page 17
“View Transfer Server Events” on page 25
2
“Event Message Attributes” on page 25
“Sample Database Queries and Views” on page 27
Event Database Tables and Schemas
Tab le 2-1 shows the tables that implement the event database in VMware View.
Tabl e 2-1. Event Database Tables
Table NameDescription
eventMetadata and search optimization data for recent events.
event_dataData values for recent events.
event_data_historicalData values for all events.
event_historicalMetadata and search optimization data for all events.
The event database prepends the names of these tables with a prefix that you define when you set up the
database. See the VMware View Installation document for more information.
IMPORTANT VMware View does not restrict the growth of the event_historical and event_data_historical
tables. You must implement a space management policy for these tables.
VMware, Inc.9
VMware View Integration
VMware View records details about events to all the database tables. After a certain period of time has elapsed
since writing an event record, VMware View deletes the record from the event and event_data tables. You can
use View Administrator to configure the time period for which the database keeps a record in the event and
event_data tables. See the VMware View Installation document for more information.
N
OTEIt is possible for events to be lost if you restart View Connection Server instances while the event
database is not running. For a solution that avoids this problem see http://kb.vmware.com/kb/1021461.
A unique primary key, EventID, identifies each event that VMware View records in the event and event_
historical tables. VMware View records data values for each event in the event_data and event_data_historical
tables. You can obtain the complete set of information for an event by joining the event and event_data tables
or the event_historical and event_data_historical tables on the EventID column.
The EventType, Severity, and Time columns in the event and event_historical tables identify the type and
severity of an event and the time at which it occurred.
Tab le 2-2 shows the schema for the event and event_historical tables.
Tabl e 2-2. Schema for the event and event_historical Tables
Column Name
AcknowledgedSMALLINTtinyintWhether VMware View acknowledged the
DesktopIdNVARCHAR2(512)nvarchar(512)Desktop ID of the associated pool.
EventIDINTEGERintUnique primary key for the event.
EventTypeNVARCHAR2(512)nvarchar(512)Event name that corresponds to an item in
FolderPathNVARCHAR2(512)nvarchar(512)Full path of the folder that contains the
GroupIdNVARCHAR2(512)nvarchar(512)SID of the associated group in Active
LUNIdNVARCHAR2(512)nvarchar(512)ID of the LUN that stores the associated
MachineIdNVARCHAR2(512)nvarchar(512)ID of the associated physical or virtual
ModuleNVARCHAR2(512)nvarchar(512)View component that raised the event. For
ModuleAndEventTextNVARCHAR2(512)nvarchar(512)Event message with values substituted for
NodeNVARCHAR2(512)nvarchar(512)Name of the virtual device node.
SeverityNVARCHAR2(512)nvarchar(512)Severity level. For example, INFO,
SourceNVARCHAR2(512)nvarchar(512)Identifier for the source of the event.
ThinAppIdNVARCHAR2(512)nvarchar(512)ID of the associated ThinApp™ object.
TimeTIMESTAMPdatetimeTime at which the event occurred,
UserDiskPathIdNVARCHAR2(512)nvarchar(512)ID of the user disk.
UserSIDNVARCHAR2(512)nvarchar(512)SID of the associated user in Active
Oracle
Data Type
SQLServer
Data TypeDescription
event.
0 = false
1 = true
the message catalog. For example,
BROKER_USERLOGGEDIN.
associated object.
Directory.
object.
machine.
example, Admin, Broker, Tunnel,
Framework, Client, or Agent.
attribute parameters.
WARNING, ERROR, AUDIT_SUCCESS,
AUDIT_FAIL.
measured from the epoch (January 1, 1970).
Directory.
10VMware, Inc.
Chapter 2 Integrating with the Event Database
Tab le 2-3 shows the schema for the event_data and event_data_historical tables.
Tabl e 2-3. Schema for the event_data and event_data_historical Tables
Oracle
Column Name
BooleanValueSMALLINTtinyintValue of a Boolean attribute.
EventIDINTEGERintUnique primary key for the event.
IntValueINTEGERintValue of an integer attribute.
NameNVARCHAR2(512)nvarchar(512)Attribute name (for example,
StrValueNVARCHAR2(512)nvarchar(512)Value of a string attribute. For other types
TimeValueTIMESTAMPdatetimeValue of a date and time attribute.
TypeSMALLINTtinyintThe data type of the attribute.
Data Type
SQLServer
Data TypeDescription
0 = false
1 = true
UserDisplayName).
of attributes, this column contains an
interpretation of the data type as a string.
0 = StrValue
1 = IntValue
2 = TimeValue
3 = BooleanValue
Connection Broker Events
Tab le 2-4 shows the event types for the connection broker.
The BROKER_DAILY_MAX_USERS event reports the maximum number of concurrent desktop sessions over
a 24-hour period. Short-lived sessions might not be included in the count because the sampling is performed
every five minutes.
The BROKER_VC_DISABLED and BROKER_VC_ENABLED events report the state of of the vCenter driver
that VMware View uses to track a vCenter Server. The BROKER_VC_STATUS_* events report the state of a
vCenter Server.
Tabl e 2-4. Connection Broker Events
EventTypeSeverityModuleAndEventText
BROKER_AGENT_OFFLINEWARNINGThe agent running on machine
BROKER_AGENT_ONLINEWARNINGThe agent running on machine
BROKER_DAILY_MAX_USERSINFO${Time}: Over the past 24 hours, the
BROKER_DESKTOP_LAUNCH_FAILUREERRORUnable to launch from Pool ${DesktopId}
BROKER_DESKTOP_NOT_ENTITLEDAUDIT_FAILUnable to launch from Pool ${DesktopId}
${MachineName} has not responded to
queries, marking it as offline
${MachineName} is responding again, but
did not send a startup message
maximum number of users with
concurrent desktop sessions was
${UserCount}
for user ${UserDisplayName}: The broker
encountered an error while processing the
request, please contact support for
assistance
for user ${UserDisplayName}: User is not
entitled to this Pool
VMware, Inc.11
VMware View Integration
Tabl e 2-4. Connection Broker Events (Continued)
EventTypeSeverityModuleAndEventText
BROKER_DESKTOP_PROTOCOL_NOT_
SUPPORTED
BROKER_DESKTOP_REQUESTINFOUser ${UserDisplayName} requested Pool
BROKER_EVENT_HANDLING_STARTEDINFOBroker ${BrokerName} has started
BROKER_EVENT_HANDLING_STOPPEDINFO${BrokerName} has stopped handling
BROKER_LOCALMODE_OLD_ANCHOR_
DELETE_FAILURE
BROKER_LOCALMODE_OPERATION_AUDIT_
FAI LUR E
BROKER_LOCALMODE_OPERATION_
FAI LUR E
BROKER_LOCALMODE_OPERATION_
SUCCESS
BROKER_MACHINE_ALLOCATEDINFOUser ${UserDisplayName} requested Pool
BROKER_MACHINE_ASSIGNED_
UNAVAILABLE
BROKER_MACHINE_CANNOT_CONNECTAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_MACHINE_CHECKEDOUTAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_MACHINE_CONFIGURED_VIDEO_
SETTINGS
BROKER_MACHINE_NOT_READYWARNINGUnable to launch from Pool ${DesktopId}
BROKER_MACHINE_OPERATION_DELETEDINFOmachine ${MachineName} has been
BROKER_MACHINE_PROTOCOL_NOT_
SUPPORTED
BROKER_MACHINE_PROTOCOL_
UNAVAILABLE
AUDIT_FAILUnable to launch from Pool ${DesktopId}
for user ${UserDisplayName}: Requested
protocol ${ProtocolId} is not supported
${DesktopId}
handling events
events
WARNINGOld anchor snapshot deletion task failed
for Machine ${MachineName}. Error
message: ${LocalModeMessage}
AUDIT_FAILLocal Mode Operation
${LocalModeOperation} failed for Desktop
${MachineName}, ID: ${DesktopId}. Error
message: ${LocalModeMessage}
ERRORLocal Mode Operation
${LocalModeOperation} failed for Desktop
${MachineName}, ID: ${DesktopId}. Error
message: ${LocalModeMessage}
AUDIT_SUCCESS${LocalModeOperation} has completed for
Desktop ${MachineName}, ID:
${DesktopId}.
${DesktopId}, allocated machine
${MachineName}
AUDIT_FAILUnable to launch from Pool ${DesktopId}
for user ${UserDisplayName}: Assigned
machine ${MachineName} is unavailable
for user ${UserDisplayName}: Failed to
connect to Machine ${MachineName} using
${ProtocolId}
for user ${UserDisplayName}: VM
${MachineName} is currently checked out
on a client device
INFOSuccessfully configured video settings for
Machine VM ${MachineName} in Pool
${DesktopId}
for user ${UserDisplayName}: Machine
${MachineName} is not ready to accept
connections
deleted
AUDIT_FAILUnable to launch from Pool ${DesktopId}
for user ${UserDisplayName}: Machine
${MachineName} does not support
protocol ${ProtocolId}
AUDIT_FAILUnable to launch from Pool ${DesktopId}
for user ${UserDisplayName}: Machine
${MachineName} did not report protocol
${ProtocolId} as ready
12VMware, Inc.
Chapter 2 Integrating with the Event Database
Tabl e 2-4. Connection Broker Events (Continued)
EventTypeSeverityModuleAndEventText
BROKER_MACHINE_REJECTED_SESSIONWARNINGUnable to launch from Pool ${DesktopId}
BROKER_MACHINE_SESSION_TIMEDOUTWARNINGSession for user ${UserDisplayName}
BROKER_MULTIPLE_DESKTOPS_FOR_KIOSK_
WARNINGUser ${UserDisplayName} is entitled to
USER
BROKER_POOL_CANNOT_ASSIGNAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_COMANAGER_REQUIREDAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_EMPTYAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_NO_MACHINE_ASSIGNEDAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_NO_RESPONSESAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_OVERLOADEDAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_POLICY_VIOLATIONAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_PROTOCOL_NOT_
AUDIT_FAILUnable to launch from Pool ${DesktopId}
SUPPORTED
BROKER_POOL_PROTOCOL_UNAVAILABLEAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_POOL_TUNNEL_NOT_SUPPORTEDAUDIT_FAILUnable to launch from Pool ${DesktopId}
BROKER_PROVISIONING_ERROR_CONFIG_
INFOThe previously reported configuration
CLEARED
BROKER_PROVISIONING_ERROR_CONFIG_
ERRORProvisioning error occurred on Pool
SET
BROKER_PROVISIONING_ERROR_DISK_
INFOThe previously reported disk problem is no
CLEARED
BROKER_PROVISIONING_ERROR_DISK_LC_
INFOThe previously reported error due to
RESERVATION_CLEARED
for user ${UserDisplayName}: Machine
${MachineName} rejected the start session
request
timed out
multiple desktop pools
for user ${UserDisplayName}: There are no
machines available to assign the user to
for user ${UserDisplayName}: No
co-management availability for protocol
${ProtocolId}
for user ${UserDisplayName}: The Desktop
Pool is empty
for user ${UserDisplayName}: No machine
assigned to this user
for user ${UserDisplayName}: No
machines in the Desktop Pool are
responsive
for user ${UserDisplayName}: All
responding machines are currently in use
for user ${UserDisplayName}: This
Desktop Pool does not allow online
sessions
for user ${UserDisplayName}: There were
no machines available that support
protocol ${ProtocolId}
for user ${UserDisplayName}: There were
no machines available that reported
protocol ${ProtocolId} as ready
for user ${UserDisplayName}: Tunnelling
is not supported for protocol ${ProtocolId}
problem is no longer present on Pool
${DesktopId}
${DesktopId} because of a configuration
problem
longer present on Pool ${DesktopId}
available free disk space reserved for linked
clones is no longer present on Pool
${DesktopId}
${PackageName} on TransferServer
${TransferServerDisplay}
TransferServer ${TransferServerDisplay}
state has changed from
${TransferServerOldState} to
${TransferServerNewState} on
${TransferServerStateInput}.
Event Message Attributes
Tab le 2-8 shows the attributes that ModuleAndEventText messages use. To determine the data type of an
attribute, you can examine the value of the Type column in the event_data or event_data_historical table.
Tabl e 2-8. Attributes Used with ModuleAndEventText Messages
Attribute NameDescription
AdminFolderNameName of a folder requiring privileged access.
AdminPermissionEntityName of an object requiring privileged access.
AdminPrivilegeNameName of an administrative privilege.
AdminRoleNameName of an administrative role.
AdminRoleNewNameNew name of an administrative role.
AttrChangeTypeType of change that was applied to a generic attribute.
AttrNameName of a generic attribute.
AttrValueValue of a generic attribute.
BrokerIdIdentifier of a View Connection Server instance.
BrokerNameName of a View Connection Server instance.
DesktopDisplayNameDisplay name of a desktop pool.
DesktopIdIdentifier of a desktop pool.
DiskPathPath of a View Transfer Server package.
DomainNameDomain name for a remote View Transfer Server repository.
DomainUserUser name with access to a remote View Transfer Server repository.
EntitlementDisplayDisplay name of a desktop entitlement.
LocalModeMessageMessage for a local desktop operation.
LocalModeOperationName of a local desktop operation.
VMware, Inc.25
VMware View Integration
Tabl e 2-8. Attributes Used with ModuleAndEventText Messages (Continued)
Attribute NameDescription
MachineIdIdentifier of a physical or virtual machine.
MachineNameName of a physical or virtual machine.
MaintenanceModeMaintenance mode state.
ObjectIDIdentifier of an inventory object.
ObjectTypeType of an inventory object.
PackageNameName of a View Transfer Server package.
PathNamePath of a View Transfer Server repository.
PolicyDisplayNameDisplay name of a policy.
PolicyObjectIdentifier of a policy object.
PolicyValueValue of a policy object.
ProtocolIdIdentifier of a display protocol.
SecurityServerIdIdentifier of a security server.
SVIAdminFqdnFQDN of a QuickPrep domain.
SVIAdminIDIdentifier of a QuickPrep domain.
SVIAdminNameName of a QuickPrep domain.
SVIDeploymentGroupIDIdentifier of a View Composer deployment group.
SVIOperationName of a View Composer operation.
SVIParentVMParent virtual machine in View Composer.
SVIPathPath of an object in View Composer.
SVISnapshotSnapshot in View Composer.
SVIVMIDIdentifier of a virtual machine in View Composer.
ThinAppDisplayNameDisplay name of a ThinApp object.
ThinAppIdIdentifier of a ThinApp object.
ThinAppRepositoryNameName of a ThinApp repository.
ThinAppRepositoryPathPath of a ThinApp repository.
TimeDate and time value.
TransferServerDisplayDisplay name of View Transfer Server.
TransferServerNewStateCurrent state of View Transfer Server.
TransferServerOldStatePrevious state of View Transfer Server.
TransferServerStateInputInput event causing a View Transfer Server to change state.
UserCountMaximum number of desktop users over a 24-hour period.
UserDiskNameName of a user data disk.
UserDisplayNameUser name in the form DOMAIN\username.
UserNameName of a user in Active Directory.
VCAddressURL of a vCenter Server.
26VMware, Inc.
Sample Database Queries and Views
NOTE Replace the dbo.VE_ prefix in the examples with the appropriate prefix for your event database server.
Display all error events from the event_historical table.
CREATE VIEW error_events AS
(
SELECT ev.EventID, ev.Time, ev.Module, ev.EventType, ev.ModuleAndEventText
FROM dbo.VE_event_historical AS ev
WHERE ev.Severity = ‘ERROR’
);
Display all warning events from the event_historical table.
CREATE VIEW warning_events AS
(
SELECT ev.EventID, ev.Time, ev.Module, ev.EventType, ev.ModuleAndEventText
FROM dbo.VE_event_historical AS ev
WHERE ev.Severity = ‘WARNING’
);
List all recent events that are associated with the user fred in the domain MYDOM.
CREATE VIEW user_fred_events AS
(
SELECT ev.EventID, ev.Time, ev.Module, ev.EventType, ev.Severity, ev.Acknowledged
FROM dbo.VE_event_historical AS ev,
dbo.VE_event_data_historical AS ed
WHERE ev.EventID = ed.EventID AND ed.Name = 'UserDisplayName' AND ed.StrValue =
‘MYDOM\fred’
);
List all recent events where the agent on a machine shut down.
Chapter 2 Integrating with the Event Database
CREATE VIEW agent_shutdown_events AS
(
SELECT ev.EventID, ev.Time, ed.StrValue
FROM dbo.VE_event_historical AS ev,
WHERE ev.EventID = ed.EventID AND ev.EventType = ‘AGENT_SHUTDOWN’ AND
);
dbo.VE_event_data_historical AS ed
ed.Name = ‘MachineName’
List all recent events where a desktop failed to launch because the desktop pool was empty.
CREATE VIEW desktop_launch_failure_events AS
(
SELECT ev.EventID, ev.Time, ed1.StrValue, ed2.StrValue
FROM dbo.VE_event_historical AS ev,
dbo.VE_event_data_historical AS ed1,
dbo.VE_event_data_historical AS ed2
WHERE ev.EventID = ed1.EventID AND ev.EventID = ed2.EventID AND
ev.EventType = ‘BROKER_POOL_EMPTY’ AND
ed1.Name = ‘UserDisplayName’ AND ed2.Name = ‘DesktopId’
);
List all recent events where an administrator removed a desktop pool.
CREATE VIEW desktop_pool_removed_events AS
(
SELECT ev.EventID, ev.Time, ed1.StrValue, ed2.StrValue
FROM dbo.VE_event_historical AS ev,
WHERE ev.EventID = ed1.EventID AND ev.EventID = ed2.EventID AND
);
dbo.VE_event_data_historical AS ed1,
dbo.VE_event_data_historical AS ed2
ev.EventType = ‘ADMIN_DESKTOP_REMOVED’ AND
ed1.Name = ‘UserDisplayName’ AND ed2.Name = ‘DesktopId’
VMware, Inc.27
VMware View Integration
List all recent events where an administrator added a ThinApp repository.
CREATE VIEW thinapp_repository_added_events AS
(
SELECT ev.EventID, ev.Time, ed1.StrValue, ed2.StrValue, ed3.StrValue
FROM dbo.VE_event_historical AS ev,
WHERE ev.EventID = ed1.EventID AND ev.EventID = ed2.EventID AND ev.EventID = ed3.EventID
);
dbo.VE_event_data_historical AS ed1,
dbo.VE_event_data_historical AS ed2,
dbo.VE_event_data_historical AS ed3
AND
ev.EventType = ‘ADMIN_THINAPP_REPO_ADDED’ AND
ed1.Name = ‘UserDisplayName’ AND ed2.Name = ‘ThinAppRepositoryName’ AND
ed3.Name = ‘ThinAppRepositoryPath’
28VMware, Inc.
3
Using View PowerCLI
View PowerCLI provides an easy-to-use PowerShell interface to VMware View. You can use the View
PowerCLI cmdlets to perform various administration tasks on View components.
This chapter includes the following topics:
“Introduction to View PowerCLI” on page 29
“View PowerCLI Cmdlets” on page 31
“View PowerCLI Cmdlet Parameters” on page 35
“Examples of Using View PowerCLI Cmdlets” on page 39
Introduction to View PowerCLI
Windows PowerShell is a command-line and scripting environment that is designed for Microsoft Windows.
PowerShell uses the .NET object model and provides administrators with management and automation
capabilities. As with any other console environment, you work with PowerShell by running commands, which
are called cmdlets in PowerShell.
The command-line syntax for the View PowerCLI cmdlets is the same as generic PowerShell syntax. See the
Microsoft documentation for more information about using PowerShell.
3
VMware View includes 45 View PowerCLI cmdlets. You can use these cmdlets in conjunction with the vSphere
PowerCLI cmdlets, which provide an administrative interface to the VMware vSphere product. If you have
installed vSphere PowerCLI on a Connection Server instance, these cmdlets are loaded automatically when
you launch View PowerCLI.
You can reference virtual machines and vCenters by ID in View PowerCLI, but you cannot pass such entries
as objects. You must provide a full path to other vSphere objects such as resource pools and folders. You can
use the View PowerCLI cmdlets to examine the configuration of vCenter Servers within VMware View.
The View PowerCLI cmdlets are located in the PowershellServiceCmdlets.dll file in the directory
C:\Program Files\VMware\VMware View\Server\bin. This file constitutes the VMware.View.Broker
snapin. The script configuration file for the View PowerCLI cmdlets is named InitViewCmdlets.ps1, and
this file is located in the Extras folder in the View installation directory. You can edit and extend the script to
define cmdlet aliases, to configure the environment, or to set startup actions.
VMware, Inc.29
VMware View Integration
Start the PowerShell Console with View PowerCLI Loaded
You can run the View PowerCLI cmdlets directly on a View Connections Server host that has the following
software installed.
VMware View 4.5 or later
Microsoft .NET framework
Windows PowerShell 1.0
NOTE If you use the PowerShell remoting feature to access the View PowerCLI cmdlets from a remote system,
be sure to take the same precautions for protecting the View PowerCLI operations that you would take for
other remoting PowerShell operations.
To use the View PowerCLI cmdlets to change the configuration of View, you must be logged into a View
Connection Server instance as a user in a role with sufficient privileges, such as the Administrators role. If your
role is a read-only role, you cannot update configuration data. For more information, see the VMware View Administration document.
To start the PowerShell console with View PowerCLI loaded
1Select Start > All Programs > VMware > View PowerCLI.
2If you see an error message stating that the script configuration file cannot be loaded because the
execution of scripts is disabled, type the following PowerShell command and restart the PowerShell
console.
Set-ExecutionPolicy Unrestricted
Displaying Help for a View PowerCLI cmdlet
To list all View PowerCLI cmdlets, type this command in the PowerShell console.
Get-Command -PSSnapin VMware.View.Broker | more
You can get help for a specific cmdlet by using the Get-Help cmdlet in the PowerShell console. For example,
to get help on the Add-ViewVC cmdlet.
Get-Help Add-ViewVC | more
For more detailed information, add the -full parameter.
Get-Help Add-ViewVC -full | more
Alternatively, you can use the help alias for Get-Help.
help Add-ViewVC -full | more
Error Handling
View PowerCLI cmdlets handle all errors as non-terminating errors that halt the execution of a cmdlet but do
not terminate a pipeline. You can examine the $error automatic variable to determine the nature of an error.
You can set the standard PowerShell $ErrorActionPreference and $errorView automatic variables to
control how PowerShell handles non-terminating errors and how it displays them in the shell.
Error When Piping and Specifying Objects at the Same Time
If you attempt to pipe an object into a cmdlet and specify an object of the same type to that cmdlet, the cmdlet
fails with the following error.
The input object cannot be bound to any parameters for the command either because the command
does not take pipeline input or the input and its properties do not match any of the parameters
that take pipeline input.
For example, the following cmdlet usage would produce this error.
If you specify a path to a vCenter folder that includes certain special characters in the name of an entity, you
must escape these characters. Table 3-1 shows the escape sequences for special characters.
Tabl e 3-1. Escape Sequences for Special Characters
Special CharacterEscape Sequence
%%25
/%2f
\%5c
Do not escape the slashes in the path name itself. For example, you would represent the path to the folder
/datacenter_01/vm/img%-12 as /datacenter_01/vm/img%25-12.
Tab le 3-2 lists the cmdlets and parameters that require you to use escape sequences in entity names.
Tabl e 3-2. Cmdlet Parameters Requiring Escape Sequences
CmdletParameters Requiring Escape Sequences
Add-AutomaticLinkedClonePool
Update-AutomaticLinkedClonePool
Add-AutomaticPool
Update-AutomaticPool
Send-LinkedCloneRecompose-parentVMPath
-datastoreSpecs
-parentVMPath
-resourcePoolPath
-vmfolderPath
-datastorePaths
-resourcePoolPath
-templatePath
-vmfolderPath
View PowerCLI Cmdlets
You can use View PowerCLI cmdlets to administer VMware View on a View Connection Server instance. You
can use the Get-Help cmdlet to obtain more help about a View PowerCLI cmdlet as described in “Displaying
Help for a View PowerCLI cmdlet” on page 30.
Tab le 3-3 lists the available View PowerCLI cmdlets ordered by noun.
Tabl e 3-3. View PowerCLI Cmdlets Ordered by Noun
CmdletDescription
Add-AutomaticLinkedClonePoolAdds an automatically provisioned linked-clone desktop pool.
Update-AutomaticLinkedClonePoolUpdates an automatically provisioned linked-clone desktop pool.
Add-AutomaticPoolAdds an automatically provisioned full virtual machine desktop pool.
Update-AutomaticPoolUpdates an automatically provisioned full virtual machine desktop pool.
Get-ComposerDomainReturns information about View Composer.
Get-ConnectionBrokerReturns information about View Connection Server and security server
Update-ConnectionBrokerUpdates the configuration of a View Connection Server or security server
Get-DesktopPhysicalMachineReturns a list of physical machines that are available for use with
Get-DesktopVMReturns information about virtual machines.
Get-EventReportReturns an event report for a specified view.
instances.
instance.
unmanaged desktop pools.
VMware, Inc.31
VMware View Integration
Tabl e 3-3. View PowerCLI Cmdlets Ordered by Noun (Continued)
CmdletDescription
Get-EventReportListReturns the views that are available for use with the Get-EventReport
Get-GlobalSettingReturns global configuration information about the VMware View
Update-GlobalSettingUpdates global configuration information about the VMware View
Get-LicenseReturns the VMware View licenses on a View Connection Server instance.
Set-LicenseSets a VMware View license on a View Connection Server instance.
Send-LinkedCloneRebalanceRebalances linked-clone desktops among the available logical drives.
Send-LinkedCloneRecomposeRecomposes linked-clone desktops from a snapshot of their parent virtual
Send-LinkedCloneRefreshRefreshes the operating system disks of linked-clone desktops to their
Get-LocalSessionReturns information about local desktops.
Send-LocalSessionRollbackRolls back a local desktop.
Add-ManualPoolAdds a manually provisioned pool of managed desktops.
Update-ManualPoolUpdates a manually provisioned pool of managed desktops.
Add-ManualUnmanagedPoolAdds a manually provisioned pool of unmanaged desktops.
Update-ManualUnmanagedPoolUpdates a manually provisioned pool of unmanaged desktops.
Get-MonitorReturns a list of health monitors for View services.
Get-PoolReturns information about desktop pools.
Remove-PoolRemoves a desktop pool.
Add-PoolEntitlementCreates desktop pool entitlements for users.
Get-PoolEntitlementReturns information about the users who are entitled to use desktop pools.
Remove-PoolEntitlementRemoves desktop pool entitlement from users.
Get-ProfileDiskReturns information about persistent user data disks.
Get-RemoteSessionReturns information about active remote sessions.
Send-SessionDisconnectDisconnects an active remote session.
Send-SessionLogoffLogs out an active remote session.
Get-TerminalServerReturns information about registered Terminal Servers.
Add-TerminalServerPoolAdds a desktop pool from Terminal Server sources.
Update-TerminalServerPoolUpdates a desktop pool that has Terminal Server sources.
Get-UserReturns information about users.
Remove-UserOwnershipRemoves the ownership of a virtual machine.
Update-UserOwnershipAssigns a user (specified as a SID) to a virtual machine. This cmdlet does
Add-ViewVCAdds a vCenter Server to VMware View.
Get-ViewVCReturns information about vCenter Servers.
Remove-ViewVCRemoves a vCenter Server from VMware View.
Update-ViewVCUpdates the configuration of a vCenter Server in VMware View.
Send-VMResetResets a virtual machine.
cmdlet.
environment.
environment.
machine.
original state and size.
not support the assignment of users to physical machines.
32VMware, Inc.
Chapter 3 Using View PowerCLI
View Administrator, View PowerCLI Cmdlet, and vdmadmin Operations
Tab le 3-4 compares the operations that are supported by View Administrator, View PowerCLI cmdlets, and
the vdmadmin command on various View objects. For information about View Administrator and the
vdmadmin command, see the VMware View Administration document.
Tabl e 3-4. View Administrator, View PowerCLI Cmdlet, and vdmadmin Operations
View Administrator
Object
Desktop poolAdd
Domain filterGet information
EventsGet listGet list
FolderAdd
Kiosk modeAdd client account
Linked-clone desktopRebalance
Local desktop
PermissionAdd
Operations
Assign ThinApp
Disable
Enable
Entitle user
Get information
Get unentitled policies
Get unentitled users
Remove
Remove entitlement
Restrict entitlement
Set policy
Update
Get information
Move
Remove
Recompose
Recreate
Refresh
Restore
Set storage overcommit
Get information
Roll back
Get information
Remove
View PowerCLI Cmdlet
Operations
Add
Disable
Enable
Entitle user
Get information
Remove
Remove entitlement
Set policy
Update
Get report
Rebalance
Recompose
Refresh
Set storage overcommit
Get information
Roll back
vdmadmin Command
Operations
Assign dedicated
Get unentitled policies
Get unentitled users
Remove assignment
Remove filter
Set filter
Get list
Get report
Disable authentication
Enable authentication
Get information
Get defaults
Remove client account
Set defaults
Decrypt virtual machine
Lock checked-out
Unlock checked-out
VMware, Inc.33
VMware View Integration
Tabl e 3-4. View Administrator, View PowerCLI Cmdlet, and vdmadmin Operations (Continued)
Object
Persistent user data diskAttach
Physical computer (with View Agent)Get informationGet informationGet information
Remote sessionDisconnect
RoleAdd
Terminal ServerGet informationGet information
UserConfigure policy
vCenter ServerAdd
View AgentCreate DCT bundle
View Composer domainGet information
View Connection ServerBack up configuration
View Connection Server groupGet GUID of group
View Global SettingGet information
View service health monitorGet informationGet informationGet information
View Administrator
Operations
Delete
Detach
Get information
Replace
Get information
Log out
Modify
Remove
Create administrator
Get information
Remove administrator
Get information
Remove
Update
Get information
Restore configuration
Update
Update
View PowerCLI Cmdlet
Operations
vdmadmin Command
Operations
Get information
Disconnect
Get information
Log out
Get informationGet information
Update FSP
Add
Get information
Remove
Update
Get copy of log file
Get list of log files
Get logging level
Get status
Get version
Override IP address
Set logging level
Get information
Remove from group
Update
Set name of group
Get information
Update
34VMware, Inc.
Chapter 3 Using View PowerCLI
Tabl e 3-4. View Administrator, View PowerCLI Cmdlet, and vdmadmin Operations (Continued)
View Administrator
Object
View Transfer ServerAdd
View Transfer Server packageAdd
Virtual machine (with View Agent)Get information
VMware View licenseGet information
Operations
Configure repository
Get information
Get state
Migrate repository
Remove
Replicate local desktop
Set maintenance mode
Remove
Get status
Publish
Set path to repository
Remove ownership
Reset
Update ownership
Set license
View PowerCLI Cmdlet
Operations
Get information
Remove ownership
Reset
Update ownership
Get information
Set license
vdmadmin Command
Operations
Lock virtual machine
Unlock virtual machine
Get split limit
Set split limit
Get information
View PowerCLI Cmdlet Parameters
Some View PowerCLI cmdlet parameters accept arguments that are chosen from a limited set.
Default Display Protocol Settings
Tab le 3-5 shows the settings that you can use with the -defaultProtocol parameter to specify the default
display protocol for a desktop pool.
Tabl e 3-5. Default Display Protocol Settings
Default Display ProtocolDescription
PCOIPSpecifies VMware PCoIP.
RDPSpecifies Microsoft RDP.
Deletion Policy Settings
Tab le 3-6 shows the settings that you can use with the -deletePolicy parameter to specify a deletion policy
for automatically provisioned floating and linked-clone desktop pools.
Tabl e 3-6. Deletion Policy Settings
Deletion PolicyDescription
DefaultSpecifies that the desktop is not deleted when the user logs out.
DeleteOnUseSpecifies that the desktop is deleted when the user logs out.
RefreshOnUseSpecifies that the desktop is refreshed when the user logs out. This setting
applies only to linked-clone desktop pools.
VMware, Inc.35
VMware View Integration
Flash Quality Settings
Tab le 3-7 shows the settings that you can use with the -flashQuality parameter to specify a maximum
allowable quality for Adobe Flash content. This value overrides the setting on a Web page. If the Flash quality
for a Web page is higher than the maximum value allowed, the client reduces the quality to the specified
maximum. Lowering the quality of Flash content causes it to use less bandwidth.
Tabl e 3-7. Flash Quality Settings
Flash QualityDescription
HIGHSpecifies that low, medium, or high quality Flash content is allowed.
LOWSpecifies that only low quality Flash content is allowed.
MEDIUMSpecifies that low or medium quality Flash content is allowed.
NO_CONTROLAllows the Web page settings to determine quality.
Flash Throttling Settings
Tab le 3-8 shows the settings that you can use with the -flashThrottling parameter to specify how often
Adobe Flash should refresh what it shows onscreen. Throttling Flash to increase the refresh interval reduces
the frame rate. This reduction causes Flash content to use less bandwidth, but it might also cause Flash to drop
frames.
Tabl e 3-8. Flash Throttling Settings
Flash ThrottlingDescription
AGGRESSIVESets the interval to 2500 milliseconds. This results in the highest number of
CONSERVATIVESets the interval to 100 milliseconds. This results in the lowest number of
DISABLEDNo throttling is performed. The timer interval is not modified.
MODERATESets the interval to 500 milliseconds. The speed of audio transmission is
dropped frames. The speed of audio transmission is unaffected.
dropped frames. The speed of audio transmission is unaffected.
unaffected.
LDAP Backup Frequency
Tab le 3-9 shows the settings that you can use with the -ldapBackupFrequency parameter to specify the LDAP
backup frequency for a View Connection Server instance.
Tabl e 3-9. LDAP Backup Frequency Settings
LDAP Backup FrequencyDescription
Every12HourBacks up the LDAP database once every 12 hours.
Every2DayBacks up the LDAP database once every two days.
Every2WeekBacks up the LDAP database once every two weeks.
Every6HourBacks up the LDAP database once every six hours.
EveryDayBacks up the LDAP database once per day.
EveryHourBacks up the LDAP database once per hour.
EveryWeekBacks up the LDAP database once per week.
NeverTurns off backup for the LDAP database.
36VMware, Inc.
Chapter 3 Using View PowerCLI
Pool Type Settings
Tab le 3-10 shows the settings that you can use with the -poolType parameter to specify the type of a desktop
pool.
Table 3-10. Pool Type Settings
Pool TypeDescription
IndividualUnmanagedSpecifies a pool containing an individual unmanaged desktop.
IndividualVCSpecifies a pool containing an individual desktop that is managed and configured
by a vCenter Server.
ManualSpecifies a pool of manually configured floating (nonpersistent) desktops that are
managed and configured by a vCenter Server.
ManualUnmanagedNonPersistentSpecifies a pool of manually configured floating (nonpersistent) desktops that are
ManualUnmanagedPersistentSpecifies a pool of manually configured dedicated (persistent) desktops that are not
ManualVCPersistentSpecifies a pool of manually configured dedicated (persistent) desktops that are
NonPersistent(AutomaticPool) Specifies a pool of automatically configured floating
OnRequestSviNonPersistent(AutomaticPool) Specifies a pool of floating (nonpersistent) desktops that are
OnRequestSviPersistent(AutomaticPool) Specifies a pool of dedicated (persistent) desktops that are
OnRequestVcNonPersistent(AutomaticPool) Specifies a pool of floating (nonpersistent) desktops that are
OnRequestVcPersistent(AutomaticPool) Specifies a pool of dedicated (persistent) desktops that are
Persistent(AutomaticPool) Specifies a pool of automatically configured dedicated (persistent)
SVINonPersistent(AutomaticPool) Specifies a pool of floating (nonpersistent) desktops that are
SVIPersistent(AutomaticPool) Specifies a pool of dedicated (persistent) desktops that are
TerminalServiceSpecifies a pool of desktops that are managed and configured by a terminal server.
TransferServerSpecifies a pool of desktops that are managed and configured by a transfer server.
not managed.
managed.
managed by a vCenter Server.
(nonpersistent) desktops that are provisioned, managed, and configured by a
vCenter Server.
provisioned, managed, and configured by a vCenter Server and View Composer
when requested.
provisioned, managed, and configured by a vCenter Server and View Composer
when requested.
provisioned, managed, and configured by a vCenter Server when requested.
provisioned, managed, and configured by a vCenter Server when requested.
desktops that are provisioned, managed, and configured by a vCenter Server.
provisioned, managed, and configured by a vCenter Server and View Composer.
provisioned, managed, and configured by a vCenter Server and View Composer.
Power Policy Settings
Tab le 3-11 shows the settings that you can use with the -powerPolicy parameter to specify the power policy
for a desktop pool.
Tabl e 3-11. Power Policy
Power Policy SettingDescription
AlwaysOnConfigures a desktop to remain powered on, even when no one is using it. If
you shut down the desktop, it restarts immediately.
RemainOnStarts a desktop when required if it is powered down. The desktop then remains
powered on until you shut it down.
PowerOffShuts down a desktop when no one is using it.
SuspendSuspends a desktop when no one is using it.
VMware, Inc.37
VMware View Integration
Refresh Policy Settings
Tab le 3-13 shows the settings that you can use with the -refreshPolicyType parameter to specify a refresh
policy for the OS disks of automatically provisioned dedicated and linked-clone desktop pools.
Table 3-12. Refresh Policy Settings
Refresh PolicyDescription
AlwaysSpecifies that an OS disk is always refreshed when the user logs out.
ConditionalSpecifies that an OS disk is refreshed when the user logs out if certain conditions
NeverSpecifies that an OS disk is never refreshed when the user logs out.
Smart Card Authentication Settings
Tab le 3-13 shows the settings that you can use with the -smartCardSetting parameter to specify how users
with smart cards are authenticated. These settings apply to Update-ConnectionBroker, and do not have any
effect unless you also specify -UseSSLClient $true with Update-GlobalSetting.
Table 3-13. Smart Card Authentication Settings
Refresh PolicyDescription
NotAllowedSpecifies that smart card authentication is disabled.
OptionalSpecifies that users can use smart card authentication or password
RequiredSpecifies that users must use smart card authentication when connecting to the
are met. Use the -refreshpolicyDays and -refreshPolicyUsage
parameters to specify the refresh interval in days and the percentage of the
maximum allowable size for the disk.
authentication to connect to the View Connection Server instance. If smart card
authentication fails, the user must provide a password.
View Connection Server instance. Smart card authentication replaces Windows
password authentication only. If SecureID is enabled, users are required to
authenticate by using both SecureID and smart card authentication.
View Composer Maintenance Task Types
Tab le 3-14 shows the settings that you can use with the -composerTask parameter to specify a View
Composer maintenance task type that is scheduled on a virtual machine.
Table 3-14. View Composer Maintenance Task Types
Task TypeDescription
attachUddSpecifies a scheduled task to attach a persistent disk.
detachUddSpecifies a scheduled task to detach a persistent disk.
mkChkPointSpecifies a scheduled task to create a checkpoint snapshot.
rebalanceSpecifies a scheduled task to rebalance a linked-clone desktop.
refreshSpecifies a scheduled task to refresh a linked-clone desktop.
replaceUddSpecifies a scheduled task to replace a persistent disk.
resyncSpecifies a scheduled task to recompose a linked-clone desktop.
38VMware, Inc.
Examples of Using View PowerCLI Cmdlets
The View PowerCLI cmdlets allow you to perform View operations from the command line or from scripts
instead of using View Administrator. The following sections contain examples that you can adapt and apply
to your own systems.
Displaying Information About a View Connection Server Instance
Display the configuration settings of a View Connection Server instance.
Get-ConnectionBroker -broker_id CONNSVR1
Updating the Configuration of a View Connection Server Instance
Update the settings for direct connections and secureID on a View Connection Server instance.
The datastores that you specify as arguments to -datastorePaths override the previous setting. You must
specify the existing datastores to retain them for use by the pool.
Creating and Updating Linked-Clone Desktop Pools
Add the linked-clone desktop pool lcdpool_1, which is managed by View Composer on the vCenter Server
vc.mydom.int.
NOTE To provision all the desktops in advance of their use, set -minimumCount and -maximumCount to the
same value.
If you specify a persistent data disk, use an uppercase letter for the drive. Do not use a letter that already exists
on the parent virtual machine for a drive such as A, B, or C, or that conflicts with a network-mounted drive.
Update the configuration of the linked-clone desktop pool lcdpool_1.
The datastores that you specify as arguments to -datastoreSpecs override the previous setting. You must
specify the existing datastores to retain them for use by the pool.
Rebalance desktops in the linked-clone desktop pool lcdpool_2 among the available datastores.
-ForcedLogoffMessage "Forced log out will occur in $logoutdelay minutes"
Require clients to use SSL to connect and set the prelogin message.
Update-GlobalSetting -UseSSLClient $true -PreLoginMessage "Insert disclaimer and other notices
here."
Managing View Licenses
Display the installed View license keys.
Get-License
Add a license key.
Set-License -key "08A25-0212B-0212C-4D42E"
Examples of Using View PowerCLI for Enhanced Functionality
You can create PowerShell functions by combining View PowerCLI and vSphere PowerCLI cmdlets to perform
complex operations such as resizing pools, and adding datastores to desktop pools. The following sections
contain sample functions that you can adapt and apply to your own systems.
Checking if a View Connection Server Instance Is Running
Define a PowerShell function to check if a View Connection Server instance is running, and optionally, start
the service.
# WaitForViewStartup
# Parameters
# $ClearErrorIf $true, clear the $error object on completion.
# $StartBrokerIf $true, start the service if it is not running.
function WaitForViewStartup
{ param ($ClearError = $true, $StartBroker = $true)
Write-Error "The View Connection Server services could not be found. Is the Connection
}
}
Server installed?"
Resize Automatic and Linked-Clone Desktop Pools
Define PowerShell functions to check the current usage of all desktop pools, and to resize any automatically
provisioned or linked-clone desktop pools that are at their maximum capacity.
# PollAllPoolsUsage
# Parameters
# $increment Amount by which to increase a pool that is at maximum capacity (default = 5).
function PollAllPoolsUsage
{ param ($increment)
if(-not $increment){
$increment = 5
}
# Retrieve all pool objects and check each one individually
$pools = Get-Pool
foreach ($pool in $pools){
PollPoolUsage $pool $increment
}
}
# PollPoolUsage
# Parameters
# $PoolPool object that represents the pool to be checked.
# $incrementAmount by which to increase pool that is at maximum capacity.
function PollPoolUsage
{ param ($Pool, $increment)
# Get a list of remote sessions for the pool (errors are suppressed)
$remotes = Get-RemoteSession -pool_id $Pool.pool_id -ErrorAction SilentlyContinue
# Count the remote sessions.
$remotecount = 0
if($remotes){
$remotecount = ([Object[]]($remotes)).Count
}
# Get a list of local sessions for the pool (errors are suppressed)
$locals = Get-LocalSession -pool_id $Pool.pool_id -ErrorAction SilentlyContinue
# Count the local sessions.
$localcount = 0
if($locals){
$localcount = ([Object[]]($locals)).Count
}
# Calculate the total number of sessions
$totalcount = $localcount + $remotecount
VMware, Inc.45
VMware View Integration
# Determine the maximum number of desktops configured for a pool.
$maxdesktops = 0
if($Pool.deliveryModel -eq "Provisioned"){
Write-Output ("Pool " + $Pool.pool_id + " is using 100% of its desktops. Maximum VMs
} else { # Pool type cannot be resized
}
}
}
increased to " + $newmaximum)
Write-Output ("Pool " + $Pool.pool_id + " is using 100% of its desktops. Consider
increasing its capacity.")
Determining Paths to vSphere Inventory Objects
Define a PowerShell function that uses vSphere PowerCLI to return the full path to a vSphere inventory object.
For a function that you can use to determine datastore paths, see “Determining Paths to vSphere Datastore
You can use VMware and Microsoft command tools to export and import LDAP configuration data in LDAP
Data Interchange Format (LDIF) files from and into VMware View. These commands are intended for use by
advanced administrators who want to use scripts to update configuration data without using View
Administrator. If you want to create scripts to update the View configuration, VMware recommends that you
use View PowerCLI rather than LDAP commands.
This chapter includes the following topics:
“LDAP Configuration Data” on page 49
“Export LDAP Configuration Data” on page 50
“Modify LDAP Configuration Data” on page 50
“Import LDAP Configuration Data” on page 53
“Import LDAP Configuration Data Using the LDIFDE Command” on page 54
LDAP Configuration Data
All View configuration data is stored in an LDAP directory. Each View Connection Server standard or replica
instance contains a local LDAP configuration repository and a replication agreement between each of the View
Connection Server instances. This arrangement ensures that changes to one repository are automatically
replicated to all the other repositories.
4
When you use View Administrator to modify the configuration of VMware View, the appropriate LDAP data
in the repository is updated. For example, if you add a desktop pool, VMware View stores information about
users, user groups, and entitlements in LDAP. The View Connection Server instances manage other LDAP
configuration data automatically, and they use the information in the repository to control View operations.
You can use LDIF files to perform a number of tasks.
To transfer configuration data between View Connection Server instances.
To define a large number of View objects, such as desktop pools, and add these to your View Connection
Server instances without using View Administrator to do this manually.
To back up your View configuration so that you can restore the state of a View Connection Server instance.
In View Manager 3.1 and later, regular backups of the LDAP repository are made automatically.
LDAP configuration data is transferred as plain ASCII text and conforms to the Internet Engineering Task
Force (IETF) RFC 2849 standard.
VMware, Inc.49
VMware View Integration
Export LDAP Configuration Data
You can export configuration data from a standard or replica View Connection Server instance to an LDIF file
by running the vdmexport command-line utility.
By default, the vdmexport command-line utility is installed in the C:\Program Files\VMware\VMware View\Server\tools\bin directory.
In View Manager 3.1 and earlier, you must be logged into a standard or replica View Connection Server
instance as an administrator and be a member of the Local Administrators user group.
In VMware View 4.5 and later, you must be logged in to a View Connection Server instance as a user in the
Administrators or Administrators (Read only) role to export configuration data successfully from the View
configuration repository.
To export configuration data from a View Connection Server instance
1Select Start > Command Prompt.
2At the command prompt, type the vdmexport command and redirect the output to a file.
vdmexport > myexport.LDF
You can specify the output file name as an argument to the -f option.
vdmexport -f myexport.LDF
The command writes the configuration of your View Connection Server instance to the file that you
specify. The command displays errors if your role has insufficient privileges to view the data in the
configuration repository.
Modify LDAP Configuration Data
You can modify the LDAP configuration data that you have exported from a View Connection Server instance
to an LDIF file and use the modified file to perform automatic bulk configuration operations on View
Connection Server instances.
You can obtain an example of the LDIF syntax for any item of LDAP configuration data in VMware View. For
example, you can extract the data for a desktop pool and use this as a template to create a large number of
desktop pools.
To modify LDAP configuration data
1Use View Administrator to add a single desktop pool with the default attribute values that you require.
If required, you can modify these values when you create your customized configuration file.
2Use the vdmexport command to export the configuration data as an LDIF file.
See “Export LDAP Configuration Data” on page 50.
3Examine the contents of the LDIF file to find the entry definitions of the desktop pool that you created.
You can use this entry as a template for adding a large number of desktop pools.
Use the vdmimport command to import your customized LDIF file and update the configuration of the View
Connection Server instance. See “Import LDAP Configuration Data” on page 53.
You must add the following entries to an LDIF file to define a desktop pool:
A Virtual Desktop VM entry for each virtual desktop in the desktop pool.
A VM Pool entry for each desktop pool.
A Desktop Application entry that defines the entitlement of the desktop pool.
Each VM Pool entry must be associated with one Desktop Application entry in a one-to-one relationship. A
Desktop Application entry cannot be shared between VM Pool entries, and a VM Pool entry can only be
associated with one Desktop Application entry.
50VMware, Inc.
Chapter 4 Customizing LDAP Data
The following extract from an LDIF file shows sample entries for a desktop pool named Pool1, which contains
two virtual desktops named VM1 and VM2. The desktop pool entry is paired with the Desktop Application
entry, which is also named Pool1.
Tab le 4-1 lists the attributes that are important when you modify a desktop pool definition.
Tabl e 4-1. Important Attributes for Defining a Desktop Pool
EntryAttributeDescription
Virtual Desktop VM
VM Pool
Desktop Application
Desktop ApplicationmemberSpecifies a list of Active Directory (AD) users and groups who are
cnSpecifies the common name of an entry. If you require names to be
generated automatically, specify globally unique identifier (GUID)
strings. You can use any reliable GUID generator, such as the
mechanism provided by .NET (for example, by calling
System.Guid.NewGuid().ToString() in Visual Basic).
entitled to access the desktop pool. The attribute is specified in the
form of a Windows Security Identifier (SID) reference. A member
value of <SID=S-1-2-3-4> represents an AD user or group with the
SID value S-1-2-3-4. In LDIF format, the left angle (<) character is
reserved, so you must place two colons (::) after the attribute name
and specify the SID value in base 64 format (for example,
PFNJRD1TLTEtMi0zLTQ+IA==). Because this attribute is
multivalued, you can use it on multiple lines to represent each entry
in a list of SIDs.
In a similar manner to desktop pools, you can create customized LDIF files for other objects that are defined
in the LDAP repository, for example:
Global configuration settings.
Configuration settings for a specific View Connection Server instance or security server.
Configuration settings for a specific user.
Import LDAP Configuration Data
You can import configuration data from an LDIF file into a standard or replica View Connection Server by
running the vdmimport command.
The vdmimport command is available in VMware View 4.5 and later releases. In releases prior to VMware
View 4.5, you must use the LDIFDE command. See “Import LDAP Configuration Data Using the LDIFDE
Command” on page 54.
By default, the vdmimport command-line utility is installed in the C:\Program Files\VMware\VMware View\Server\tools\bin directory.
The vdmimport command does not update, create, or delete any LDAP records that are not defined in the LDIF
file. This allows you to customize an LDIF file so that only selected records are affected when you import the
file.
You must be logged into a View Connection Server instance as a user in the Administrators role to import
configuration data successfully into the View configuration repository.
To import configuration data into a View Connection Server instance
1Select Start > Command Prompt.
2At the command prompt, type the vdmimport command and specify an existing LDIF file as an argument
to the -f option.
vdmimport -f myexport.LDF
The configuration of your View Connection Server instance is updated with the data from the file, and the
number of records that have been successfully updated is displayed. Errors are displayed if some records
could not be updated because your role has insufficient privileges.
VMware, Inc.53
VMware View Integration
Import LDAP Configuration Data Using the LDIFDE Command
You can import configuration data from an LDIF file into a standard or replica View Connection Server by
running the Microsoft LDIFDE command.
In VMware View 4.5 and later releases, you should use the vdmimport command to import configuration data.
The vdmimport command does not display the large number of error messages that are produced by running
the LDIFDE command. See “Import LDAP Configuration Data” on page 53.
The LDIFDE command does not update, create, or delete any LDAP records that are not defined in the LDIF
file. This allows you to customize an LDIF file so that only selected records are affected when you import the
file.
For more information about using the LDIFDE command, go to http://support.microsoft.com/kb/237677.
In View Manager 3.1 or earlier, you must be logged into a View Connection Server instance as an
administrator, and be a member of the Local Administrators user group.
In VMware View 4.5 and later releases, you must be logged into a View Connection Server instance as a user
in the Administrators role to import configuration data successfully into the View configuration repository.
To import configuration data into a View Connection Server instance using LDIFDE
1Select Start > All Programs > ADAM > ADAM Tools Command Prompt.
2At the command prompt, type the LDIFDE command and specify an existing LDIF file as an argument to
the -f option.
LDIFDE -i -f myexport.LDF -s 127.0.0.1 -z
Enter the other options to the LDIFDE command as shown in the example.
The configuration of your View Connection Server instance is updated with the data from the file, and the
number of records that have been successfully updated is displayed. A large number of error messages
are displayed that indicate whenever an existing entry in the repository has been overwritten. Such errors
can be ignored. Errors are also displayed if some records could not be updated because your role has
insufficient privileges.
54VMware, Inc.
5
Integrating with SCOM
You can use Microsoft System Center Operations Manager (SCOM) to monitor the state of VMware View
components, including View Connection Server instances and security servers and View services running on
these hosts.
This chapter includes the following topics:
“View Management Packs” on page 55
“Name a View Connection Server Group” on page 56
“Import the View MPs” on page 56
“View Discovery Script” on page 56
“Run the Discovery Script” on page 57
“Display Discovered Objects” on page 57
“Display Managed Objects” on page 58
“Views and Monitors” on page 58
“Enable a Proxy Agent on a Server” on page 60
“Display Performance Data” on page 60
5
“Display Information About an Alert” on page 60
“Restart a Service” on page 60
“Exclude a Domain from Connectivity Monitoring” on page 60
“Close Alerts” on page 61
“Class and Relationship Definitions” on page 61
View Management Packs
The View management packs (MPs) require the default System MP that is installed with Microsoft SCOM and
the MP for Microsoft Windows Server Base OS System Center Operations Manager 2007.
View.Discovery.mp contains the agent that discovers instances of View Server installations. See “View
Discovery Script” on page 56.
VMware.View.Monitoring.mp contains the views and monitors that you can use with View in the
Operations Manager console. See “Views and Monitors” on page 58.
VMware, Inc.55
VMware View Integration
VMware.View.Library.mp contains class and relationship definitions for the managed objects in View.
See “Class and Relationship Definitions” on page 61.
VMware.View.Image.Library.mp contains the graphics that represent the classes that are defined in
VMware.View.Library.mp.
N
OTEView MPs might be identified in Microsoft SCOM as VMware View 4.5. These MPs are the latest
versions and are supported in View releases subsequent to View 4.5, such as View 5.1.
Name a View Connection Server Group
You can assign a name to a group of one or more View Connection Server hosts and security servers. The
Operations Manager console displays this name to help you identify the group within SCOM.
To name the View Connection Server group
On one of the View Connection Server hosts in the group, use the -C and -c options with the vdmadmin
command.
vdmadmin -C -c group_name
For example, set the name of a View Connection Server group to VCSG01.
vdmadmin -C -c VCSG01
Import the View MPs
When you install the View Connection Server software, the View MPs are also loaded onto the View
Connection Server instance or security server. You can copy the View MPs to a SCOM server and use the
Import Management Packs wizard from the Operations Manager console to import them.
N
OTEThere is a known problem with McAfee VirusScan Enterprise 8.0i blocking the operation of Visual Basic
scripts that are used by SCOM. For more information and details of the available patch, go to
http://support.microsoft.com/kb/890736/en-us.
To import the View MPs on a SCOM server
1Copy the View MPs from their installation directory (usually C:\Program Files\VMware\VMware
View\Server\extras\ManagementPacks) on a View Connection Server instance or security server to
the SCOM server.
2In the Operations Manager console, right click Administration\Management Packs, and select Import
Management Packs.
3Use the Import Management Packs wizard to import the View MPs.
4(Optional) Run the discovery script manually for the systems on which the VMware View software is
installed.
More more information, see “Run the Discovery Script” on page 57.
View Discovery Script
The VMware.View.Discovery MP contains a script that finds View installed systems. The discovery script
probes the registries of Windows servers for entries that indicate the version of the View software, the type of
server, and the name and ID of the View Connection Server group. If the script detects that a View server is
installed on a computer, it creates instances of the object classes that are defined in the VMware.View.Library
MP and establishes the relationships between these managed objects.
The script can only discover a Windows server if you have used the Operations Manager console to enable the
proxy agent for the server. See “Enable a Proxy Agent on a Server” on page 60.
The discovery script is scheduled to run once every hour. You can also perform the discovery manually from
the Operations Manager console. See “Run the Discovery Script” on page 57.
56VMware, Inc.
Chapter 5 Integrating with SCOM
You can verify the objects that the discovery agent has created for a server by viewing them in the Operations
Manager console. See “Display Discovered Objects” on page 57.
The agent discovers the following managed objects for a Connection Server.
VMware.View.Cluster
VMware.View.Cluster.Node.V0405
VMware.View.ConnectionServerRole.V0405
VMware.View.Component.ConnectionServer.V0405
VMware.View.Component.Framework.V0405
VMware.View.Component.Web.V0405
VMware.View.Component.Directory.V0405
VMware.View.Component.SecureGateway.V0405
VMware.View.Component.MessageBus.V0405
The agent discovers the following managed objects for a Security Server.
VMware.View.Cluster
VMware.View.Cluster.Node.V0405
VMware.View.SecurityServerRole.V0405
VMware.View.Component.SecurityServer.V0405
VMware.View.Component.Framework.V0405
VMware.View.Component.SecureGateway.V0405
For a description of View object classes and their relationships, see“Class and Relationship Definitions” on
page 61.
Run the Discovery Script
The discovery script is scheduled to run once every hour. You can run the script manually to discover a system
that you have added.
To run the discovery script
In the Operations Manager console, go to Monitoring\Windows Computers, select a computer system, and
click the VMware View Run Discovery Probe action.
Display Discovered Objects
You can display the View objects that the discovery script has created for a server.
To display the objects that the discovery script has created for a server
In the Operations Manager console, go to Monitoring\Discovery Inventory.
VMware, Inc.57
VMware View Integration
Display Managed Objects
You can display the View objects that SCOM manages, and the relationships between these objects.
To display managed objects in View and their relationships
In the Operations Manager console, go to Monitoring\VMware View, and select the required view.
Views and Monitors
The VMware.View.Monitoring MP contains the views and monitors that you can use with View in the
Operations Manager console. Tab le 5- 1 lists the views that you can use to examine discovered View objects.
Tabl e 5-1. Views Available for View
ViewDescription
Active AlertsDisplays critical View alerts.
Node StateDisplays the state of all discovered members of all View Connection Server
Group StateDisplays the state of the discovered View Connection Server groups.
GroupsDisplays a diagram of all discovered View Connection Server groups, members,
Connection Server Role Performance
Data
Secure Gateway Role Performance
Data
groups.
roles, and components. You can obtain details about objects and their
relationships by clicking the icons and the connectors.
Displays the following data sets:
All Sessions
All Sessions High
Checked out VMs
Checked out VMs High
SVI Sessions
SVI Sessions High
Displays the following data sets:
Secure Gateway Sessions
Secure Gateway Sessions High
You can find the Active Alerts, Group State, Groups, and Node State views under Monitoring\VMware View
and the Connection Server Role Performance Data and Secure Gateway Role Performance Data views under
Monitoring\VMware View\Performance in the Operations Manager console.
The VMware.View.Monitoring MP provides the following monitor types:
Performance monitor – collects system data and return this data to the SCOM performance database and
data warehouse. You can examine the data graphically in the Connection Server Role Performance Data
and Secure Gateway Role Performance Data views. See “Performance Data Collection Settings” on
page 59 and “Display Performance Data” on page 60.
Service component monitors – collect information about the state of the View component services. If a
monitored service is not running, SCOM sets its state to error and raises an alert. If a component is in the
error state, the affected View Connection Server group and its members also enter the error state. See
“Display Information About an Alert” on page 60, “Restart a Service” on page 60, and “Close Alerts” on
page 61.
Tab le 5-2 shows the service component monitors that are provided for a View Connection Server instance.
Tabl e 5-2. View Service Component Monitors for a View Connection Server instance
MonitorDisplay NameMonitored Service
ConnectionServerServiceCheckConnection Server Service HealthVMware View Connection Server
FrameworkServiceCheckBase Framework Service HealthVMware View Framework
Component
58VMware, Inc.
Chapter 5 Integrating with SCOM
Tabl e 5-2. View Service Component Monitors for a View Connection Server instance (Continued)
MonitorDisplay NameMonitored Service
MessageBusServiceCheckMessage Bus Service HealthVMware View Message Bus
SecureGatewayCheckSecurity Gateway Service HealthVMware View Security Gateway
WebServiceCheckWeb Service HealthVMware View Web Component
DirectoryServiceCheckDirectory Service HealthVMwareVDMDS
Component
Component
Tab le 5-3 shows the service component monitors that are provided for a security server.
Tabl e 5-3. View Service Component Monitors for a Security Server
MonitorDisplay NameMonitored Service
SecureGatewayServerServiceCheckSecurity Server Service HealthVMware View Security Server
FrameworkServiceCheckBase Framework Service HealthVMware View Framework
Component
SecureGatewayCheckSecurity Gateway Service HealthVMware View Security Gateway
Component
Domain connectivity monitor – verifies that a Connection Server can bind to all the domains of which it
is a member. The monitor queries the status of the Web component on a Connection Server every 3
minutes. If a Connection Server cannot bind to a domain, SCOM sets its state to error and raises an alert.
See “Display Information About an Alert” on page 60, “Exclude a Domain from Connectivity
Monitoring” on page 60, and “Close Alerts” on page 61.
Event database connectivity monitor – checks that the event database is configured and that events are
writable to the database. The monitor queries the Web component every 3 minutes for this information
and raises an alert if the event database is not connected.
Virtual Center (vCenter) connectivity monitor – checks that a View Connection Server instance can
connect to the configured vCenter servers. The monitor queries the Web component every 3 minutes for
this information and raises an alert if a vCenter server is not available.
Performance Data Collection Settings
To save storage space, the System.Performance.OptimizedDataProvider module is configured to store
performance data in the SCOM database when the value of a sampled item has changed by more than a
specified tolerance. For more information, see http://msdn.microsoft.com/en-us/library/ee809318.aspx.
Tab le 5-4 shows the performance data collection settings for the data sets.
Tabl e 5-4. Performance Data Collection Settings
Data setFrequencyToleranceMaximum Sample Separation
All Sessions15 minutes5%4
All Sessions High60 minutes5%4
Checked Out VMs15 minutes5%4
Checked Out VMs High60 minutes5%4
Secure Gateway Sessions15 minutes5%4
Secure Gateway Sessions High60 minutes5%4
SVI Sessions15 minutes5%4
SVI Sessions High60 minutes5%4
VMware, Inc.59
VMware View Integration
Enable a Proxy Agent on a Server
You must enable the proxy agent on each View Connection Server host or security server that you want to
monitor.
To enable the proxy agent on a server
1In the Operations Manager console, go to Administration\Agent Managed, select the server, and click
Properties.
2Under the Security tab, select the option Allow this agent to act as a proxy and discover managed objects
on other computers.
3Click OK.
Display Performance Data
You can display graphical information about the performance of a View Connection Server instance or security
server.
To display performance data for a View Connection Server instance or security server
In the Operations Manager console, go to Monitoring\VMware View\Performance, select the Connection
Server Role Performance Data or Secure Gateway Role Performance Data view, and select the required data
sets.
Display Information About an Alert
You can use the Health Explorer to display information about alerts that the health monitors have raised for a
View Connection Server group.
To display active alerts for View components
1In the Operations Manager console, go to Monitoring\VMware View and select the Active Alerts view.
2Select an alert () to display the knowledge article for that alert.
Restart a Service
The service component monitors alert you if a View component service stops working. You can restart a
service from the Health Explorer.
To restart a service following an alert
1In the Operations Manager console, go to Monitoring\VMware View and select the Group State view or
the Group Node State view.
2Right click on a View Connection Server group or member that is in the alert state ( ) and select
Open > Health Explorer.
3In the Health Explorer, select the alert and click Restart the service in the knowledge article.
Exclude a Domain from Connectivity Monitoring
The Domain Connectivity Health monitor checks the connectivity between a View Connection Server host’s
domain and any trusted domains. To avoid seeing alerts for a domain, you can exclude the domain from being
monitored.
To exclude a domain from being monitored for connectivity
1In the Operations Manager console, go to Monitoring\VMware View, and select the Group State view or
the Group Node State view.
2Right click on the connection server, and select Open > Health Explorer.
60VMware, Inc.
3Right click on the Domain Connectivity Health entry for the Connection Server in the Health Explorer
and select Monitor Properties.
4Under the Overrides tab, click Override and select the option for all objects of the same class.
5In the Override Properties window, select the Override check box for the DomainExcludeList parameter,
enter the name of the excluded domain in the Override Setting field, and select the Enforced check box.
If you want to exclude more than one domain, use spaces to separate the domain names.
6Click Apply and OK.
Close Alerts
You can close an alert without taking any action. This method does not prevent the alert from being raised
again if the underlying cause persists.
To close alerts
1In the Operations Manager console, go to Monitoring\VMware View and select the Active Alerts view.
2Select the alert and click the Close Alert action.
Class and Relationship Definitions
The VMware.View.Library MP contains the class and relationship definitions for the View MPs. A class can
have properties, such as a name or an ID. The relationships between classes describe their hierarchy. For
example, the relationship contains exists between VMware.View.Clusters and VMware.View.Cluster,
and between VMware.View.Cluster and VMware.View.Cluster.Node
Chapter 5 Integrating with SCOM
Tab le 5-5 shows the View Connection Server group classes that are defined in the VMware.View.Library MP.
Tabl e 5-5. View Library View Connection Server Group Classes
Class NameDescription
VMware.View.ClusterRepresents a View Connection Server group. This class has
the properties ClusterID and DisplayName (the name of
the group).
VMware.View.ClustersRepresents a singleton class that contains instances of
VMware.View.Cluster.
Tab le 5-6 shows the abstract base classes that are defined in the VMware.View.Library MP.
Tabl e 5-6. View Library Base Classes
Class NameDescription
VMware.View.Cluster.NodeRepresents a member of a View Connection Server group.
This class has the properties ClusterID, ClusterName,
ProductVersion, and InstallPath.
VMware.View.ComponentRepresents a View component that has been installed on a
member of a View Connection Server group. This class has
the property Name.
VMware.View.Component.ConnectionServerRepresents the Connection Server component that has
been installed on a member of a View Connection Server
group. This class inherits its properties from
VMware.View.Component.
VMware.View.Component.DirectoryRepresents the Directory component that has been
installed on a member of a View Connection Server group.
This class inherits its properties from
VMware.View.Component.
VMware, Inc.61
VMware View Integration
Tabl e 5-6. View Library Base Classes (Continued)
Class NameDescription
VMware.View.Component.FrameworkRepresents the Framework component that has been
VMware.View.Component.MessageBusRepresents the Message Bus component that has been
VMware.View.Component.SecurityGatewayRepresents the Security Gateway component that has been
VMware.View.Component.SecurityServerRepresents the Security Server component that has been
VMware.View.Component.WebRepresents the Web component that has been installed on
VMware.View.ConnectionServerRoleRepresents a member of a View Connection Server group
VMware.View.NodeRoleRepresents the role of a member of a View Connection
VMware.View.SecurityServerRoleRepresents a member of a View Connection Server group
installed on a member of a View Connection Server group.
This class inherits its properties from
VMware.View.Component.
installed on a member of a View Connection Server group.
This class inherits its properties from
VMware.View.Component.
installed on a member of a View Connection Server group.
This class inherits its properties from
VMware.View.Component.
installed on a member of a View Connection Server group.
This class inherits its properties from
VMware.View.Component.
a member of a View Connection Server group. This class
inherits its properties from VMware.View.Component.
with the Connection Server installed on it. This class
inherits its properties from VMware.View.NodeRole.
Server group.
with the Security Server installed on it. This class inherits
its properties from VMware.View.NodeRole.
The currently supported instances that are derived from these classes must be View version 4.5 or a later
release. Tab le 5-7 shows the version 4.5 or later concrete classes that are defined in the VMware.View.Library
MP.
N
OTEThese concrete classes are the latest versions and are supported in View 4.5 and later releases.
Tabl e 5-7. View Library version 4.5 Concrete Classes
Class NameDescription
VMware.View.Cluster.Node.V0405Represents a View Connection Server group member that
VMware.View.Component.ConnectionServer.V0405Represents version 4.5 or a later release of the Connection
VMware.View.Component.Directory.V0405Represents version 4.5 or a later release of the Directory
VMware.View.Component.Framework.V0405Represents version 4.5 or a later release of the Framework
has version 4.5 or a later release of View installed. This
class inherits its properties from
VMware.View.Cluster.Node.
Server component that has been installed on a member of a
View Connection Server group. This class inherits its
properties from VMware.View.Component.ConnectionServer.
component that has been installed on a member of a View
Connection Server group. This class inherits its properties
from VMware.View.Component.Directory.
component that has been installed on a member of a View
Connection Server group. This class inherits its properties
from VMware.View.Component.Framework.
62VMware, Inc.
Chapter 5 Integrating with SCOM
Tabl e 5-7. View Library version 4.5 Concrete Classes (Continued)
Class NameDescription
VMware.View.Component.MessageBus.V0405Represents version 4.5 or a later release of the Message Bus
VMware.View.Component.SecurityGateway.V0405Represents version 4.5 or a later release of the Security
VMware.View.Component.SecurityServer.V0405Represents version 4.5 or a later release of the Security
VMware.View.Component.Web.V0405Represents version 4.5 or a later release of the Web
VMware.View.ConnectionServerRole.V0405Represents a member of a View Connection Server group
VMware.View.SecurityServerRole.V0405Represents a member of a View Connection Server group
component that has been installed on a member of a View
Connection Server group. This class inherits its properties
from VMware.View.Component.MessageBus.
Gateway component that has been installed on a member
of a View Connection Server group. This class inherits its
properties from
VMware.View.Component.SecureGateway.
Server component that has been installed on a member of a
View Connection Server group. This class inherits its
properties from
VMware.View.Component.SecurityServer.
component that has been installed on a member of a View
Connection Server group. This class inherits its properties
from VMware.View.Component.Web.
with version 4.5 or a later release of the Connection Server
installed on it. This class inherits its properties from
VMware.View.NodeRole.
with version 4.5 or a later release of the Security Server
installed on it. This class inherits its properties from
VMware.View.NodeRole.
The VMware.View.Library MP also contains friendly name strings for classes and properties. The SCOM
console displays friendly names in preference to class and property names.
VMware, Inc.63
VMware View Integration
64VMware, Inc.
6
Examining PCoIP Session Statistics
You can use Windows Management Instrumentation (WMI) to examine performance statistics for a PCoIP
session by using any of the supported programming interfaces, including C#, C++, PowerShell, VBScript,
VB .NET, and Windows Management Instrumentation Command-line (WMIC). You can also use the Microsoft
WMI Code Creator tool to generate VBScript, C#, and VB .NET code that accesses the PCoIP performance
counters. For more information about WMI, WMIC, and the WMI Code Creator tool, go to
http://technet.microsoft.com/en-us/library/bb742610.aspx and
http://www.microsoft.com/downloads/en/details.aspx?familyid=2cc30a64-ea15-4661-8da4-55bbc145c30e&dis
playlang=en.
This chapter includes the following topics:
“Usage Notes for Recorded Statistics” on page 65
“General Session Statistics” on page 66
“Audio Statistics” on page 66
“Imaging Statistics” on page 67
“Network Statistics” on page 68
“USB Statistics” on page 69
6
Usage Notes for Recorded Statistics
The WMI namespace for the PCoIP session statistics is root\CIMV2.
Administrator privileges are required to access the performance counters remotely.
The names of the statistics are suffixed with (Server)or (Client), according to whether the statistic is
recorded on the PCoIP server or on the PCoIP client.
You can use Windows Performance Monitor (PerfMon) with the counters to calculate averages over a specified
sampling period.
All statistics are reset to 0 when a PCoIP session is closed. If the WMI property SessionDurationSeconds is
a non-zero value and stays constant, the PCoIP server was forcefully ended or crashed. If the
SessionDurationSeconds property changes from a non-zero value to 0, the PCoIP session is closed.
To avoid a division-by-zero error, verify that the denominator in the expressions for calculating bandwith or
packet-loss percentage does not evaluate to zero.
USB statistics are recorded for zero clients, but not for thin clients or software clients.
VMware, Inc.65
VMware View Integration
General Session Statistics
The WMI class name for PCoIP general session statistics is
Win32_PerfRawData_TeradiciPerf_PCoIPSessionGeneralStatistics.
Tab le 6-1 shows the general statistics for a PCoIP session.
Tabl e 6-1. General Statistics
WMI Property NameDescription
BytesReceivedTotal number of bytes of PCoIP data that have been received since the
BytesSentTotal number of bytes of PCoIP data that have been transmitted since the
PacketsReceivedTotal number of packets that have been received successfully since the
PacketsSentTotal number of packets that have been transmitted since the PCoIP
RXPacketsLostTotal number of received packets that have been lost since the PCoIP
SessionDurationSecondsTotal number of seconds that the PCoIP Session has been open.
TXPacketsLostTotal number of transmitted packets that have been lost since the PCoIP
PCoIP session started.
PCoIP session started.
PCoIP session started. Not all packets are the same size.
session started. Not all packets are the same size.
session started.
session started.
To calculate the bandwidth in kilobits per second for received PCoIP data over the time interval from time t1
to time t2:
Do not use TXBWkbitPersec for the preceding calculation.
To calculate the packet loss in percentage for received data over the time interval from time t1 to time t2:
PacketsReceived during interval = (PacketsReceived[t2]-PacketsReceived[t1])
RXPacketsLost during interval = (RXPacketsLost[t2]-RXPacketsLost[t1])
RXPacketsLost % = RXPacketsLost during interval /
(RXPacketsLost during interval + PacketsReceived during interval) * 100
Do not use RXPacketLostPercent or RXPacketLostPercent_Base for the preceding calculation.
To calculate the packet loss in percentage for transmitted data over the time interval from time t1 to time t2:
PacketsSent during interval = (PacketsSent[t2]-PacketsSent[t1])
TXPacketsLost during interval = (TXPacketsLost[t2]-TXPacketsLost[t1])
TXPacketsLost % = TXPacketsLost during interval /
(TXPacketsLost during interval + PacketsSent during interval) * 100
68VMware, Inc.
Use this formula to prevent the packet loss percent from becoming greater than 100%. This calculation is
required because PacketsLost and PacketsSent are asynchronous..
Do not use TXPacketLostPercent or TXPacketLostPercent_Base for the preceding calculation.
USB Statistics
The WMI class name for PCoIP USB statistics is
Win32_PerfRawData_TeradiciPerf_PCoIPSessionUSBStatistics.
Tab le 6-5 shows the USB statistics for a PCoIP session.
Tabl e 6-5. USB Statistics
WMI Property NameDescription
USBBytesReceivedTotal number of bytes of USB data that have been received since the PCoIP
USBBytesSentTotal number of bytes of USB data that have been transmitted since the
USBRXBWkbitPersecBandwidth for incoming USB packets averaged over the sampling period,
USBTXBWkbitPersecBandwidth for outgoing USB packets averaged over the sampling period,
Chapter 6 Examining PCoIP Session Statistics
session started.
PCoIP session started.
in seconds
in seconds.
To calculate the bandwidth in kilobits per second for received USB data over the time interval from time t1 to
time t2:
class definitions in View MPs 61
cmdlets 29
columns in event database tables 10
-composerTask parameter 38
configuration changes, displaying for VMware
View 43
configuration settings
displaying for View Connection Server 39
updating for View Connection Server 39
connection broker events 11
Connection Server Role Performance Data view 58
ConnectionServerServiceCheck monitor 58
D
data disks, displaying for virtual machines 43
datastore objects
Get-ProfileDisk cmdlet 32
Get-RemoteSession cmdlet 32
Get-TerminalServer cmdlet 32
Get-User cmdlet 32
Get-ViewVC cmdlet 32
global configuration, displaying for VMware View 43
Group Node State view 58
Group State view 58
GroupId column 10
Groups view 58
groups, displaying information about 41
with Local Mode 7
View Composer 7
View Composer maintenance task types 38
View Connection Server 7
adding vCenter servers to configuration 39
checking if running 44
displaying configuration settings for 39
displaying configured vCenter servers 39
removing vCenter servers from
configuration 39
updating configuration settings for 39
View Connection Server groups, naming 56
View discovery script 56
View MPs
class and relationship definitions 61
importing 56
introduction to 55
View PowerCLI cmdlets 29
displaying help 30
error handling 30
error using pipe with View PowerCLI
cmdlets 30
introduction to 29
listing 30
loading 30
parameters 35
setting unrestricted execution policy for 30
View Transfer Server 7
78VMware, Inc.
Index
views
available with SCOM 58
displaying those available for reporting
events 43
virtual machines
displaying active data disks for 43
displaying information about 42
removing ownership of 43
resetting 43
updating ownership of 43
VMware View
adding licenses 44
displaying configuration changes 43
displaying global configuration of 43
displaying licenses 44
displaying user events 43
event database 9
integrating with SCOM 55
overview 7
setting global value of logout delay period 44
setting global value of logout warning
message 44
setting global value of prelogin message 44
setting global value of session timeout 44
setting global value of SSL use by View
Client 44
VMware.View.Cluster class 61
VMware.View.Cluster.Node class 61
VMware.View.Cluster.Node.V0405 class 62
VMware.View.Clusters class 61
VMware.View.Component class 61
VMware.View.Component.ConnectionServer
class 61
VMware.View.Component.ConnectionServer.V0405
class 62
VMware.View.Component.Directory class 61
VMware.View.Component.Directory.V0405
class 62
VMware.View.Component.Framework class 62
VMware.View.Component.Framework.V0405
class 62
VMware.View.Component.MessageBus class 62
VMware.View.Component.MessageBus.V0405
class 63
VMware.View.Component.Security Server.V0405
class 63
VMware.View.Component.SecurityGateway
class 62
VMware.View.Component.SecurityGateway.V0405
class 63
VMware.View.Component.SecurityServer class 62
VMware.View.Component.Web class 62
VMware.View.Component.Web.V0405 class 63
VMware.View.ConnectionServerRole class 62
VMware.View.ConnectionServerRole.V0405
class 63
VMware.View.Discovery.mp 55
VMware.View.Image.Library.mp 56
VMware.View.Library.mp 56
VMware.View.Monitoring.mp 55
VMware.View.NodeRole class 62
VMware.View.SecurityServerRole class 62
VMware.View.SecurityServerRole.V0405 class 63
W
WebServiceCheck monitor 59
WMI namespace for PCoIP statistics 65
VMware, Inc.79
VMware View Integration
80VMware, Inc.
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.