Motivation and intended usage:
...
RStudio Server instances each run in a Docker containerd.io container, managed by a kubernetes cluster running in Lehigh's data center. The OpenOndemand application (OOD) is used to start a user's RStudio Server instance in the kubernetes cluster.
...
To get an RStudio Server in the kubernetes cluster, the user goes to https://hpcportalkubeportal.cc.lehigh.edu, then clicks on the "Class Apps" dropdown menu along the top of the page and selects "RStudio server (kubernetes)" for the generic RStudio instance in kubernetes, or the particular application for their course if applicable (a course can get its own entry here if it maps a network shared drive that is specific to the course). They are brought to a form where they can select the version of R that they want, and then they can click the "Launch" button. It takes a minute or so for the instance to start, and then a "Connect to RStudio Server" button appears that takes the user to their RStudio instance.
...
The user's home directory that's mounted inside their RStudio Server instance is actually stored on a remote NFS server, so any files the users creates or modifies will persist after their RStudio instance ends. The next time they log in and create a new RStudio Server, the same files will still be there.
The user's home directory is the same home directory that they see on HPC nodes in the sol and hawk clusters to make getting data into and out of RStudio easier.
Session management:
For as long as it is still running, the user's RStudio Server is available at https://rstudio.cc.lehigh.edu/<username>/. The user can also get to it by going back to https://hpcportalkubeportal.cc.lehigh.edu/ and clicking on the "My Interactive Sessions" link along the top menu bar.
...
When the user is finished using their RStudio Server, they will want to click the small red power-button icon in the upper-right corner of the browser window to tell RStudio to end their session. If they don't do this, the next time they log in and get a new RStudio Server instance, they will see a red error message in the RStudio console saying "ERROR The previous R session terminated abnormally" surrounded by some debugging information. This error is unavoidable if the user doesn't click the button to end their session. It's a harmless error - everything will still work fine, but it can be scary to see that on session startup.
...
The following error is harmless:
2022-01-26T20:04:48.938685Z [rsession-<username>] WARNING No memory control group found in /proc/self/cgroup; LOGGED FROM: std::__cxx11::string rstudio::core::system::{anonymous}::getMemoryCgroup() src/cpp/core/system/LinuxResources.cpp:335
It shows up on starting an RStudio session. We have not yet found a way to prevent it from happening. The error is related to a version mismatch between kubernetes, the container engine it's using to run RStudio, and the OS running both. It should eventually go away when we are able to upgrade everything to use the same version of "cgroups", which are used to control the resources granted to containers. Everything will still work fine in spite of this error.
...
Upon using the "plot" function in RStudio, this error may appear:
Warning message:
In grSoftVersion() :
unable to load shared object '/usr/local/lib/R/modules//R_X11.so':
libXt.so.6: cannot open shared object file: No such file or directory
This is also harmless - the plot function still works. The error is caused by the way the container was built - the RStudio images are based on the Rocker project (https://www.rocker-project.org/ ) and this is related to the way they built the image. An update to the image would fix it - we'll raise an issue in the Rocker project's github to make sure they are aware of it.