Issue
- Jenkins notifies that a new version is available but how can I upgrade my cluster
- How to upgrade CJE Operations Center
- How to upgrade CJE Managed Master(s)
Environment
- CloudBees Jenkins Enterprise
- CloudBees Jenkins Enterprise - Managed Master (CJE-MM)
- CloudBees Jenkins Enterprise - Operations Center (CJE-OC)
Resolution
The proper way to upgrade CJE if to upgrade the CJE CLI. This will automatically upgrade the components of your cluster.
A. Before Upgrading
Take Backups
Ensuring you have regular backups of your JENKINS_HOME
for your Operations Center, and all Masters, we recommend following the Backup and Restore guide. The backups should be stored on separate hardware from your Jenkins master, at a minimum, even better would be an offsite location such as cloud storage.
We also want to take another backup immediately before you start the upgrade.
Testing that these backups are valid is also critical, as if the backup is not valid, and we encounter a severe issue during the production upgrade, the way to recover from the failure is to restore from the backup you took immediately prior to the upgrade. A great way to test the validity of these backups is with a Test environment.
Upgrade Warnings
The upgrade notification in Jenkins is shown in the UI via an administrative monitor:
It can also be seen under Manage Jenkins. At the time of the article (CJE 1.6.3), this message guides the users to a broken link and should be ignored. The upgrade path for CJE is via the CJE CLI.
IMPORTANT: CJE release must be supported see CloudBees maintenance lifecycle
Check the impact of the changes
a. Read the CloudBees Release Notes for all the product versions from the current version [Origin] to the version you are targeting to upgrade to [Destination] (including theirs revisions) in order to understand New Features and Known and Resolved issues fixed. Besides, there is other valuable information into tabs:
INFO
: Release Date and Jenkins LTS is based on.Security Advisories
: Security Advisories Security features may result in deliberate changes to the behavior of core or certain plugins. So, additional configuration is needed according to Security Advisories](https://www.cloudbees.com/jenkins/security-advisories) e.g. adding a new Java Argument.
It is important to highlight that Managed Master (CJE-MM) and Operations Center (CJE-OC) Release Notes are at the bottom of CloudBees Jenkins Enterprise for a specific version. There, you will find details about Plugins
and their Tiers.
For this task, use the CloudBees Comparing Version Web tool which lists changes from [Origin] to [Destination]: Baseline and Plugins.
- CJE-MM -
https://release-notes.cloudbees.com/compare/118/[Origin]...[Destination]
- CJE-OC -
https://release-notes.cloudbees.com/compare/119/[Origin]...[Destination]
b. Read attentively all Jenkins LTS Upgrade Guide.
c. If you are upgrading Pipeline plugin, you might be facing some incompatibilities due to recent changes on this plugin. You can check those changes on the Wiki of this plugin.
B. Upgrade
Upgrading CloudBees Jenkins Enterprise consists of the following steps:
1) Download a new CloudBees Jenkins Enterprise release
2) Install the new release locally (extract the downloaded archive and the bin directory to the $PATH
):
$ cd ~
$ tar zxvf pse_1.6.1_linux_amd64.tar.gz
$ export PATH=~/pse_1.6.1/bin:$PATH
3) Upgrade the CloudBees Jenkins Enterprise project by running the following under the CloudBees Jenkins Enterprise project:
$ cje upgrade-project
Note: In most cases this command will be a no-op.
4) Upgrade CloudBees Jenkins Enterprise components:
$ cje upgrade
Cluster components will be temporarily unavailable during the procedure.
Note: The steps to upgrade CJE are described in the CLI reference
Upgrade Managed Masters
Once CloudBees Jenkins Enterprise has been upgraded, you should see that a new version of the docker image is available for your Managed Master(s):
Per-Master Upgrade
To upgrade your Managed Master:
1) Stop the Managed Master:
You will have the option to Wait for jobs completion or Force the shutdown:
2) Change the docker image in the Managed Master configuration and save:
3) Start the Managed Master:
Note: The steps to upgrade a Managed Master are described in Operating CloudBees Jenkins Enterprise - Upgrading Managed Masters
Bulk Upgrade
To upgrade multiple Managed Masters:
1) Create a Cluster operation
2) Choose which masters to target. Use the filter Uses Docker Image and pick the current version:
3) Add a Update Docker Image step with the new version and a Reprovision step:
4) Launch the cluster operation to start the upgrade
Note: The steps to bulk upgrade Managed Masters are described in Operating CloudBees Jenkins Enterprise - Bulk-upgrading Managed Masters
C. After Upgrading
Review articles in our Best Practices section.
1 Comments