Overview
Posit (formerly RStudio) professional server products run on modern Linux operating systems and web browsers as described in platform support. Using Posit professional products typically requires the following:
- The R programming language and access to an R package repository are required for Workbench, Package Manager, and versions of Posit Connect prior to version 2022.09.0.*
- Privileges for installing and running
- Configuration to a user authentication scheme
*As of version 2022.09.0, although R is still a recommended installation, R is no longer a required prerequisite for installing RStudio/Posit Connect.
Configurations that load balance across two or more nodes have additional requirements. Detailed instructions for getting started with Posit professional products can be found at https://docs.posit.co/.
Privileges and Root Requirements
Posit's professional products are designed to run R and Python code safely. The products take advantage of sandboxing and user impersonation. The full details of Posit Team's privilege requirements are outlined here.
Posit Team Product Requirements
Posit Team is a bundle of Posit professional products for doing statistical data-analysis, sharing data products, and managing packages.
Posit Workbench |
Posit Connect |
Posit Package Manager |
|
Environment | |||
Linux operating system | ● | ● | ● |
Web browser | ● | ● | ● |
R programming language | ● | ○(3) | ○ |
R package repository | ● | ○(3) | ○ |
Internet access | ○ | ○ |
○ |
Python | ○ | ○ |
○ |
User authentication | |||
PAM / LDAP / AD / OAuth / Proxied Auth / SAML | ● | ● | |
User provisioning | |||
Local accounts | ● | ○ | |
Load balancing (optional) | |||
External load balancer (1) | ● | ● | |
Shared storage (2) | ● | ● | ● |
Shared home (2) | ● | ||
PostgreSQL database | ● | ● | ● |
● Required ○ Recommended
(1) Sticky sessions are required for load balancing Posit Connect
(2) NFS is recommended
(3) As of version 2022.09.0, although R is still a recommended installation, R is no longer a required prerequisite for installing RStudio/Posit Connect. Prior versions still require R to be installed.
Shiny Server Pro Requirements
Shiny Server Pro has the same requirements as Posit Connect, except it does not require a PostgreSQL database for load balancing. Shiny Server Pro lacks the complete feature set that Posit Connect provides, and notably does not have support for convenient push-button publishing. If you are deciding which product to use with Shiny, see What is the difference between Posit Connect, Shiny Server Pro, and Shinyapps.io?
Details
Linux operating system
Posit professional server products run on specific Linux distributions as described in platform support. Posit makes R binaries and R package binaries available for free; however, if you need to compile R and R packages from source you will also need a C++11 compiler.
Web browser
Posit professional server products are accessed via modern web browsers as described in platform support.
R programming language
The general policy for R version support is to support the current version, the devel version, and four previous versions of R. We recommend running multiple versions of R side by side and upgrading R yearly. Posit distributes R binaries for a wide range of Linux distributions. For instructions on installing R on Linux see docs.posit.co.
R package repository
R packages are updated frequently, so users will need access to multiple versions of packages over time. You should adopt a package management strategy as described in environments.rstudio.com. At a minimum, Posit products — including Connect — must be able to install packages from a repository using install.packages
. We recommend using Posit's online package manager for free, or purchasing Posit Package Manager for use behind your firewall.
Internet access
System access to the Internet is useful for downloading new versions of R, installing R packages, and updating system dependencies. If you are working in an air gapped environment, we strongly recommend using Package Manager. Package Manager communicates with an Posit CRAN service to access CRAN packages and metadata. In offline environments, it is possible to directly download the necessary data from the Posit CRAN service and then copy it to an offline Posit Package Manager server.
Configuring a user authentication scheme
Posit professional server products (with the exception of Package Manager, which does not require authentication) are configurable with PAM, LDAP, Active Directory, SAML, and OAuth. OAuth and SAML for Posit Workbench (previously RStudio Server Pro) requires version 1.4 and above.
Authentication schemes not directly supported in the products can be configured using proxied authentication. In this configuration, all traffic is routed to a proxy server that handles user authentication.
Local accounts
Because it serves programmers, Workbench requires local accounts regardless of what authentication method you use. You should set up local accounts manually and then map authenticating users to these accounts. You can also use PAM Sessions to mount your user home directory to the server. Connect is typically configured with local service accounts because it serves end users not programmers, but some deployments may require local accounts for specific cases such as publisher impersonation.
External load balancer
Configurations that load balance across two or more nodes require a load balancer. Workbench has a built in load balancer. You can [optionally] proxy traffic to Workbench through an external load balancer. Connect requires an external load balancer that supports sticky sessions. Package Manager requires an external load balancer, but does not require sticky sessions.
Shared storage
For configurations that load balance across two or more nodes you will need a networked storage solution. Shared storage is used to persist content such as project files and application data across your network. We recommend and support the NFS protocol.
Shared home
Workbench stores shared metadata in user home directories. If you mount home directories with NFS, we recommend using the async mount option along with a modern, high-throughput network connection that can support many simultaneous clients. If you would like your users to be able to share their projects with each other, see project sharing for additional NFS requirements.
PostgreSQL database
For configurations that load balance, you will need to create an external PostgreSQL database so metadata can be shared across your network. As of the release of RStudio Server Pro 1.4 (now Posit Workbench), all three products use a PostgreSQL database to store metadata such as usage metrics, application logs, and schedules. See understanding the Posit product databases for more information.
References
- Product documentation can be found at docs.posit.co
- Visit Posit Team for an overview of Posit professional products.
Comments