Upgrade
These instructions describe the configuration requirements and how to upgrade Posit Workbench from a supported product version to the latest version.
- We recommend that you upgrade to the latest version of Workbench. Please review the Release Notes prior to performing an upgrade.
- These upgrade procedures are not incremental, however, if you must upgrade to a previous supported version of Workbench, select your desired version below to verify that you are not using any deprecated configurations.
To upgrade from Open Source to Workbench, follow the procedures available in the Upgrading from Open Source to Workbench section.
Upgrade requirements
These instructions only cover upgrading Posit Workbench on the same server and between supported versions. If you are planning on changing servers or you are upgrading from an older unsupported version, please see the How to Upgrade and/or Migrate Posit Team guide.
The following document covers adjustments that may need to be made to your configuration due to breaking changes between versions. To use this document, select the version you are currently on, or start at the oldest version that is newer than your version from the list below, and then follow the instructions until the end of the page:
Workbench 2023.09 temporarily removed support for using an encrypted password in database.conf
for PostgreSQL. 2023.09.1 added support SSL certificate authentication for database connections. In 2023.12 database password encryption has been restored. Both mechanisms are now supported.
There are also some optional recommended configuration changes for Workbench 2023.09+:
Increase Server Thread Pool Size
For servers that manage sessions for more than a few users, set www-thread-pool-size=8
in rserver.conf
. The default value of 2
can reduce performance when the server is handling lots of requests at the same time.
Launcher Session Clusters
The following configuration settings have been deprecated from the vscode.conf
and jupyter.conf
configuration files:
session-clusters
default-session-clusters
In previous versions of Posit Workbench, the following settings in rserver.conf
exclusively applied to RStudio Pro Sessions, but will now apply to all sessions:
launcher-sessions-clusters
launcher-adhoc-clusters
launcher-default-cluster
When set, the VS Code and Jupyter session specific cluster configurations will continue to apply to those sessions, but we recommend updating your configuration to use the global settings instead.
Load Balancing
A new configuration option, load-balancing-enabled
, was added to rserver.conf
. When set to 0
, this option disables load-balancing. When set to 1
, load-balancing is enabled even without the presence of the load-balancer
configuration file. If the option is not set, and the load-balancer
configuration file is present, Workbench will enable load-balancing as in previous releases.
The option delete-node-on-exit
was added to the load-balancer
configuration file. If you are deploying a load-balanced configuration of Workbench in Kubernetes, we recommend setting this option to 1
. This removes the Workbench server’s database entry on shutdown so that stale node entries are not left in the database.
Continue to the Upgrade Procedures section below.
Due to the upcoming end of support for CentOS 7 in June 2024, CentOS 7 builds are no longer available for public download. If you have any questions, please contact Posit Support.
Posit Workbench Code Server
Posit Workbench now uses Posit Workbench Code Server (PWB Code Server) to launch VS Code sessions. This is an implementation of Microsoft’s Visual Studio Code - Open Source repository built by Posit. When upgrading from an earlier version, follow the Migration steps for PWB Code Server.
Automatic User Provisioning NSS
If upgrading from Workbench 2024.04.x with automatic user provisioning enabled: the server-address
setting in workbench-nss.conf
should be updated to unix:/var/run/rstudio-server/rstudio-rserver/user-service.socket
to fix a performance and reliability issue. See User Provisioning Configuration in the Workbench Admin Guide for more information.
If running Workbench behind a proxy server, you may need to update your NO_PROXY
configuration: - HTTP Proxy variables are now supported in rserver and rsession, so it’s important to include local addresses to Job Launcher sessions and other internal services in your NO_PROXY
list. - See the Outgoing Proxies section of the Posit Workbench Administration Guide for more information. (rstudio-pro#5893)
Upgrade Procedures
Notify users ahead of time of the upgrade. You can use the admin notification feature.
Check if there are any active sessions running:
sudo rstudio-server active-sessions
If there are active sessions, then suspend all active user sessions:
sudo rstudio-server suspend-all
Put the old version of the server into offline mode:
sudo rstudio-server offline
Download and upgrade Workbench:
curl -O https://download2.rstudio.org/server/rhel9/x86_64/rstudio-workbench-rhel-2024.12.0-x86_64.rpm
sudo yum install rstudio-workbench-rhel-2024.12.0-x86_64.rpm
curl -O https://download2.rstudio.org/server/rhel8/x86_64/rstudio-workbench-rhel-2024.12.0-x86_64.rpm
sudo yum install rstudio-workbench-rhel-2024.12.0-x86_64.rpm
curl -O https://download2.rstudio.org/server/focal/amd64/rstudio-workbench-2024.12.0-amd64.deb
sudo apt-get install ./rstudio-workbench-2024.12.0-amd64.deb
curl -O https://download2.rstudio.org/server/jammy/amd64/rstudio-workbench-2024.12.0-amd64.deb
sudo apt-get install ./rstudio-workbench-2024.12.0-amd64.deb
curl -O https://download2.rstudio.org/server/opensuse15/x86_64/rstudio-workbench-2024.12.0-x86_64.rpm
sudo zypper install rstudio-workbench-2024.12.0-x86_64.rpm
For older versions of RStudio/Workbench, please review the Previous Versions page.
Restart the server:
sudo rstudio-server restart
Put the new version online:
sudo rstudio-server online
The service will never be truly down (in the sense that users see a failure to connect). The offline mode keeps users from trying to start new sessions while you’re doing the upgrade.
Your configuration and settings remain unchanged from the previous version, and if you are running Workbench, your license status remains untouched as well.