You are browsing the archive for Virtual machine.

Opalis 6.3 : Building a VMware/SCCM Opalis provisioning workflow

7:54 pm in ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, configmgr2007, ConfigMgr2007 R3, Deployment, Installation, Opalis, Opalis 6.3, Operating System Deployment, powershell, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 R3, SCCM 2007 SP2, sccm2007, Virtual machine, Vmware by Kenny Buntinx [MVP]

Recently we did a customer private cloud project where we used all the system center tooling ( , except for the hypervisor layer , which was VMware .

One of the scenarios that the customer had in mind , was to provision all there virtual servers with SCCM and we had to use Opalis to become the glue between VMware – BMC Remedy and System Center. In the first step of the project we didn’t use the Change request mechanism from BMC Remedy yet. Special thanks to my colleague Gunther Dewit for helping me out on this one .

**** Disclaimer **** – This is a very basic workflow – we will post improvements as we go along – it is for helping people moving forward **** Disclaimer ****

The workflow itself


Delivering input


The first step in creating a workflow is doing a custom start where we could input some necessary variables . The Custom Start Activity is used to create a generic starting point for Workflows. By adding parameters to the Custom Start Activity it can consume external data which can be passed to downstream Workflow Activities.


These are the parameters the workflow needs in further steps.  All the rest of the information that is residing in the data bus of Opalis  .

This input is required, without it, the workflow won’t start. A popup will be presented when starting the workflow.

Now that we have all the necessary input required, we can continue with the creation of the virtual machine. In order to create a virtual machine, we need to provide some parameters, some of them will come from the Custom start step, others will have to be adapted per workflow.


Creating the virtual machine



These are the required parameters.

  • Name: This is the name that will be given to the virtual machine, we will get it from the Custom Start  where we filled in a name.
  • Datastore: This is the datastore that will host the virtual machine disk, we will get it from the Custom Start  where we filled in the datastore.
  • DiskMB: Since it was decided to have a fixed disk with a size of 100GB, we filled it in directly instead of asking it in the first step.
  • DiskStorageFormat: This is the thick or thin format, thin was decided as the default format.
  • MemoryMB: This is the amount of memory that will be given to the virtual machine, we will get it from the Custom Start where we filled in an amount of memory.
  • NumCPU: This is the number of CPU’s that will be given to the virtual machine, we will get it from the Custom Start where we filled in the number of CPU’s we need.
  • CD: It was decided that all VM’s will have a cd drive so we set this to true.
  • VMSwapFilePolicy: This will set the swapfile policy the states where the swapfile will be saved, it was decided to do this in the VM itself.
  • VMHost: This is the physical host where the VM will be hosted, this integration pack cannot provision on cluster yet so you need to choose a physical host.
  • GuestID: This is the OS version that will be installed on the VM.
  • Folder: This is the foldername where the VM will be installed as shown in the ESX console.

You can add more details trough the “optional properties” button. If all goes well, the workflow has created the virtual machine now.

Now we need to change some things on the virtual machine.


Getting the network adapter settings from the created virtual machine


First we need to change the network settings. The VM name, we get from the Custom Start , since this is a read action, no further settings are needed.

Alternatively, you can specify some filters to narrow the data that you receive back.

Alternatively, you can specify some filters to narrow the data that you receive back.


Now we will delete all the network connection that VMware made by default because they are useless to us.


Removing the network adapters from the virtual machine



The Network Adapter name is data that we got back from the read action above and the VM name is still the name entered at the Custom Start .

This will remove all network adapters from the VM, alternatively, you can specify filters if you only want to delete a specific adapter.


Adding the production network adapter to the virtual machine


Now we need to add a network adapter to the VM. The VM name is still the name we entered at the Custom Start .


The NetworkName is the name of the network that you want your network adapter connecting to.

The StartConnected specifies if it will be connected to the network or only added without being connected.

The Type is e1000 as this is the only VMware adapter SCCM can work with.

Now we do another step to get the properties from the newly created adapter so we can use the information to input the computer into SCCM.


Getting the production network adapter settings from the virtual machine



Now that we collected the necessary information for SCCM, we can import the computer into SCCM.

This is done by a powershell script that needs to input parameters, the name and the MAC address.


Adding the computer to SCCM


Now that the computer is known is SCCM, we need to add it to the collection that has the OSD advertised to it.


The is done by the following step.


Adding the computer to an SCCM collection


In the collection field, you can enter 2 things, either the name of the collection or the ID of the collection. What you enter must match the collection value type. If you enter an ID as shown here, the value type must be ID as well. The same is true for the computer where we use the name from the Custom Start step so the value type is name in this case.


Now that the VM is created and provisioned in SCCM, we are ready to deploy the operating system on it.

So let’s power on the VM.


Powering on the virtual machine


The only thing you need to power on a VM is the name and we still get the from the first step.


Now that the VM is booting up, SCCM can start the task sequence to deploy an operating system on the VM.

Meanwhile, we will check the progress in Opalis.


Getting the virtual machine deployment status


The advertisement ID is the ID as it is known in SCCM and the computer name is still the name as we specified in the first step.


Looping the task

Now since the OSD deployment takes some time to complete, we will let the step loop until it gets a result back from SCCM.



It will recheck every 300 second and will do this 8 times or when it gets back from SCCM that the deployment was successful in order not keep the loop while the deployment was finished faster then in 8 loops.


Getting the deployment result


Now we need to output the result to any medium you want (logfile, mail, …), I do an output to a text file as an example.

Conditional progress

Now how does Opalis know when to write to which log file?

This can be regulated by double clicking on the arrows. This is the arrow toward the success file.


As you can see, it will only follow this arrow when SCCM outputs a succeeded message for the advertisement. If not, it will take the other path towards the failed log file.


So , It is not so easy to get it all together , but if I may give a great tip: ” Write down all steps of your manual flow  and then try to translate them into an opalis workflow “


Hope it Helps ,

Kenny Buntinx

App-V : Sequencing the SCCM 2007 Console ( howto )

1:00 pm in AdminUi, AppV, ConfigMgr, ConfigMgr 2007, ConfigMgr 2007 R2, ConfigMgr SP2, configmgr2007, Installation, MMC updates, sccm, SCCM 2007, SCCM 2007 R2, SCCM 2007 SP2, sccm2007, Virtual machine by Kenny Buntinx [MVP]

More and more customers are demanding a swift and easy install of the SCCM console , especially when it comes to upgrade your consoles when a new service pack comes along.

As my customers also have App-V in the house , witch is part of MDOP 2009 by the way , I was also interested to make the console virtualised.

After a few rounds of trying , I did not succeed in creating a virtualized SCCM console as an App-V package

Therefore , I want to explain to you all how to do it . But I couldn’t have done it without the help of Richard Ruiz from MSFT and a blog post on the technet forums.

Prerequisites : To make it yourself easy , please prepare a blank machine ( base XP SP3 with latest software updates ) into a virtualized world where you can use snapshots and revert to the original state as much as you want . I will save you an enormous amount of time.

Procedure :

1. Install all prerequisites (e.g. MMC 3.0, etc.) and your SCCM 2007 SP2 Console natively on your clean WinXP SP3 workstation, to the exact location you will be sequencing to. In this example we used D:\SCCMSP2 (stick to the 8.3 format)
2. Export the following keys and save them to a central location:

  • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\FX:{6de537a5-7a1c-4fa4-ac3a-1b6fc1036560}]
  • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\FX:{a77b774c-ce32-4ab0-982a-6bb3c078e5c1}]
  • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ConfigMgr\AdminUI\QueryProcessors\WQL]

