Table of contents

CloudBees Jenkins Operations Center administration guide


Shared cloud configuration

Operations Center enables the sharing of cloud configuration across the client 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 client masters such that each client 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.

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

Limitations

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

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

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

Shared configuration setup

Shared configurations should be created as Jenkins items like client masters, folders and templates using the New Item action on the left hand menu in CloudBees Jenkins 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 client masters

  • If you create a shared cloud configuration item in a folder, the cloud will be available only to client masters within the folder or within the folders 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

new item screen
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.

Note
if a cloud provider requires configuration of native tools or libraries then this location must be the same on all client 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 client masters that have not opted out of receiving shared configuration. If a client 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.

Note

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

Docker shared cloud configuration

Please refer to the Docker plugin’s Wiki page to find setup guidelines and info about supported configurations. This section describes the Operations Center specifics only.

  • Container caps are being managed individually for each client master, there is no global limitations of the containers number

  • Current Docker Plugin version supports TLS connection options via environment variables only. These environment variables are not being distributed to client masters by Docker Shared Cloud Configuration. These environment variables should be set up on client masters using other Jenkins features

docker configuration screen
Figure 2. Docker Shared Cloud Configuration screen
Testing the configuration
  • If you click on the Test Connection button in the configuration, the test will be performed on CJOC. Make sure that the remote Docker host is available to CJOC

  • You can also test the connection from one of Jenkins client masters when the configuration gets synchronized

Amazon Elastic Compute Cloud (EC2)

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

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

  • Instance caps are being managed individually for each client 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 Core instances. EC2 must allow multiple logins from different places if have multiple client masters

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

  • Currently there is no opportunity to setup different Regions for CloudBees Core instances in AWS EC2 Shared Cloud Configuration. In such case use individual setups of EC2 Cloud on each master

ec2 top configuration
Figure 3. AWS EC2 shared cloud configuration setup
ec2 ami configuration
Figure 4. Amazon Machine Image (AMI) setup in AWS EC2 Shared Cloud Configuration
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 client masters when the configuration gets synchronized. It’s highly recommended if your AWS EC2 Shared Cloud Configuration uses EC2 instance profile to obtain credentials

Microsoft Azure Cloud

This Shared cloud configuration allows sharing of settings for Microsoft Azure cloud.

Please refer to Azure Slave plugin’s Wiki page to find setup guidelines and info about supported configurations.This section describes the Operations Center specifics only.

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

  • The PublishSettings (Microsoft Azure Subscription Manifest) credentials will be shared across all CloudBees Core instances.

azure configuration
Figure 5. Microsoft Azure Shared Cloud Configuration setup
Testing the configuration
  • A test will be launched on Operations Center when you click on the Verify Template button in the configuration

  • You can also test the connection from one of Jenkins client masters when the configuration gets synchronized.