Finally I made it and found the time to upload the biz.dfch.PS.vCAC.Utilties PowerShell module! It is available for download at Github and NuGet (see below for links) and placed under the Apache 2.0 license. How to install: Copy the module along with the XML configuration file into a directory with the same name as the module under a path that […]
When you have a vCAC stub (i.e. ‘BuildingMachine’ or any other stub) and invoke a script or process (like a PowerShell script) and from that script you start a new process as direct descendant of the original process it will be killed by vCAC when the stub exits. vCAC seems to search all processes and compares their Parent ProcessID against […]
The vCAC user interface is functional but has quite some limitations when you want to do selection based on different criteria the user enters. So for example, it is not possible to have cascading dropdown lists based on two parent lists or values. Furthermore you cannot select a physicl machine based on its location. And there are plenty more examples […]
Did you ever get the response from VMware support or anyone else ‘for this you need a CDK license to make it work’? As it turns out this is a costly thing to have and in most cases you will not need it anyway. In addition, if you really come across something the ‘CloudUtil.exe’ does not let you do, you […]
Some time back I showed a way on how one can change the placement while provisioning. The central problem is that the placement takes place in that moment when the user submits his machine request. So at any step during the provisioning the placement has already been determined and resources already have been allocated. During my research regarding the import […]
Besides the well used ManagementContext vCAC also has some SOAP services for basic infrastructure communication and provisioning. With the ProvisionService, VMPS for short, you get a wrapper around some basic vCAC workflows and helper functions that abstract data manipulation of the MangementContext and others. Using this service with PowerShell is pretty straightforward with the help of the ‘New-WebServiceProxy’ Cmdlet. For […]
When you play with vCAC workflow and scripts you will most certainly work with the ManagementModelEntitesClient or the MgmtContext for short. Have a look at my introduction to it in this blog post. But there is actually more in vCAC than just that. Out of the box vCAC ships with these models: And some of them are actually quite useful. […]
Calling PowerShell from vCAC is easy, right. But how about the other way round? Suppose you want to start the ‘ReclaimDestroyedStaticIPAddresses’ or the ‘WFStubMachineExpired’ workflow manually? As usual this can be done via the vCAC MetaModel ODATA REST service and of course with PowerShell. For a brief overview about the MetaModel you can have a look at Investigating vCAC 5.2 […]
When you want to change the owner of a machine in vCAC you would probably like to inform the owner of what he just acquired. The easist thing is to to send an update notification via vCACs VMPS SOAP (ProvisionService) service: You can ignore the error message and wrap it into a try/catch block to hide it. If you get […]
In case you would like to import existing machines into vCAC you have the option to import them via ‘Discovery’ from within the GUI. But if you wanted to import more than a few machines at a time this might become a little more than tedious. Of course you can always revert back to AutoIT or something similar to do […]
We recently had a customer who wanted an automatic approval of machine requests after a specific time span when no other approver would have rejected the request. On the other hand he wanted an automatic rejection of machine requests after a defined idle time for machine types that used large amount of resources (as the resource is still being reserved […]
When provisioning a server via PXE or ISO install you might run into a problem where you see your machines being in an ‘Installing OS’ state (between ‘BuildingMachine’ and ‘MachineProvisioned’) though the actual installation has finished long time ago. This might be because the ‘Guest Agent’ is either not installed on the image/machine or because there is no connectivity between […]
As quickly described in a previous post, the ‘AddQueryOption()’ in the vCAC WCF DataService is flawed and does not allow you to narrow queries and thus leads to massive performance penalties when working with larger installations. However, there is a workaround for this: you can use native ODATA REST calls and convert the result into a native .NET vCAC ManagementModelEntities […]
Another gotcha you might run into when you try to install vCAC 5.2 Hotfix 5 … When you try to install the hotfix on a repo server that only accepts HTTPS/SSL connections you might encounter the following error: This is because somehow the installer only tries to access the repo via HTTP. In this case you stop the installer, go […]
When you install vCAC 5.2 Hotfix 5 you certainly have to install this on all componentens and systems running any piece of vCAC software. However, there is a scenario when this is not enough, or you have to do some manual adjustments. You will remember, that when you first installed vCAC 5.2, you had to ‘install’ the ‘Model Manager Data’ […]
[UPDATE 2014-08-11] See note below for a workaround on this. vCAC provides access to its data model via an ODATA REST interface that is based on the Microsoft .NET Entity Framework. Access to this interface is encapsulated and abstracted via the EF DataService that is exposed via the ModelManagerEntities object. For more information you can check some of my earlier […]