3. Turn Off your virtualized machine and delete all changes made (VHD) or if you use a physical machine , reimage your sequencer to a clean state. 
4. Install your App-V Sequencer and create your folder D:\SCCMSP2 (used in our example)
5. Install all your prerequisites for your SCCM 2007 SP2 Console (e.g. MMC 3.0, etc.) natively 
6. Start your sequencer and when you reach the “begin monitoring” and the sequencer flips to the background , start installing your SCCM 2007 SP2 Console in the previous defined path (in this case D:\SCCMSP2).

7. You could if you want install additions such as the famous “SCCM Right click tools” from Rick Houchins at

8. If you have R2 , install R2 to the same folder , ae D:\SCCMSP2

9. After your installation is complete  and before you stop monitoring, import the 3 previously exported registry keys. 
10. Launch the Console and test functionality, then complete the installation.If you have installed the right click tools , you also need to test all functionallity ! 
11. During the Application Wizard, ensure the shortcut exe path is set to the Q: or adapt the VFS path as necessary and launch the MMC to test functionality at this phase.
12. Finish the sequence and save it. 
13. Modify the OSD to include the following dependency:

———————–code snippet——————————————
echo off \n
copy /y %SFT_MNT%\<Replace with Asset Dir>\VFS\CSIDL_WINDOWS\WinSxS\Manifests %windir%\WinSxS\Manifests \n
xcopy /S /y %SFT_MNT%\<Replace with Asset Dir>\VFS\CSIDL_WINDOWS\WinSxS\Policies %windir%\WinSxS\Policies \n

