Configuring Cloud Workstations
The Outerbounds Platform comes with built-in cloud workstations which work through VSCode Remote Development Extension.
Cloud Workstations are an optional feature. You can also use OBP on local workstations using any editor.
Why OBP workstations
There are three key differences to other cloud workstations, such as Github Codespaces:
The workstation backends run on your cloud account, in your region, so data and processing stays within your cloud premises.
You can use any EC2 instances, including GPU instances, as workstation backends without extra cost.
Access to OBP workstations and resources accessible from workstation, such as Metaflow configuration, are handled centrally through OBP, integrating to your SSO.
While the backend provides some unique benefits, the user benefits doesn't have to learn much anything new: They can use the VSCode IDE, Jupyter notebooks, and Metaflow as usual.
Setting up a workstation backend
Workstations are user-specific, so an admin needs to configure one or more workstation backends for every user who wants to use the feature. Adding and removing workstations is easy - follow these three steps:
1. Go to the workstations view
Open the OBP UI, click "Platform" and "Workstations":
This view shows all workstations configured on the platform and their statuses. To configure a new workstation, click "Add workstation".
2. Add a new workstation
A new workstation requires a few parameters:
Name - a free-form name that helps the user distinguish between multiple workstations.
Owner - the owner of workstation; must be an existing OBP user configured in the "Users" view.
Resource requirements
Disk - the amount of local disk on the workstation.
Memory - the amount of memory in GBs.
CPU - the number of CPU cores.
GPU - the number of GPUs.
If the resource requirements are not satisfiable with the nodes configured in your cluster, you will get a warning. Contact your OBP Slack channel to change the node configuration if needed.
Image
You can use one of the preconfigured images that define what libraries are available by default on the workstation. Or, you can bring your own image or use an off-the-shelf image.
We are happy to help you configure a suitable image for your needs.
Note that when the user runs Metaflow flows --with kubernetes
on the workstation, the image
configured here is used by default. Hence, the same libraries are available consistently both
for local runs on the workstation, as well as when scaling out with remote tasks.
3. Start using the workstation
After the workstation has been created, the user can start using it following these instructions.
Under the hood
A workstation backend is a Kubernetes pod that runs inside the OBP deployment on your account. An important implication of this is that workstations are backed by one or more EC2 instances. To save costs, OBP packs as many workstations on a single instance as possible, depending on resource requirements.
Workstation lifecycle
A workstation can be paused. When paused, data stored on the workstation is persisted but it doesn't consume any compute resources, minimizing its cost footprint.
For instance, you can allocate even large GPU instances for users which they can pause when not actively used.