Product Description
CloudBees Accelerator is a software build accelerator that dramatically reduces build times by distributing the build over a large cluster of inexpensive servers. Using a patented dependency-management system to identify and fix problems in real time that break traditional parallel builds, it plugs seamlessly into existing software development environments and includes web-based management and reporting tools.
CloudBees Accelerator includes the following components:
-
Electric Make® (eMake)
-
Electric File System (EFS)
-
CloudBees Accelerator agents (Agents)
-
Cluster Manager
-
Electrify
What’s New or Modified
Resolved Issues
-
(Linux platforms only) An issue causing agents on RHEL 7 to lose connection with the Cluster Manager was fixed. (EC-13972)
-
(Linux platforms only) An issue causing "Error mounting filesystem" errors and agents to go down was fixed. (EC-14076)
-
(Linux platforms only) An issue causing LOFS to report zero blocks with stat(2) on ext4 filesystems was fixed. (EC-14084)
-
(Linux platforms only) An issue preventing Android builds from properly propagating some environment variables (such as
DIST_DIR
) was fixed. (EC-14085) -
An issue preventing admins from adding users to groups in the Cluster Manager UI was fixed. (EC-14099)
Installation and Upgrade Notes
Version Enforcement in Cluster Manager Licensing
As of version 11.1, perpetual license files include a version field and are therefore no longer transferable to succeeding product versions. At run time, to be considered valid by the Cluster Manager, the license file must have a version that equals or exceeds the version of the Cluster Manager itself. Version checks consider only the major.minor version (for example, a license for 11.1 is valid for 11.1.0, 11.1.1, 11.1.2, and so on).
eMake authenticates with the Cluster Manager via the eMake/Cluster Manager protocol version to ensure that the eMake and Cluster Manager licenses match. If the license has no Version field, it will be considered invalid by the 11.1 Cluster Manager.
You can upgrade just the Cluster Manager, but starting with version 11.1, if you upgrade eMake or agents, you must also upgrade the Cluster Manager. When you upgrade the Cluster Manager, you must also acquire a new license if you are currently using a perpetual license.
You can upgrade to new patch releases (but not new feature releases) without acquiring a new license. For example, if your current license specifies 11.1, then you can use a Cluster Manager with version 11.1, 11.1.1, 11.1.2, and so on. Also, for example, if your license specifies 12.0, then you can use a Cluster Manager with version 12.0, 12.0.1, 12.0.2, and so on, as well as 11.x.
The Administration > Licenses page in the Cluster Manager web UI has a Version column, which provides the product version of each license in the list. This information is blank for a license with no explicit version (such as an evaluation license).
Make sure that you import a compliant license into the Cluster Manager before upgrading. For assistance, see https://support.cloudbees.com/. For details about importing a license, see Logging In and Enabling Licensing - Importing Your License. (EC-13170 and EC-13154)
Hardware Requirements
The recommended total amount of RAM for an agent host is 2 GB per agent plus the amount of RAM normally needed to execute your build. For example, if you are running four agents, and your build normally needs 16 GB, you will need ((2 * 4) + 16) = 24 GB.
Backing Up Before You Upgrade
-
The upgrade process does not preserve the existing files. Back up the
/opt/ecloud/<arch>/cloud
directory for Linux or theC:\ECloud\<arch>
folder for Windows to a safe location. -
For additional security, back up the database by following the recommended procedure from your database vendor.
Installing JDBC Drivers for MySQL or Oracle Databases
CloudBees no longer distributes the JDBC drivers for MySQL or Oracle databases. To use one of these databases, you must download its driver directly from the Oracle website, then copy it to the appropriate directory on the Cluster Manager server, and then restart the Cluster Manager service. For details, see the Installing JDBC Drivers for MySQL or Oracle Databases section in the CloudBees Accelerator Installation Guide.
Copying the execserver Executable to a New Location if You Relocate eMake
If you copy the emake executable to a new location, you must also copy the execserver
executable to that location. By default, the path to the execserver
executable is /opt/ecloud/i686_Linux/64/bin/execserver
.
Regenerating History Files After an Upgrade
The identifier that is used to find certain types of jobs in the eMake history file changed in version 8.0. After an upgrade from version 7.2.2 or older versions to version 8.0 or newer versions, users should regenerate their history files by running their first build with the --emake-history=create
option to avoid unnecessary serializations. This build might have more conflicts than normal (but subsequent builds should return to normal).
Concurrent Build Licensing
As of version 9.1, for new CloudBees Accelerator subscription licenses, the number of builds that you can run concurrently is license-limited. The noLicenseWaitTime
performance metric indicates the amount of time that a build spent waiting for a concurrent build license because the number of concurrent builds reached the license limit. Also, as of version 9.1, JobCache is not separately licensed and is now included with the concurrent build license.
Customers using pre-9.1 CloudBees Accelerator licenses may continue to use those licenses, including the licenses for the JobCache add-on.
For details about licensing for concurrent builds, see Logging In and Enabling Licensing. (EC-12095)
Known Issues
Linux Kernel Issue That Affects CloudBees Accelerator Performance
Affected Kernel Versions
This applies to RHEL kernel versions later than 2.6.18-194.32 and earlier than 2.6.32-131.
Symptoms
Affected systems might encounter reduced performance on both ext3 and ext4 file systems. Symptoms might include
-
hung_task_timeout_secs
messages in system dmesg logs -
Widely variable agent availability (entering and exiting agent “penalty” status frequently)
-
Contention over the
ecagent.state
file -
Slower builds (with unexplained variances)
To help determine if this issue exists, run the dmesg | grep hung_task_timeout
command. hung_task_timeout errors
show that this issue is present. Contact your kernel provider for another version of the precompiled kernel.
Other Known Issues
-
(Ubuntu 18.04 only) Installation of the Electric File System (EFS) driver from the Agent/EFS installer might fail with the following errors:
Installing Linux LOFS… EFS installation error : Building new kernel module for 5.0.0-1025-gcp
andInstalling Linux LOFS… EFS installation error : Building new kernel module for 4.15.0-29-generic
. (The full CloudBees Accelerator installer is unaffected.) (EC-13653) -
If you kill a build manually, and the agents running on an Amazon EC2 instance fail to connect, the instance will continue to run. You must kill the instance manually.
-
If the Cluster Manager goes down while agents are running on an Amazon EC2 instance, they will still connect but will not be associated with a resource. You must kill the corresponding instance manually.
-
The cmtool
importData
command does not import license properties (such asmaxAgents
). To work around this issue, re-import the license after usingimportData
. (EC-12371) -
You cannot control breakpoints from the Cluster Manager. (EC-12322)
-
Apache might fail to start properly after a new Cluster Manager installation. To work around this issue, reboot the system.
Documentation
Product documentation
CloudBees Accelerator documentation is available on the CloudBees Accelerator product documentation page.
Documentation on the website is updated periodically.
Cluster Manager Online Help and Tooltips
Built into the Cluster Manager are
-
A complete, robust, context-sensitive online help system (click the Help button in any page of the Cluster Manager web UI). See the CloudBees Accelerator product documentation page for the latest updates to this information.
-
Tooltips with information to help fill in form fields.
Troubleshooting and Getting Help
Contacting CloudBees Support
To contact CloudBees Support, go to https://support.cloudbees.com/, and then click Submit a request to submit or see your support tickets.
Be prepared to provide your:
-
Name, title, company name, phone number, and email address
-
Operating system and version number
-
Product name and release version
-
Problem description
CloudBees Accelerator Knowledge Base
Go to https://support.cloudbees.com/hc/en-us/sections/360006494811 to find in-depth explanations of specific topics and solutions for specific problems.