To put it simply, vFabric Application Director (AppD) automates deployments. That might sound trivial at first, but it can automate an entire deployment for all the tiers of complex application, in the right order, with the right configurations, across multiple cloud and/or virtual infrastructures, and without ANY human intervention. If you are just hearing about AppD, you can learn about it quickly here:
- Demo: 7 Steps for Self-Service App Deployment with VMware Application Director
- Application Modeling in vFabric Application Director
- Application Director in 5 Minutes
Why Do We Update Catalog Items?
If an application is going to be installed completely and without human touch, then there has to be some place that stores the logical information about what is being installed and deployed. As you might guess, AppD stores this information in a catalog. The catalog contains catalog items. For example:
- Application Services – Software that can be installed on a virtual machine and includes install, configure, and start scripts.
- Application Components – Custom code like EAR, WAR, SQL, etc.
- Logical Templates – A predefined virtual machine that allows an application to be cloud-agnostic.
- Custom Tasks – An ability to run security patches, configure an APT or YUM repository, etc.
Once catalog items are defined, they are standardized and re-usable within the catalog. An architect or infrastructure person can pull these out of the catalog and into a blueprint to define a specific application deployment. You can then press a button, and AppD will provision VMs, install, and configure the entire application topology based on the blueprint and catalog item information.
From time to time, a catalog administrator needs to modify or update catalog items. For example, they might update a catalog item to:
- Ensure all new deployments are on tc Server 2.7 instead of 2.1
- Ensure all newly created databases across an app’s environments get the latest columns and indexes
- Ensure all newly created app servers run on VMs with the latest OS patch
- Ensure all newly created web servers have the latest security patch
Again, this might sound trivial at first, but think about a situation where you need to update 500 VMs running tc Server in production.
To show how a catalog item is updated in AppD 1.0, we will use a “Hyperic HQ Server” service as an example. There are two ways to update catalog services:
- Update on top of the existing services.
- Update by copying the existing services.
Update Catalog Services on Top of Existing Services
One way to update the service is editing the service on top of the existing service – basically, you are editing a database record with information about the service. To update “Hyperic HQ Server” service, go to Catalog window by clicking “Manage Catalog Items” from the AppD landing page. The Catalog window looks like the following:
Double-click on service “Hyperic HQ Server”, and the Edit Service window will pop up as follows.
In the Edit Service window, you can update any field of service details, properties, and actions (scripts). To update service details, you can directly modify any field within the editing window. To update service properties, you can click “Properties” tab in the Edit Service window, and double-click any field to pop up the Editing Property window as follows:
In the Edit Property window, you can update any field, including property name, description, type, value, and check boxes to specify whether the property is “Required”, “Secured”, and/or “Overridable in Blueprint”.
You update service actions by updating service scripts within the Edit Service window, go to “Action” tab, and you will see the action list made of the actions of “INSTALL”, “CONFIGURE”, and “START” as follows:
To update script of install, configure, or start, click on one of actions. For example, to update install script, double-click on “CONFIGURE” action, and Edit Script window will pop up as follows. You can modify or rewrite the script here:
After finishing the update of “Hyperic HQ Server 4.6.0″ service, click “OK” to confirm the change, or “Cancel” to keep the original.
Update Catalog Services by Copying Existing Services
The walk-through above shows how to update an existing service. Another way to update a service is to copy the existing service and save it as a new service. Then, the service update can be performed on top of the newly created service. This way, you can keep both the existing service and updated service and is a common way to keep both the new and the old service. Users can modify the attributes that need to be changed and don’t need to write the updated version of the service from the scratch.
To copy the “Hyperic HQ Server” service, click on the “Copy this ServiceVersion” button in the column “Actions” for the “Hyperic HQ Server” service. Here is a screen shot of the Catalog window:
After clicking, the Copy Service window will pop up as follows. Fill in the Service Version field and then save the newly copied service.
After saving the newly copied service, you will see the new service listed in the Catalog window. Now you can update the information as explained above in the section “Update Catalog Servicea on Top of Existing Services.”
As you might expect, you can update other catalog items, such as logical templates, custom tasks, and tags in a very similar way.