Installing Posit Package Manager on Multiple Servers
EnhancedAdvanced
This page includes instructions for downloading Posit professional products. Download and/or use of these products is governed under the terms of the Posit End User License Agreement. By downloading, you agree to the terms posted there.
These instructions describe how to install Posit Package Manager on multiple Linux servers for high availability (HA) and load balancing. For a single-server deployment, see the Linux server installation instructions. For an overview of all installation methods, see the Install Posit Professional Products overview.
Prerequisites
Before you begin, review the requirements and select the Multiple servers (HA) deployment type.
Install Package Manager on each server
Complete Steps 1 through 5 below on each Linux server in the cluster.
Step 1: Download and install
Download and install the server application:
Terminal
curl -1sLf \
'https://dl.posit.co/public/pro/setup.deb.sh' \
| sudo -E bash
sudo apt-get install rstudio-pm=2026.09.0
sudo apt-mark hold rstudio-pmTerminal
curl -1sLf \
'https://dl.posit.co/public/pro/setup.rpm.sh' \
| sudo -E bash
sudo dnf install rstudio-pm-2026.09.0
sudo dnf install 'dnf-command(versionlock)'
sudo dnf versionlock add rstudio-pmTerminal
curl -1sLf \
'https://dl.posit.co/public/pro/setup.rpm.sh' \
| sudo -E bash
sudo zypper refresh
sudo zypper install rstudio-pm=2026.09.0
sudo zypper addlock rstudio-pmThe package is held after installation to prevent unintended upgrades during routine system maintenance.
The setup scripts above should find exactly what you need to install. If you would like to look through all of the binaries, you can find them at Posit Package Repository.
These commands install the product into /opt/rstudio-pm. See the Manual Installation for Minimal Root Use section to install into a non-default location or to perform a non-root install.
Signed build
If you installed using the Posit Package Repository method recommended above, the GPG key is automatically imported when you run the setup script (setup.deb.sh or setup.rpm.sh). Package signatures are verified automatically during installation. No manual steps are required.
Step 2: Configure the server address
By default, Package Manager settings are controlled by a configuration file located at /etc/rstudio-pm/rstudio-pm.gcfg.
If Package Manager is served from a subdirectory like /packagemanager/, configure the Server.Address setting for some features to work, such as PyPI package serving and the Server API documentation. Server.Address is also required if you use OpenID Connect authentication.
Server.Address must be the public URL for this server in the format of http(s)://[HOST:PORT]. If Package Manager is deployed behind an HTTP proxy, provide the URL as seen by users through the proxy.
If Package Manager runs behind a load balancer or reverse proxy, forward the original request URL so that Package Manager returns fully qualified URLs to clients. See Running with a Proxy.
Otherwise, leave Server.Address unset.
/etc/rstudio-pm/rstudio-pm.gcfg
[Server]
Address = https://packagemanager.example.com/
; Or if served at a subdirectory like /packagemanager/
;Address = http://example.com:4242/packagemanager/Configure other options now or later, such as:
- The on-disk location where data is stored, default:
/var/lib/rstudio-pm. - The database where Package Manager stores essential metadata, default: built-in SQLite.
- Important security settings such as HTTPS certificates and ports; the default is HTTP on port 4242.
- High Availability and Load Balancing options.
An example configuration file that includes all the available configuration settings along with their defaults is installed at /etc/rstudio-pm/rstudio-pm.gcfg.defaults.
Step 3: Activate license
Run the following command to determine the status of your license:
Terminal
/opt/rstudio-pm/bin/license-manager statusIf you have a license file, then activate the license by transferring the license file to the server hosting Posit Package Manager, ensure ownership and read permissions for the PPM service user, and activate it with the commands:
Terminal
sudo chown rstudio-pm <license-file>.lic
sudo chmod 0600 <license-file>.lic
sudo cp -a <license-file>.lic /var/lib/rstudio-pm/
sudo systemctl restart rstudio-pmThe default Package Manager RunAs user is rstudio-pm. If you’ve configured a different RunAs user, ensure that user has file ownership.
Posit recommends using license file activation rather than license key activation. License files work well in all environments including ephemeral, container-based, or air-gapped environments. For all activation options, see License activation methods and the Licensing page of this guide.
Step 4: Restart Package Manager
After you update the configuration file and activate the license, restart the Package Manager service:
Most configuration setting changes can also be updated by taking the Package Manager service offline and bringing it back online. For more information, see the Online and Offline Modes page.
To restart the Package Manager service, run the following commands:
Terminal
sudo systemctl stop rstudio-pm
sudo systemctl start rstudio-pmPackage Manager supports the HUP signal when:
- Making licensing changes.
- Activating a new license.
Step 5: Verify installation
There are two ways to verify a successful Package Manager installation:
- View the Package Manager web UI.
- Use the admin command-line interface.
View the Package Manager web UI
The Package Manager web UI provides an interface for viewing information about packages, package READMEs, metrics, and more. See the User Guide for additional information.
To view Package Manager in a web browser:
- Open a web browser.
- Navigate to Package Manager by following
http(s)://packagemanager.example.com:<port>(the default port is 4242).
Once you navigate to the Package Manager URL, the Package Manager Welcome page displays. For any administrative changes, use the CLI.
The admin command-line interface
Use the Package Manager admin command-line interface (CLI) to:
- Create repositories and sources.
- Set up sync schedules for CRAN sources.
To invoke the Admin CLI, run: /opt/rstudio-pm/bin/rspm list
If you cannot access the Admin CLI, verify that your user is a member of the rstudio-pm group:
Run the following to add
USERto therstudio-pmgroup (replace<USER>with your username):Terminal
sudo usermod -aG rstudio-pm <USER>Close the terminal or SSH session.
Start a new session and run the
groupscommand. This enumerates the groups that the current user is a member of.Confirm that
rstudio-pmis listed.Run the command:
Terminal
/opt/rstudio-pm/bin/rspm list
To grant Admin CLI access to a different group, see the Changing RunAs User page.
Verify the deployment with VIP
For an automated end-to-end check, use Verified Installation of Posit (VIP), a non-destructive test suite that validates repository configuration, the CRAN, PyPI, Bioconductor, and Open VSX mirrors, and package access against a running deployment.
Install VIP on a machine that can reach the server. VIP requires uv:
Terminal
uv tool install posit-vip
vip installRun the verification against your deployment, replacing <product-url> with the URL of your Package Manager server. Package Manager serves packages without a login, so no authentication flag is required:
Terminal
vip verify --package-manager-url <product-url>After the run, vip verify reports pass or fail for each check in the terminal and writes the results to report/results.json. To render a shareable HTML report of the results, run vip report. This command requires the Quarto CLI:
Terminal
vip reportIf any checks fail, the report identifies the failing area to correct before users connect. VIP is an open-source project; see the VIP documentation for the full list of checks and configuration options.
Configure high availability and load balancing
After you install Package Manager on each server, follow the High Availability and Load Balancing page to configure the shared storage, the external database, and the load balancer.
Next steps
After the cluster is running, configure sources, repositories, and security on the Initial Configuration page.