———————–code snippet——————————————

14. Publish your APP-V sequenced SCCM console  and test the functionality on your App-V Client.

Hope it Helps ,

Kenny Buntinx

How to monitor the hardware of an HP server when running VMWARE ESX in SCOM R2

12:25 pm in MOM, Operations Manager 2007, Opsmgr 2007, SCOM 2007, Virtual machine, Vmware by Kenny Buntinx [MVP]

I ran into a situation that a customer did not want to pay for an expensive management pack to monitor their ESX server Hardware . They all ran on HP Proliant hardware. Here is a small tutorial on how to integrate & configuring the Insight Manager Agents for VMware ESX Servers and let them report into System center Operations Manager 2007 R2

  1. Go to the HP website and search for HP Insight Manager Agents for VMware ESX Server 8.2.0
  2. Download the Agents
  3. Open WinSCP and upload the .tar file you just downloaded to a folder
  4. Log into putty with your root account
  5. Issue the following command to unzip the contents: tar -zxvf hpmgmt-8.2.0-vmware.tgz.
  6. Stop the pegasus services : “Service pagasus stop”
  7. Run “ –install”
  8. Reboot
  9. Stop the pegasus services : “Service pagasus stop”
  10. Run “ – install”
  11. Follow the wizard, when asked for the public string enter (if you use this string) public 2 times (it will not be visible), and be sure to have the HP SIM server’s IP or FQDN. Always answer Y when asked to activate the port 2381 (HPMHP) & the Snmpd deamon.
  12. After the config you need to start the pegasus services : “Service pagasus start”
  13. To check if the configuration has succeeded, log in to the HP System Homepage https://<esx server>:2381/. You should see the servername on the right side.Log in with Root
  14. Check your snmpd.conf  at /etc/snmp/snmpd.conf . It should look like this :


# Following entries were added by HP Insight Management Agents

dlmod cmaX /usr/lib/

rwcommunity public

rocommunity public

rwcommunity  public <The FQDN name of your RMS server>

rocommunity public <The FQDN name of your RMS server>

trapcommunity public

trapsink <The FQDN name of your RMS server> public

syscontact root@localhost (edit snmpd.conf)

syslocation DATACENTER

# ———————- END ——————–

# Sample snmpd.conf containing VMware MIB module entries.

# This is a simple snmpd.conf that may help you test SNMP.

# It is not recommended for production use. Consult the

# snmpd.conf(5) man pages to set up a secure installation.

# VMware MIB modules. To enable/disable VMware MIB items

# add/remove the following entries.

dlmod SNMPESX            /usr/lib/vmware/snmp/


You are done on the ESX Level ! Now we move on to the SCOM R2 Level .

It is relatively simple to monitor the hardware status of your ProLiant servers with Operations Manager. HP  has a free management pack (HP ProLiant Management Pack for System Center Operations Manager 2007), that discovers and monitors them. However if your ProLiant servers happen to have a different OS than Windows installed, it will not not work without a hassle.

I was looking for a way to include the hardware status of our HP servers that ran VMware ESX 3.5 update 4  into OpsMgr. HP does provide a specifically adapted Management Agent for ESX (HP Management Agents for VMware ESX Server as described above ). That allows accessing hardware information about the server using SNMP queries.

On Raphael Burri’s blog you will find a custom written MP that will collaborate with the HP Management pack for Windows and let you monitor your HP hardware . Many thanks to him !!!!

  1. Download the custom made management pack from Raphael Burri on
  2. Download the official HP Management pack for HP Proliant Servers
  3. Install the SNMP stack on your RMS server
  4. Import the both Management packs in your RMS
  5. Configure the SNMP stack of the non-windows ProLiants to allow access from the OpsMgr server or gateway that is going to act as SNMP proxy.
  6. Discover the ProLiant servers as SNMP Network Devices
  7. You are done . Create your own views and rules as you want .


Hope it Helps ,

Kenny Buntinx

SCCM2007 OSD : Customising your Task Sequence for Building a Client OS on your VMWare Workstation 6.0 or later

10:04 am in ConfigMgr, ConfigMgr 2007, OSD, sccm, SCCM 2007, Virtual machine, Vmware by Kenny Buntinx [MVP]

