A simple way to customize an image at deployment time using IBM SmartCloud Provisioning 2.1

Update: Also check out a free 30-day trial of SmartCloud Provisioning available now:  http://ibm.co/x3YAoc.

In a previous article, I described how to use IBM SmartCloud Provisioning 1.2 to pass parameters at deployment time — parameters that can retrieved and processed later by a proper application that has to be installed in the image.

Now I want to share with you a simple but effective capability, also available in IBM SmartCloud Provisioning 2.1, for automatically configuring an image at deployment time without requiring any change to the image itself.

When you deploy a single virtual image or a pattern using an image that is created by using IBM Construction and Composition Tool (ICCT) 1.2, you can pass a script in the “user-data” text box,  and the script will automatically be executed without requiring any change in the image.

By using this approach, you can apply simple configurations to the image or for example install Linux RPM files that are available in a common repository.

The following figure shows the deployment panel that describes how to pass some shell commands:

Consider that this capability is available also through the command-line interface (CLI) in case you need to perform some automation mechanism, such as DevOps scenarios, for example.

This capability is achieved by exploiting the scp-cloud-init component that is added automatically when an image is extented by using ICCT 1.2, because it is included in the ICCT enablement bundles.

The scp-cloud-init component retrieves the script that is processing the user-data file and adds the script at the end of the boot process (/etc/rc.local) so that it is automatically executed when the image activation is completed.

The scp-cloud-init component is inspired by the Amazon EC2 instance metadata; you can find an interesting article about it at the following address: http://alestic.com/2009/06/ec2-user-data-scripts.

For more information about user-data capabilities and examples, see the Ubuntu cloud-init component description at https://help.ubuntu.com/community/CloudInit.

For further information about IBM SmartCloud Provisioning and the Image Construction and Composition Tool, see IBM SmartCloud Provisioning Information Center.

Comments: 1
Giuseppe Ciano

About Giuseppe Ciano

Giuseppe Ciano (Pino) is an Advisory Software Engineer and IBM Master Inventor working in the IBM Rome Lab. He has 14 years of experience in the design and developing of IBM Tivoli Products in particular in the last 6 years he worked on Cloud products and solutions like for example IBM Service Delivery Manager, Cloudburst and SmartCloud Provisioning and also as Technical Advocate for specific customers.
This entry was posted in Managing the Cloud and tagged , , , , , , , , , . Bookmark the permalink.