VMware View 4.5 allows administrators to configure an external Microsoft SQL Server or Oracle database to record all VMware View events. Prior to View 4.5 the events database was integrated with the local ADAM database, not allowing for external Business Intelligence software integration.
With the events database being external it is now possible to use reporting engines such as Crystal Reports, Cognos, MicroStrategy, and Oracle Enterprise Performance Management to access and analyse the data; it is also possible to create triggers to alert monitoring tools such as SCOM and Nagios.
The events logged are:
- 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.
There are 3 modules to be known and therefore analysed: Admin, Agent and Broker.
Admin – As the name says the Admin module is responsible for reporting the administrative tasks that happen thought the UI, but also include automated tasks such as provision of a new desktop.
Agent – Agent module is responsible for reporting the state of a desktop. This information is provided by the View agent running inside each desktop.
Broker – The broker module provides events and reporting for all brokering related actions, including security, vCenter connectivity amongst others.
The table below determine the breakdown of the 3 modules:
The Events database is ruled by two main data tables (EVTevent and EVTevent_data), two historical tables (EVTevent_historical and EVTevent_data_historical) and one additional support table. Data from the main data tables are purged and moved into the historical data tables based on the settings defined in the UI.
Some of the additional event information found in the EVTevent table include the severity of the event (AUDIT_FAIL, AUDIT_SUCESS, ERROR, INFO), Acknowledgement status, DesktopID etc.
Sizing Events Database
The size of the Events database is dependent on number of users, amount of login/logoff, number and frequency of refresh and recompose operations etc. Fundamentally any action or task in VMware View Manager that happened either through manual intervention or automated process will be logged and recorded.
VMware has not published sizing information for the Events database, therefore any numbers I demonstrate here are purely based on my tests and experience deploying VMware View.
On average, during my tests, each desktop consumed 2.5MB of database storage per month. Although it is possible to specify the amount of time to show the events in View Administrator, the data in the historical databases are never deleted and will always be available for external queries.
When sizing the Events database be sure to accommodate requirements for 2 or 3 years of historical data. The math is rather simple: 250 users x 2.5MB x 36 months = 21GB
MS SQL Configuration
Few administrators have had issues when configuring MSSQL for View Events database. There are few steps to be follow in order to get it working correctly. The example below assumes use of MS SQL Server 2005 Express edition; same used by vCenter Server.
MS SQL server uses port 1433 as Default for communication; however VMware has mention to port 1083 for the Events database in some documentation. It will work either way.
Start > All Programs > Microsoft SQL Server 2005 > SQL Server Management Studio Express
Right Click the Server (vCenter\SQLEXP_VIM) > Properties
Security > SQL Server and Windows Authentication mode
Connections > Allow remote connections to this server
Create a new Event DB
Within SQL Server Management Studio Express
Right Click Databases > enter a Database name (ViewEvents)
Create a new login
Within SQL Server Management Studio Express
Select SQL Server Authentication
Change Default database to the new Event DB (ViewEvents)
Set User Mapping for Event DB (ViewEvents)
Set Default Schema: dbo
Set Database role membership: db_owner & public
Grant permission to connect
Check or configure the TCP/IP port used by SQL Server
Start > All Programs > Microsoft SQL Server 2005 > Configuration Tools > SQL Server Configuration Manager
SQL Server 2005 Network Configuration > Protocols for SQLEXP_VIM
TCP/IP > Properties
TCP Dynamic Ports
Configure View Manager Event Database
Login to the View Manager Console > https://view-server/admin
View Configuration > Event Configuration