Hi ,

Did you ever wanted to build a reference image of your physical workstations onto your VMware Workstation so that people could play around ?

Well , I have a lot of customers demanding for this scenario and here is how you get started :

Step 1 : Download the drivers of the “Intel PRO Network adapter” from the Intel site (

Step 2 : Install the VMware workstation 6.5 software on a client . Navigate to the following folder “c:\Program Files\VMWare\Vmware Workstation\” , extract those drivers to a folder .

Step 3 : Copy the drivers to a folder on your SCCM Primary server & import those drivers into the driver database . Make sure to also create a Driver Package & replicate it to the selected DP’s


Step 4 : Obtain the VMware Client Tools and create a package into your SCCM server . Create a program with the following line “ Msiexec /I “client tools.msi” /QN

Step 5 : Edit your task sequence and add the earlier created driver package :









As you can see , I have multiple hardware’s included .To sort them out , I use wmi queries and that is explained below .

Step 6 : In the properties pane , select your correct driver package and select “do unattended installation if unsigned drivers …….”


Step 7 : Go to the options tab and create a wmi query that will only apply/install the drivers when it is a VMware .As shown in the example below.


Step 8 : Create a subsection to install specific HW driver software . In this case the VMware client tools .


Step 9 : Select you earlier created package


Step 10 : In the options tab , you repeat your wmi query as shown above :


Step 11 : You think you are done ? Well on the server side you are , but on the client side you must adapt some client settings to get it working .

Step 12 : Adapting the Virtual network drivers to support the WinPe SCCM enviroment.

Step 13 : After your Virtual machine has been created , the network card is not supported for the SCCM PXE boot . You will need to alter manually the *. Vmx file with notepad and add a line to it.


Open the *.VMX file where your VM is located and add the following line :

Ethernet0.virtualDev = “e1000”


Save the file and exit the application.

Step 14 : Record your Mac adress and importing it into SCCM to deploy your VMWARE image .


Hope it helps ,


Kenny Buntinx

The Virtual Data Center: VMM will manage VI3 infrastructure

10:23 am in Lab, Virtual machine by Kenny Buntinx [MVP]

In het first key note of MMS 2008, VP Bob Muglia talked about  Dynamic IT: Transforming Management and the Data Center. He confirmed that most of us already understood: Virtualization is the way to go, especially for Data Center environments. The announcement of the VM Manager Beta 2 release was followed by a short demo that showed SCVMM managing a heterogenous VM environment of Windows Hyper-V and ESX servers.  For ESX, VM Man drills into the VM tools installed on the VM machine so you are actually able to perform a guest-OS migration between ESX host servers.



Building a great Virtual Machine

3:43 pm in Lab, Training, Virtual machine by Kenny Buntinx [MVP]

Hi all,

This post isn’t really sms 2003 or sccm 2007 related, but all of us tend to build virtual lab environments every once in a while. After some thinking I come up with some guidelines I will try to keep myself when building Virtual Machines from now on. This is the list I came up with so far.

  • Domain Name and Passwords should be keyboard agnostic (ie: be the same on azerty/querty
    • Domain Example:
    • Password Example: Topsecret
  • The lab layout should be set as the background image, like in the screenshot
  • The lab should contain the lab credentials set with bginfo
    • The saved parameters file and the windows background should be saved to a folder called c:\bginfo
    • Create login script with saved bginfo parameters file to run as login script.




  • The machine should allow you to shutdown/ restart from the ctrl-alt-del box
  • The welcome page should be disabled
  • System restore should be disabled
  • The shutdown event tracker should be disabled
  • password complexity should be disabled
  • Changing the computer account password should be disabled.
  • Screensaver should be disabled
  • Showing icons on the desktop should be disabled (you didn’t spend all this time on building backgrounds to have them cluttered with icons)
  • All passwords should be configured to not expire
  • Vm’s should be running on the latest service pack
  • Your last login should be with the user that the people will need in the lab so that it is prefilled when pressing ctrl-alt-del
  • the c:\drive should contain a folder called buildguide and an rtf file with the steps taken to create the vm, this way you can see what preparative action has been taken to make the labs work.

So I created my lab environment in visio and saved the different visio’s as bmp’s

And set a lot of the above options using a gpo, I backupped the gpo and saved it. The gpo can be found here:

And you could obviously import it back on any domain controller using gpmc.


“Everyone is an expert at something”
Kim Oppalfens – Sms Expert for lack of any other expertise
Windows Server System MVP – SMS