Application ProfilesFor the sake of this discussion, I’m not going to delve too deeply into application profiles. Application profiles are one of those things that I could probably write a small book about, and I really don’t want to get completely sidetracked by going into a deep dive on application profiles. Even so, application profiles are one of those things that you are likely to need when you build your own private cloud, so I want to at least give you enough information to get you started.
Just as a hardware profile defined virtual hardware, an application profile is used for deploying applications. There are three different types of application profiles, and they are used for deploying three different types of applications.
The basic idea behind an application profile is that it is a mechanism for automating application deployment. If you know that there are certain applications that will need to be deployed over and over again within your private cloud then you will want to create an application profile for those applications. That way, the task can be automated and included in the virtual machine creation process. This makes life easier for the person who is creating the virtual machine and it also greatly reduces the chances for human error.
Application profiles can be used for deploying Microsoft Server Application Virtualization (App-V) applications, SQL Server Data Tier Applications, or deployable Web applications.
Application profiles exist as a part of the library of profiles that can be used in the virtual machine creation process. As such, if you want to create an application profile, you must open the Virtual Machine Manager console, click on the Library workspace, right click on the Application Profiles container, and choose the Create Application Profile command from the shortcut menu, as shown in Figure A.
Figure A: Application profiles are created within the Library workspace.
The New Application Profile Wizard is actually very simple. The wizard’s initial screen asks you to enter a name and a description for the application profile that you are creating. There is also a Compatibility drop down list, through which you must select the type of application that you want to deploy. You can see what this looks like in Figure B.
Figure B: You must select the application type from the Compatibility drop down list.
As you look at the figure above, you will also notice that there is an Application Configuration option. You can use this option to define OS compatibility. This is also where you go to add the actual application to the profile, as well as to define any required scripts.
Working with TemplatesNow that I have quickly skimmed over the subject of application profiles, it’s time to move on to the really fun stuff – templates. Templates allow you to use all of the profiles that you have been defining up to this point. There are two types of templates that you need to know about – VM Templates and Service Templates.
As the name implies, a VM template provides instructions for building a virtual machine. Service templates allow you to collectively deploy a series of VMs that work together. Imagine for instance that a private cloud user wanted to deploy Exchange Server. To do so, they would need at least one domain controller, a mailbox server, and a client access server. A service template could be used to provide System Center with instructions for deploying the three required virtual machines so that the end user could simply choose an option to automatically build an Exchange environment rather than having to first deploy a domain controller, and then deploy a CAS server or a mailbox server. Of course I’m just using Exchange Server as an example. Service templates are useful for deploying any application that spans multiple virtual machines.
Building a Virtual Machine TemplateSo let’s go ahead and build a virtual machine template. In the interest of keeping things simple, we will create a virtual machine template that is used to perform a generic Windows VM deployment.
Begin the process by opening the Virtual Machine Manager console and clicking on the Library workspace. Next, right click on the VM Template container, and select the Create VM Template command from the shortcut menu. When you do, System Center will launch the Create VM Template Wizard.
The wizard’s initial screen asks you if you want to build the VM from an existing VM template or from a virtual hard disk that is stored in the library, or if you would prefer to build the template from a VM that is deployed on the host. Choose the option to use an existing VM Template or a Virtual Hard Disk Stored in the Library. Click the Browse button and you will see a list of library resources that you can choose from. Select the resource that you want to use, as shown in Figure C, and click OK.
Figure C: Choose the resource that you want to use and click OK.
Click Next and you will be prompted to enter a name and a description for the VM template that you are creating. I would encourage you to be as detailed as possible when you write the description.
Click Next, and you will be prompted to select the hardware that you want to allocate to the new VM template. At first, it appears as though this is a manual process. However, everything that we have done so far was designed to reduce our workload in the long run. We have already defined some hardware profiles that we can use. As such, you can simply select your hardware profile from the drop down list, as shown in Figure D.
Figure D: Select your hardware profile.
Click Next, and you will be taken to the Configure Operating System screen. Although you can enter the various settings manually, it is easier to select one of the Guest OS Profiles that you created earlier in the series.
Click Next, and you will be taken to the Configure Applications screen. Since we are building a template for a generic Windows Server deployment, we don’t need to specify any applications. However, if you wanted to host an application on the VM, you could simply select an application profile from the drop down list shown in Figure E. Keep in mind that the application that you select will be deployed to any VM that is built from the template.
Figure E: You can link an application profile to a VM template.
Click Next and you will be prompted to link a SQL Server profile to the VM template. SQL Server profiles are beyond the scope of this article series, so just click Next. You should now see a summary of your template configuration options. Assuming that everything appears to be correct, click the Create button to create the template. When finished, the template will appear within the VM Templates container, as shown in Figure F.
Figure F: The new template appears within the VM Templates container.