Please Note : At the time of writing, this is pre-release. Therefore, don't expect much in the way of support!
You will also need a logon for the IBM SmartCloud Enterprise offering.
The IBM Image Construction and Composition Tool (which is called ICON for short, and I can see why!) is a tool that allows you to build virtual
images for deployment into cloud environments. There are many things that make this tool really neat, but my personal favourite is that this kind of model-driven design approach makes creating and deploying images much easier. It also has a familiar look-and-feel to IBM Workload Deployer too, which makes it easier for me to understand.
The ICON Tool allows you to build reusable image assets that can be deployed into VMware ESX and PowerVM clouds. The ICON Tool can deploy to VMware ESX directly or from IBM Workload Deployer. PowerVM deployments are only supported with IBM Workload Deployer.
It is designed to facilitate a separation of concern and tasks, where experts build software bundles for reuse by others. This design approach greatly simplifies the complexity of virtual image creation and reduces errors.
With all that capability wouldn't it be cool if we could deploy directly into SmartCloud Enterprise? Pardon? We can? ..... That's great! How? Overview of SmartCloud EnterpriseIBM SmartCloud Enterprise
(SCE) is an Infrastructure-As-A-Service offering from IBM which allows subscribers to create and manage their own cloud environment. It provides you with access to security-rich, enterprise-class virtual
server environments that you can leverage for development, test and
other dynamic workloads to help reduce labour and capital costs, shorten
development times and improve quality.
Within SCE there is a SmartCloud Ecosystem. This is a comprehensive list of cloud-ready offerings provided by both IBM and partners. It is designed to help thousands of small and medium business clients adopt cloud models
and manage millions of cloud based transactions by assisting their
customers in areas as diverse as banking, communications, healthcare and
government to build their own clouds or securely tap into the IBM
Within the Ecosystem IBM has provided a pre-release version of the ICON tool which can deploy into SCE. What does this mean? Well, it means that you can adopt a reliable, model-driven approach to designing your cloud offerings and place them in a secure, trusted, high-performance environment.
So, we know about ICON and SCE now, or at least enough to allow us to move on. A diagram will help to understand the end goal of this blog post.
These are the steps we will be covering below :
1) Start an instance of the ICON tooling and specify SCE as the cloud provider
2) Import the RHEL base image
3) Extend the base image and add software bundles
4) Synchronize to SCE
5) Capture the image to the SCE Asset Catalog for later reuse
Step 1 - Starting an instance of the ICON Tool and defining SCE as the cloud provider
It's pretty simple to start an instance of an image located in the SmartCloud Ecosystem. I'll list the main points just for clarification :
- After logging on to SCE, click on the Control Panel tab and click Add Instance
- Select a data center and ensure you leave the view as public
- Select the "IBM Image Construction and Composition Tool v1.1 - Pre-release" image
- On the next screens give it a name, specify a key, and just follow the on-screen tasks to completion
Once the instance is started you can access it by clicking Instances on the Control Panel, clicking on the instance name then scrolling down to the Getting Started section. There will be instructions there on how to access the ICON tool through a web browser.
Now we define a cloud provider
. A cloud provider is a service provider that offers storage and software services on a private or public network that is referred to as a cloud.
The storage and software is available for access from
the Internet. According to the User Guide
for the ICON tooling it is possible to specify both VMWare and PowerVM as cloud providers VMWare and PowerVM as cloud providers. However, in this version the only option is SmartCloud Enterprise.
At the ICON Welcome screen, either click either on Manage Cloud Providers, or select Manage Cloud Providers from the Administer drop-down menu. Click the green + to create a cloud provider.
Add a name. Notice the only option for Cloud Provider Type is SCE.
Next, enter your credentials. These are the UserID and Password you use to access SCE from a web browser.
Next, add Keys.
Public : Your own list will be provided for you. Select the key you want.
Private : Browse for the private key related to the public key you specified above.
Data Center : This is the data center you wish to use.
Click Next. Review your options and click Done when you are happy.
Step 2 - Import a base image
In the ICON tool click Images >> Build images
This is where base images are located. We will import a base image into ICON from the SmartCloud Ecosystem.
Click the Import From Cloud Provider
icon. It looks like this :
The search field will show public images in the SmartCloud Ecosystem available to you.
Pick a generic operating system as a base. In this example I used RHEL56.
The new image will appear in the list of images :
This is the base image that we are going to use to form our custom image. At this point though, we only have the base image. It's not much use on its own so we need to add software products.
Step 3 - Extend the base image and add software bundles
The specification of software products - both the installation of, and subsequent configuration of - are handled by software bundles. Creating software bundles is outside the scope of this blog post but there is plenty of information out there about them. This is all part of the "reusable image assets" approach to modeling.
A software bundle holds details of how to install and configure
software. In its most basic form a software bundle could contain a
simple script file that copies files from one location to another. A
more complex version could install entire products - for example,
WebSphere Application Server. You can import bundles from elsewhere or
create your own. It is worth noting that, for larger installations of
products, IBM does recommend that these not be copied to ICON, but
instead located somewhere else and specified to be uploaded via HTTP
during the synchronization part of the Extend/Capture process.
In order to add software bundles to an existing image we need to perform an extend/capture exercise.
Click on the double-CD icon to begin extending the image to the cloud.
Specify a name, Universal ID and a version, and Click Create
At this stage the image has been extended to allow modification, but it is Out Of Sync with SmartCloud Enterprise. By clicking the name of the new image on the left pane, we can see this
reflected in the Image Status on the right pane:
The image has not been copied across to SCE or started anywhere. We can make some additions and/or modifications before deploying to the cloud and thus creating the full image that we want to
capture for future use. The easiest change from here is to increase the minimum hardware memory and vCPUs. Click on the Hardware twisty and see for yourself.
Now click on the edit pencil icon to make further changes.
We can also add software bundles. Under the software bundles twisty there is a button to Add Bundle. Within this Edit environment you would normally add software bundles and configure the image ready for synchronization.
Step 4 - Synchronize to SCE
Click the synchronization button when ready.
you start the synchronization, a virtual image instance is created in SCE. Then the installation tasks of each bundle that you
specified are executed to install the required software.
Finally, the tool copies the configuration scripts from each bundle into
the virtual machine instance and adds them to the activation framework.
This is done to make sure that these scripts are called during subsequent image deployments.
Accept any license agreements and click Done
The status will change to synchronizing.
Checking SCE we can see that a new instance is being created:
The synchronization may take a while so be patient.
You can refresh the ICON screen or the SCE overview screen periodically to see how things are progressing. Eventually the instance on SCE will initialize and synchronization will complete as shown in the status :
At this point you could ssh into the instance as you would any other in the SCE environment if you wanted.
Step 5 - Capture the image to the SCE Asset Catalog for later reuse
When you're happy, you can capture the image back by clicking on the cloud/disk icon. This will capture our finished image ready for reuse later.
The Image status within the ICON tool is reflected to show the capturing of the image.
The image is captured and the instance is then stopped in SCE. The new captured image is stored in the SCE Asset Catalog. SCE will email you to let you know that the image has been Approved.
At the Control Panel>>Instances screen in SCE click on View Asset Catalog
. This will take you into the Rational Asset Manager. Select My Dashboard
and you will get a list of your assets. The new image will be in there.
Click on the image name.
From here you can click to start an Instance of your image. This will take you back to the SCE Control Panel. At that point you can select Add Instance. Alternatively, the image can be started from the Images tab. Simply select the image name and click Create Instance.
In this blog post we saw how to use SCE to create an ICON tool instance and use that tool to create a custom image that is stored in the Asset Manager for reuse.
ICON is a very powerful tool that allows you to create virtual images using a model-driven and easy-to-use approach. It is
designed to enable efficient reuse and management of virtual images and software
in a cloud environment. It provides the capability to build and share virtual images that are self-descriptive,
customizable, and easily managed.
When you combine this approach with IBM SmartCloud Enterprise it becomes even more powerful.