Shared cloud configuration

3 minute read

Operations Center enables the sharing of cloud configuration across the masters in the Operations Center cluster.

The sharing model used for shared cloud configuration is similar to the shared configuration propagation.

Unlike shared clouds or shared agents, shared cloud configuration replicates the configuration of the cloud provider to the specified masters such that each master has separate control of the cloud rather than leasing agents from the Operations Center server.

Supported cloud providers

Other clouds may be available in future software upgrades.

The shared cloud configuration is licensed individually for each cloud type.

Limitations

  1. The plugin defining the configuration must be installed on the masters within scope for using

  2. The plugin versions on the master(s) and the Operations Center server must be compatible in terms of configuration data model.

Violations of the requirements above may have a serious impact on cloud provisioners on masters. The service administrators should ensure

Shared configuration setup

Shared configurations should be created as Jenkins items like masters, folders and templates using the New Item action on the left hand menu in Operations Center. Items can be created at the root of the instance or within a folder.

  • If you create in the root of Operations Center, the cloud will be available to all masters

  • If you create a shared cloud configuration item in a folder, the cloud will be available only to masters within the folder or within the folder’s sub-folders.

Step 1. Create a new configuration item

  1. Click on the "New Item" action in Jenkins root or a folder. In both cases you will be presented with the standard new item screen.

  2. Provide a configuration name

  3. Select the Cloud Configuration type that you wish to create.

  4. Click on OK button. A new configuration window will appear

Figure 1. New item screen

Step 2. Enter the required configuration for the selected cloud

Options are similar to the standard Jenkins cloud configuration options.

if a cloud provider requires configuration of native tools or libraries then this location must be the same on all masters that receive this configuration in order to operate correctly

Step 3. Apply changes

When the shared cloud configuration is complete save or apply the configuration.

The cloud configuration will be pushed to all online masters that have not opted out. of receiving shared configuration. If a master is offline, the new configuration will be applied when this master connects to Operations Center.

Supported configurations

Below you can find configuration examples for the supported clouds.

As mentioned earlier, prior to configuring a shared-cloud ensure that the plugin defining the launcher is installed on all the masters within scope for using the shared cloud.

Amazon Elastic Compute Cloud (EC2)

This Shared cloud configuration allows you to share settings for Amazon EC2 cloud, which is the part of Amazon Web Services platform (AWS).

Please refer to the Amazon EC2 plugin Wiki page to find setup guidelines and information about supported configurations. This section describes the Operations Center specifics only.

The following apply to both CloudBees CI on modern cloud platforms and CloudBees CI on traditional platforms:

  • Instance caps are being managed individually for each master, there is no global limitation for the entire Operations Center cluster.

  • If you use Access Key ID and Secret Access Key to define EC2 credentials, these credentials will be shared across all CloudBees CI instances. EC2 must allow multiple logins from different places if you have multiple masters.

The following apply to CloudBees CI on traditional platforms only:name: value

  • If all target CloudBees CI instances are running on EC2 instances, you can use EC2 instance profile to obtain credentials from the instance’s metadata.

  • Currently there is no opportunity to set up different Regions for CloudBees CI instances in AWS EC2 Shared Cloud Configuration. In such cases, use individual setups of EC2 Cloud on each master.

Figure 2. AWS EC2 shared cloud configuration setup

Testing the configuration

  • If you click on the Test Connection button in the configuration, the test will be launched on Operations Center. Make sure that the AWS EC2 cloud is available to Operations Center.

  • If the instance is configured to obtain credentials from EC2 instance profile, Operations Center must be running on a properly configured Amazon Machine Image

  • You can also test the connection from one of Jenkins masters when the configuration gets synchronized. It’s highly recommended if your AWS EC2 Shared Cloud Configuration uses EC2 instance profile to obtain credentials