In this article I’m gong to walk through automating the installation of the Windows Guest Agent. There are advantages to automating the guest agent installation. One advantage is instead of pre-installing it in your template you can script the install using the “Run Once” capability exposed through the vCenter Customization Specification.
Included in the vCAC installation package is a zip file named DCAC-GuestAgent2010Zip.zip. This has all the exploded files that are used within the Windows Guest Agent Installer. These are the files we will be utilizing to manually install the service.
Preparing the files for Installation
1. First thing we need to do is extract the zip file so we can access the files within it.
2. Inside the zip file there is a file name “VRMAgent.exe.config” we need to edit this file and replace all references to “localhost” with the “IP” address or “hostname” of the “vCAC server“.
3. Next place the files in a folder on an open share where they can be accessed during the sysprep operation.
Continue reading “vCloud Automation Center – vCAC 5.1 – Automated Installation Of Windows Guest Agent”
There are a few components to executing scripts in a Windows Guest OS which I’m going to cover in this post. Those items are:
- Windows Guest Agent
- Custom Properties
Windows Guest Agent – UPDATED!
Note: Due to a bug in this version of the agent installer that prevents it from being properly removed from the guest machine I recommend you use the process I define in Automated Install of Windows Guest agent to install the agent. You can follow the article and automate the installation or perform the steps manually in your template to achieve the same result as outlined in this article, without the side affect of the agent staying resident on your deployed machines.
The Windows Guest Agent has a number of feature benefits that you receive if you utilize it. The Windows guest agent is a small agent that acts very similarly to the vCAC proxy agents. When it is installed you give it the name or IP address of the vCAC server. This allows it to check in with the server when it loads on a newly provisioned machine and determine if there is anything it needs to do. If the vCAC server has work for it to do it send the instructions and the agent executes the instructions on the local guest operating system. Once the guest agent is finished performing the work assigned the last process it executes is to remove itself from the guest. The guest agent comes with a number of pre-built functions, but also allows you to execute your own scripts. Some of the features available with the Windows Guest Agent are:
Disk Operations – Partition, Format, and mount disk that is added to the machine.
Execute Scripts – Execute scripts after the machine is provisioned.
Network Operations – Configure setting for additional network interfaces added to the machine.
Continue reading “vCloud Automation Center – vCAC 5.1 – Executing Scripts with the Windows Guest Agent”
To create a custom drop down menu that can be presented to users at request time we will be leveraging the Property Dictionary. The Property Dictionary gives us the ability to enhance and further customize the request experience. The Property Dictionary allows us to:
- Create Basic Drop Down Menu’s
- Create Context Sensative Drop Down Menu’s
- Create Drop Down Lists
- Create Checkboxes
- Create Date/Time inputs
- Create Noteboxes, TextBoxes, Integer inputs, links, password inputs and more.
In this example we are going to create a basic drop down menu that allows a user to select the folder their machine should be placed in inside vCenter from a list of available locations.
Continue reading “vCloud Automation Center – vCAC 5.1 – Creating Custom Drop Down Menu’s”
In this example we are going to configure a few different types of custom properties. The properties we are going to configure are:
- VMware.VirtualCenter.Folder – This property allows you to define the folder in vCenter that a virtual machine will be placed in. If the folder does no exists it will be created when a machine is crated to be placed in the folder.
- Cost.Center – This is not a reserved custom property, it’s one we are going to make up to attach a cost center to the machine request.
- Project.ID – This is not a reserved custom property, it’s one we are going to make up to attach a Project ID to the machine request. We are going to prompt the user to input this value as part of the request.
- Plugin.ADMachine.Cleanup.X – There are actually a few properties associated with this. The AD Cleanup wizard is a set of properties that allows you to configure what action to take in AD when a machine is destroyed. In my example I’m going to remove the machine record, however you can also configure it to move the machine to a specific OU and not delete it’s record.
Continue reading “vCloud Automation Center – vCAC 5.1 – Using Custom Properties”
vCAC has a feature that can be enabled to provide support for Static IP address assignments of provisioned workloads. This Static IP Address feature allows you to create “Network Profiles” that you assign to your networks from which it assigns IP addresses to machines that are provisioned on to the network. vCAC handles IP address allocation in the following way:
- When a machine request is submitted it get placed on the appropriate reservation that is assigned to the group that can support the request.
- Once placed on the reservation it get’s assigned to a network. If the network has a “Network Profile” assigned to it the machine will receive the next available IP Address form the “Network Profile. If not no address will be assigned.
- As pat of the machine provisioning process you can execute “VMware Customization Specs” that perform the sysprep operation on the provisioned machine. When an IP address is assigned from a “Network Profile” vCAC instructs vCenter to override the customization spec with the IP information assigned to the machine. (When using VMware cloning either customization specifications” or the “vCAC Guest Agent” is required for static IP address assignments.)
Continue reading “vCloud Automation Center – vCAC 5.1 – Configure Static IP Address Support”
A Multi-Machine service is a Blueprint that is configured to deploy multiple blueprints/machines from one request. Essentially let’s say you have a blueprint that is configured to deploy a Windows 2008 Server with SQL, and you have another blueprint that is configured to deploy a Windows 2008 Server with an application installed such as vCAC. You can create a Multi-Machine service blueprint that contains both blueprints. You Multi-Machine service can be vCAC Server and when it’s requested it will deploy both blueprints each with their own configuration as well as overall multi-machine configuration that can be laid on top.
If you think about it vCAC can manage different hyperervisor such as vSphere through vCenter or vCD, Hyper-V, XenServer, it can manage Physical Servers, and external Amazon EC2 resources. So you can have individual blueprints configured to deploy to these different types of infrastructure. This gives you incredible flexibility. You could have a Multi-Machine service that has a blueprint that provisions an application server to a vSphere environment, a database server to a physical server, and multiple web servers to Amazon EC2. So let’s see how we configure a basic Multi-Machine Service.
Be sure that you have completed the steps in the below posts before configuring a multi-machine service:
First things first. We need at least two blueprints to be able to create a multi-machine service so let’s make a second blueprint. This can be done very easily by making an existing blueprint copyable. To do this perform the following:
Continue reading “vCloud Automation Center -vCAC 5.1 – Conifiguring Multi-Machine Services”
I’ve been getting asked a lot of question on how to execute scripts within Linux Guest Systems using vCAC. There are a few components to executing scripts in a Linux Guest OS which I’m going to cover in this post. Those items are:
- Linux Guest Agent
- Custom Properties
Linux Guest Agent
The Linux guest agent has a number of feature benefits that you receive if you utilize it. The Linux guest agent is a small agent that acts very similarly to the vCAC proxy agents. When it is installed you give it the name or IP address of the vCAC server. This allows it to check in with the server when it loads on a newly provisioned machine and determine if there is anything it needs to do. If the vCAC server has work for it to do it send the instructions and the agent executes the instructions on the local guest operating system. The guest agent comes with a number of pre-built scripts and functions, but also allows you to execute your own scripts. Some of the features available with the Linux Guest Agent are:
- Disk Operations – Partition, Format, and mount disk that is added to the machine.
- Execute Scripts – Execute scripts after the machine is provisioned.
- Network Operations – Configure setting for additional network interfaces added to the machine.
Continue reading “vCloud Automation Center – vCAC 5.1 – Executing Scripts with the Linux Guest Agent”
In my last post I covered how to connect vCAC to Amazon EC2 which I hope was useful for many it appears to have received a lot of attention. In this post I’m going to walk you through how to connect vCAC to vCenter. Be sure that you have completed the steps in the below posts before you connect to vCenter:
What were going to configure
In order to configure vSphere integration we are going to setup some additional components of vCAC as outlined below:
- Credentials -Credentials will be utilized by out endpoints to authenticate us to the infrastructure element managers that we are going to communicate with.
- End Point – Endpoints are how we manage connections from vCAC to other infrastructure elements in the environment. There are endpoints that allow us to communicate with EC2, vCenter, vCloud Director, vCenter Orchestrator, Hyper-V, NetApp Filers, as well as Physical Servers such as HP iLO, Dell iDrac, and Cisco UCS.
- Install the vSphere Proxy Agent – The vSphere proxy agent is like a DEM, only it has pre-programmed workflows that perform a specific function. In this case the function will be to communicate with vCenter. Proxy agents are a bit legacy and will hopefully be ported to the new DEM architecture in the future.
- Enterprise Group – Although we already created an Enterprise Group we are going to add vSphere Compute Resources to the group in this exercise. For more information on what Enterprise Groups are see my earlier article “vCloud Automation Center – Laying the foundation“.
- Reservations – A resource reservation is how we provide available resources to our provisioning groups. Resource Reservation are a one to one mapping to provisioning groups. Resource reservation will get created for any type of resources you want to make available to your groups. In this exercise we will be creating a virtual vSphere reservation.
- Global Blueprints – A Blueprint is really a service definition that details what the consumer can request and all the policies and configuration of that service. We will create a virtual blueprint that a consumer can request through the service catalog in this example. I will cover Blueprints in greater detail in another article.
Continue reading “vCloud Automation Center – vCAC 5.1 – Connecting to vCenter”
Usually most people go straight for connecting vCAC to vCenter, but I have decided to connect to Amazon EC2 first. I’m doing this for a few reasons, but mainly because anyone reading this has access to EC2. All you really need is any computer with a Desktop Virtualization tool like VMware workstation and you can test vCAC with Amazon EC2. If you don’t have an Amazon AWWS account go to http://aws.amazon.com and sign-up.
Signing up for Amazon AWS is free and what’s even better is you can also provision “Micro.Instances” for free for an entire year as long as you stay within these guidelines. The basics are this:
- 750 Hours of Linux/Windows Micro Instance Usage per month. (613Mb Memory). This is enough to run a single micro instance for the whole month.
- 750 Hours of Elastic Load Balancing plus 15GB of data processing
- 30GB of Elastic Block Storage
- 5GB of S3 Storage with 20,000 Get requests and 2,000 Put requests
- And some other goodies…..
You can run more than one micro instance at a time as long as the consecutive run time of your machines doesn’t go over 750 hours a month. Once you provision an instance it automatically counts as 15 minutes used. I don’t bother trying to calculate by the 15 minutes so the way I look at it is I can perform 750 provisioning tests per month if each test is less than an hour.
Continue reading “vCloud Automation Center – vCAC 5.1 – Amazon EC2 Configuration”
Before we really start to dig into the fun stuff we need to dig a footing and lay a foundation to build on. In this article I’m going to create an “Enterprise Group“, a few “Machine Prefixes“, and create a “Provisioning Group“. For those not familiar with these let me explain:
Enterprise Groups contain “Enterprise Administrators” and “Compute Resources”. When you create an “Enterprise Group” you will give it a name, assign those that will be the “Enterprise Administrators” and select the “Compute Resources” that they manage. The general concept of the “Enterprise Groups” is let’s say you have a group of administrators that is responsible for managing infrastructure in North America, but you also have a separate group of administrators that is responsible for managing infrastructure in Europe. You can create (2) “Enterprise Groups” one for NA and one for EMEA and in the groups you can map the appropriate administrators to the “Compute Resources” they manage. This allows you to separate access to the infrastructure to the appropriate admins.
Provisioning groups contain your users of the infrastructure. These are the users that will make requests for servers or applications and consume resources that are provided by the ‘Enterprise Groups” Provisioning Groups have a few roles that make them up. The roles are:
- Group Manager Role – The PGMs oversea the group, can access all the machines in the group, can publish blueprints to the groups, can work on behalf of the group users, approve requests made by their users and other groups based administration functions.
- Support User Role- This role is intended for your help desk organization. The role allows the assigned user(s) to work on behalf of the groups users to aid in troubleshooting machine issues.
- User Role – These are the consumers. The users are the consumers of the servers, applications, and resources in your environment. They can only gain access to what has been provided to the group(s) that they belong to.
Continue reading “vCloud Automation Center – vCAC 5.1 – Laying the foundation”