5.3
Table Of Contents
- Copyright
- About This Book
- Preparing for Installation
- Installing VCM Using Installation Manager
- Upgrading VCM and Related Components
- Getting Started with VCM Components and Tools
- Getting Started with VCM
- Discover, License, and Install Windows Machines
- Verifying Available Domains
- Checking the Network Authority
- Assigning Network Authority Accounts
- Discovering Windows Machines
- Licensing Windows Machines
- Installing the VCM Windows Agent on your Windows Machines
- Performing an Initial Collection
- Exploring Windows Collection Results
- Getting Started Collecting Windows Custom Information
- Discover, License, and Install UNIX/Linux Machines
- Discover, License, and Install Mac OS X Machines
- Discover, License, and Collect Oracle Data from UNIX Machines
- Customize VCM for your Environment
- How to Set Up and Use VCM Auditing
- Discover, License, and Install Windows Machines
- Getting Started with VCM for Virtualization
- Virtual Environment Configuration
- ESX 2.5/3.x,vSphere 4, and ESXi Servers Collections
- vCenter Server Collections
- Configuring Agent Proxy Virtualization Collections
- Configuring Agent Proxy Machines
- Configuring ESX/vSphere Servers
- Configuring Web Services for ESX/vSphere Server Communication
- Performing an Initial Virtualization Collection
- Exploring Virtualization Collection Results
- Configuring vCenter Server Data Collections
- About the vSphere Client VCM Plug-in
- Further Reading
- Getting Started with VCM Remote
- Getting Started with VCM Patching
- Getting Started with Software Provisioning
- VMware vCenter Configuration Manager Package Studio
- Software Repository for Windows
- Package Manager for Windows
- Overview of Component Relationships
- Installing the Software Provisioning Components
- Using Package Studio to Create Software Packages and Publish to Repositories
- Using VCM Software Provisioning for Windows
- Related Software Provisioning Actions
- Further Reading
- Getting Started with VCM Management Extensions for Assets
- Getting Started with VCM Service Desk Integration
- Getting Started with VCM for Active Directory
- Getting Started with VCM for SMS
- Getting Started with Windows Server Update Services
- Accessing Additional Compliance Content
- Installing and Getting Started with VCM Tools
- Maintaining VCM After Installation
- Troubleshooting Problems with VCM
- Configuring a Collector as an Agent Proxy
- Index
Example of Developing a Custom PowerShell Script for Use with the WCI Data Type
In this example, the objective is to collect scheduled tasks information from Windows clients. On newer
systems, Windows conveniently provides the schtasks.exe utility to report on scheduled tasks created
either through the Task Scheduler user interface or through use of the AT command.
n
Running schtasks by itself returns only basic data about tasks.
n
Adding the /query /v switches provides additional information, but the formatting is difficult for
automated processing.
n
The schtasks /query /? command provides additional possibilities.
n
The option set of schtasks /query /v /fo:csv is selected as the source for the data for the
collection script. These options give full details for all tasks in a comma-separated value result set.
PowerShell makes working with tabular result sets from commands easy. A first step for this script is to
run a command similar to:
$schtasks = schtasks /query /v /fo:csv
Since the data returned from schtasks includes multiple rows, PowerShell makes the $schtasks
variable into an array. As such, $schtasks[0] represents the first row returned from the command.
Viewing the result set by looking at $schtasks[n] shows that that the first line, $schtasks[0], is blank;
$schtasks[1] contains column names, and $schtasks[2] is the first row of task data. The goal, then, is
to parse this data into a structure compatible with VCM’s XML format for return to the Collector.
The Scheduled Tasks script uses the split method of PowerShell strings to separate the columns of the
$schtasks rows into separate values in arrays. The column names row provides the names to use for
attributes, and the corresponding data from the scheduled task rows provide the values to use for these
attributes.
Once parsed, the XML returned by the script should look something like:
<schtasks>
<taskname1>
<attribute1>Value1</attribute1>
<attribute2>Value2</attribute2>
…
</taskname1>
<taskname2>
<attribute1>Value1</attribute1>
<attribute2>Value2</attribute2>
…
</taskname2>
…
</schtasks>
The <schtasks> top-level name is an arbitrary name picked to distinguish the results of this script from
others. A couple of additional challenges must also be overcome with this data, related to column names
returned by the schtasks command, and the fact that the schtasks command does not include any
unique and repeatable identifier for specific task entries. Details about these challenges are described next.
vCenter Configuration Manager Installation and Getting Started Guide
78 VMware, Inc.