I really liked the post “Rapid deployments with IBM SmartCloud Provisioning” that explains how simple and fast it is to deploy instances using IBM SmartCloud Provisioning.
But it is also important to have a flexible way for passing parameters during the deployment in order to configure or customize the deployed instances.
IBM SmartCloud Provisioning provides, in the launch instance panel and also using the CLI, the “user_data” text field that can be used for this scope.
It 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.
The “user_data” field is a free text field so for example it can contain:
- Comma separated values for simple configurations
- Multi-part MIME format for complex configurations, where each part, identified by a proper content-type, is related to a specific customization.
The launched instance can easily retrieve the user_data field by invoking the predefined URL http://169.254.169.254/latest/user-data and processes it according the needs.
The capability to retrieve and process user data can be achieved by: exploiting the current integration between IBM SmartCloud Provisioning and the Image Construction and Composition Tool (ICCT), which is available in IBM SmartCloud Provisioning version 1.2; creating a new bundle, which is the User-Data consumer bundle that contains a script that retrieves the “user-data;” and processing it based on the user’s needs.
An interesting scenario is the capability of passing directly one or more scripts to be invoked at deployment time to have a really dynamic configuration. In this way, a new image can be configured or customized at deployment time.
For more information about user-data capabilities and examples, see the Ubuntu cloud-init component description at https://help.ubuntu.com/community/CloudInit.
To try out IBM SmartCloud Provisioning free for 30 days, explore the trial going on now.
For further information about IBM SmartCloud Provisioning and the Image Construction and Composition Tool see IBM SmartCloud Provisioning Information Center.