Creating a Custom Image

Custom CloudyCluster Image Creation

** NOTE:There are 2 different methods documented here. #2 is available for users who are using an automated image creation process.**

To customize your CloudyCluster Image, complete the following steps
  1. Navigate to the launch configuration from the GCP marketplace
  2. Subscribe to CloudyCluster in the GCP Marketplace
  3. Click Launch
    Custom Image Checkbox

This process enables you to create a custom CloudyCluster Image with additional software or libraries that you need.

Before you create a custom image its best to run CloudyCluster once and run a sample job to see how it all works. You can do this by following this Sample Job Tutorial
Image Creation

Follow the steps below to customize the image to your specific needs.

NOTE: Creating a Custom Image requires that you prevent the CloudyCluster software from starting.

This can be accomplished via one of two methods through the Marketplace or directly with the image:

  1. Starting with the marketplace image you can select Create a custom CloudyCluster Image
  2. Complete all of the required fields
  3. Click Deploy
    Custom Image Checkbox

Proceed to the GCP Console, and when your instance is ready and in the status of running, you can SSH into the VM and install the software you need.

Prior to saving the image, follow the steps below in the section Finalizing under Saving the Image.

or

  1. From the GCP Console hamburger menu, choose Compute then Images. From the list select the CloudyCluster image that will become the basis for your customized image, check the box next to its name. Then from the top navigation, click Create Instance. In the Create an instance form, provide the names and parameters for the VM and then near the bottom of the form, click the drop down section labeled: “Management, security, disks, networking, sole tenancy”
    Access Advaced Features
    In the Create an Instance form, in the Automation section: Include the following in Startup script to disable the startup sequence: '{"lookupTableName": "delete"}' > /opt/CloudyCluster/var/dbName.json
    Startup script

When all other settings are completed, click Create to launch the VM instance.

Add desired software and or package configurations - then proceed to the next steps.

Finalizing

Prior to finalizing and saving/creating the image, to allow the CloudyCluster services to run you will need to delete the file created earlier to allow the image to launch normally: rm /opt/CloudyCluster/var/dbName.json

Saving the Image

In order to save the newly customized image, first stop the instance. After it is stopped, click on the instance name in the list of your VMs. Inside the Instance Details, scroll down to the Boot disk

Service Account & Firewall Reminder
Click the Boot disk image name and then you’ll be able to click the Create Image icon.
Create Image
Create Image
Save Image
To use the newly created custom image you can launch it from the Console GCP (not from Marketplace).

Click Images from the Compute menu. In the Boot Disk section of the Create Instance detail page options, select the Custom Images tab, then the saved images within your Project will be listed; select your newly created image and then click Create the Instance.

Service Account & Firewall Reminder
As an alternative launching method you can also go to the Compute, VM Instances dashboard and click Create Instance. From the form, in the Boot Disk section, select your image, as noted above.

NOTE: Be sure to use the appropriate Service Account and check both HTTP/HTTPS:

Service Account and Firewall Reminder

Automate The Process

If you want to automate the process of adding software to the release CloudyCluster AMIs, you can use the builderdash project. The Builderdash project was created to provided a build system, that we use internally to build CloudyCluster releases. It is open sourced so the same methodology can be used to add Software to the Image. The project is available on Github.