Cloud Management Platform Overview

GCP and CloudBolt

Self-Service Dev/Test Environments with Google Cloud Platform and CloudBolt

Empowering developers to order and manage their own servers can massively improve productivity and employee satisfaction. IT shops providing self-service via GCE and CloudBolt have observed declines in shadow IT and VM sprawl, decreases in IT spending, and increases in predictability and security.

The following six steps will give you the self-service dev and test environments you’ve always wanted:

1. Install CloudBolt

This can be done one of two ways:

  1. Download and install the CloudBolt .ova in your own environment
    — OR —
  2. Install CloudBolt via GCP Launcher
Please Note: CloudBolt ships with self-signed certificates that are not trusted by your users’ web browsers unless they make an exception to trust the certificate. However, you can configure CloudBolt to use trusted certificates that you’ve issued. More information is available in the CloudBolt documentation.

2. Complete the CloudBolt Quick Setup

In steps three and four of the Quick Setup wizard, select GCE and provide the required info. After this, CB will discover the zones, images, and subnets in your GCE account and allow you to select which of these to import.

Upon completion of the wizard, CB will begin discovering all the VMs in the zones you selected.

3. Customize the Order Form & Process

CloudBolt’s order form for servers can be customized per group and environment. To get started, navigate to Admin > Environments > select an environment > GCE Parameters tab. Click on the pencil on the right of the Node Size row and limit the options to just a few sizes.

You can also configure a hostname template to enforce your hostname policy. To do this, click on the Parameters tab of the environment, add the “Hostname Template” parameter, and provide a single option of “{{|first|lower}}svr-00X”. This will generate names like rsvr-001 (for a RedHat VM) or wsvr-001 (for a Windows VM).

Click on Servers > New Server to see how your changes affect the order form and ensure that servers are built as expected.

4. Establish Guardrails

Make the developers specify expiration dates for their servers. Still on the Parameters tab of the environment from the previous step, add the Expiration Date parameter, and optionally constrain it to a maximum number of days. At this point, the expiration date will appear on the order form. Now you can specify the expiration behavior from Admin > Orchestration Actions > Expire. You can click the Enable/Disable toggle switch on each action, or provide your own custom action to be run upon expiration.

Set quotas for groups in CloudBolt. Click Groups in the navigation bar > select a group > Quotas tab > Edit quota limits. Users will not be allowed to submit orders that exceed the quota for their group.

5. Give Developers Access

To enable developers to start ordering & managing instances, they will need accounts in CloudBolt. These can be created either by:

  1. Adding local user accounts from Admin > Users — OR–
  2. Connecting CloudBolt to your Active Directory/LDAP source from Admin > LDAP Authentication Settings

After user accounts are created, the users can be added to one or more groups, and they can begin ordering servers in CloudBolt.

6. Level up your Dev/Test Environments

Now that you have a self-service dev/test environment available in GCE using CloudBolt, there are many ways to make it even more powerful:

  1. Add your local virtualization systems to CloudBolt to give your shop a single pane of glass for hybrid cloud management.
  2. Provide your users with more complex builds by adding blueprints to the service catalog.
  3. Extend CloudBolt’s base capabilities with CloudBolt actions.
  4. Have CloudBolt leverage your existing automation systems via CloudBolt’s configuration manager integration.
  5. Enforce your policies with CloudBolt’s rules engine.
  6. Ensure your environments are healthy and capable of server builds with CB’s Continuous Infrastructure Testing.
  7. Begin reporting on which users and groups are using different environments.