Upgrade Bitbucket Data Center

Still need help?

The Atlassian Community is here for you.

Ask the community

This page contains instructions for upgrading an existing Bitbucket cluster to the next major or minor version. Upgrading to either version type will incur downtime. 

If you are not running Bitbucket in a cluster, follow the instructions in Bitbucket Server upgrade guide.

Upgrading to any later version is free if you have current software maintenance. See our Licensing FAQ to find out more.

If you deployed Bitbucket Data Center on AWS using our AWS Quick Starts, refer to the Upgrading section of Administering Bitbucket Data Center in AWS instead.

On this page:

Plan your upgrade

1. Determine your upgrade path

Check the Supported platforms page to determine if your environment meets the minimum requirements to run the latest version of Bitbucket. Also read the End of support announcements for Bitbucket Server

You can update from any previous version of Bitbucket Server (or Stash) to the latest version, as there is no required upgrade path.

Bitbucket 7 is a major upgrade

Be sure to read the Bitbucket Server 7.0 release notes, take a full backup, and test your upgrade in a non-production environment before upgrading your production site.

Upgrading from a version older than Bitbucket 7 disables all user-installed apps on startup

Be sure to update your own apps and check the Atlassian Marketplace to ensure 3rd-party apps are compatible with Bitbucket Server 7 before upgrading.

tip/resting Created with Sketch.

Upgrading to the next bug fix update

If you are upgrading a multi-node Bitbucket cluster to the next bug fix update (for example, from 7.9.0 to 7.9.4), you can upgrade with no downtime.

2. Complete pre-upgrade checks

  1. Check the Version specific upgrade notes for the version you plan to upgrade to (and any in between).
  2. Go to  > Support Tools, then review the Log analyzer for any issues that may need to be resolved.
  3. Check the compatibility of your apps with the version you plan to upgrade to.

    1. Go to  > Manage apps > Bitbucket update check.
    2. Choose the version you plan to upgrade to then hit Check.

      If you have incompatible apps

      If your users rely on particular apps, you may want to wait until they are compatible before upgrading Bitbucket. App vendors generally update their apps very soon after a major release.

      Good to know:

      • Upgrading from a version older than Bitbucket Server 6 will automatically disable all user-installed apps. You will need to enable your apps after successfully upgrading, regardless of compatibility with Bitbucket Server 6.
      • You can disable an app temporarily if it is not yet compatible. 

3. Upgrade Bitbucket in a test environment

  1. Create a staging copy of your current production environment.
  2. Follow the steps below to upgrade your test environment.
  3. Test any unsupported apps, customizations and proxy configuration (if possible) before upgrading your production environment.

Upgrade Bitbucket Data Center

1. Back up your data

  1. Determine which backup strategy to use. 

    Summary of the different backup strategies for Bitbucket...

    For Bitbucket Server (version 4.8 or later) instances, you can use Zero Downtime Backup, the Backup Client (version 2.7 or later), or DIY Backup (version 2.12 or later) while Bitbucket is running, or just stop Bitbucket and zip up / snapshot the home directory and database and keep them somewhere safe.

    For Bitbucket Data Center (version 4.8 or later) instances, you can use Zero Downtime BackupDIY Backup, or take snapshots of the shared home directory (on NFS) and database while all nodes are stopped. 

    For Bitbucket mirrors, the home directory doesn't store any persistent state that can't be reconstructed from the primary Bitbucket instance, but you should still make sure you have a backup of at least the important configuration files such as SSL certificate, server.xml,  config/ssh-server-keys.pem,  bitbucket.properties file, and so on in a safe place. See  How do I back up my mirrors? for more information.


    See the article Data recovery and backups for detailed information and guidance on creating an effective backup strategy.

  2. Back up all the data in your Bitbucket home directory and external database.

2. Migrate customizations

Bitbucket 5.0 changed where custom server configurations are kept. Previously, Tomcat container customizations were made in the server.xml file, located in either the <Bitbucket home directory>/shared directory (from 3.8 to 4.14), or in <Stash installation directory>/conf (for 3.7 and earlier). 

  1. First, determine if you've made customizations to your server.xml file. You would have made these changes if you modified the portcontext path, or the Proxying and securing Bitbucket Server, or if you are running Bitbucket Server behind a proxy and modified the Connector element.

  2. Migrate changes in the bitbucket.properties file in your existing Bitbucket home directory. The bitbucket.properites file uses a slightly different syntax, so it is not merely a copy and paste procedure.
    Read the page Migrate customizations from server.xml to bitbucket.properties and follow the instructions to migrate your customizations. 

    For custom configurations in Bitbucket Data Center...

    Bitbucket Data Center instances on version 3.8 or later, the single server.xml file in the <Bitbucket home directory>/shared directory replaces all the copies of server.xml located in the <Bitbucket installation directory>/conf directories of the cluster nodes using previous versions of Bitbucket Server (or Stash).

3. Stop the cluster

You must stop all the nodes in the cluster before upgrading. For more info, see Starting and stopping Bitbucket.

We recommend configuring your load balancer to redirect traffic away from Bitbucket until the upgrade is complete on all nodes.

4. Download Bitbucket

Download the appropriate file for your operating system - https://www.atlassian.com/software/bitbucket/download-archives.

5. Upgrade the first node

To upgrade the first node:

  1. Extract (unzip) the files to a directory (this will be your new installation directory, and must be different to your existing installation directory)

  2. Update the value of BITBUCKET_HOME in the <Installation-directory>/bin/set-bitbucket-home.sh file so the new Bitbucket installation points to your existing Bitbucket home directory.

    If you use a BITBUCKET_HOME environment variable to specify the home directory location, no change is required

  3. Copy any other immediately required customizations from the old version to the new one (for example if you are not running Bitbucket on the default ports or if you manage users externally, you'll need to update / copy the relevant files)

    If you configured Bitbucket to run as a Linux service, don't forget to update its service configuration as well. Learn more about running Bitbucket as a Linux service.

  4. Start Bitbucket on the node. Learn more about starting Bitbucket

6. Copy Bitbucket to remaining nodes

The next step is to replicate your upgraded Bitbucket directories to other nodes in the cluster.  

  1. Stop Bitbucket on the first node.

  2. Copy the installation directory and local home directory from the first node to the next node. 
    If the path to the local home directory is different on this node, edit the /bin/set-bitbucket-home.sh (or set-bitbucket-home.bat on Windows) to point to the correct location. 

  3. Start Bitbucket, and confirm that everything works as expected.

  4. Stop Bitbucket on this node before continuing with the next node. 

Repeat this process for each remaining node. 

7. Start Bitbucket and check cluster connectivity 

Once all nodes have been upgraded you can start Bitbucket Data Center on each node, one at a time (starting up multiple nodes simultaneously can lead to serious failures).

The Cluster monitoring console (AdministrationSettings > Clustering) includes information about the active cluster nodes. When the cluster is running properly, you should be able to see the details of each node. 

Last modified on Feb 2, 2021

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.