โ† All release notes

June 19, 2023 ยท Control Room, Workforce Agent

Second generation of Robocorp-hosted Cloud Workers

CLOUD WORKERS - ACTION REQUIRED

We are announcing three significant changes to the Robocorp-hosted Cloud Workers:

  1. Modernization of the Linux distribution from Ubuntu 18.04 to Debian 12.0 "bookworm".

  2. Predictable performance via specified resource quotas.

  3. Update process that enables testing upcoming container versions beforehand and reverting to a previous version in case of problems.

These changes do not affect any previously deployed robots (yet), but we recommend migrating to the new Debian-based container to stay up to date with security updates.

If no action is taken, step configurations will be migrated automatically starting January 1, 2024.

OK, WHAT SHOULD I DO?

๐Ÿ‘‰ Update your step configurations to use "Cloud Worker" instead of "Cloud Worker (Ubuntu 18.04 legacy)"

๐Ÿ‘‰ Test that the robot still runs as expected.

We expect the overwhelming majority of robots to just work without any modifications.

BACKGROUND & DETAILS

Since their launch in 2019, the Robocorp-hosted Cloud Workers have been powered by Ubuntu 18.04 as the underlying distribution. It has proven to be a stable foundation for many popular use cases such as Browser and API automation. However, as of June 2023, Ubuntu 18.04 has reached the end of the standard maintenance window and it is time to move on. Unfortunately starting with Ubuntu 20.04, Chromium is distributed as a Snap package, which does not play nice with containers. Therefore we decided to upgrade to Debian instead.

Unpredictable performance was a common pain point with the first generation of Robocorp-hosted containers. The containers were historically run with a relatively small amount of guaranteed resources (1/4 vCPU, 256 MB RAM, 20 GB disk), but any excess capacity on the underlying cluster was made available to the containers. This resulted in great performance most of the time, but in the case of load spikes, the performance could drop significantly. The Debian-based containers are run with hard resource quotas of 1 vCPU, 3.5 GB RAM and 20 GB disk. In practical terms, the performance is always the same, regardless of total resource utilization.

Finally, we used to have just one version of the Cloud Worker available. It was not possible to 1) test upcoming versions in advance or 2) selectively revert back to a previous version in case of issues. For the 2nd generation of Cloud Workers we are offering three variants. The "early access" version is the bleeding edge, which can change anytime. Once deemed stable, some versions will be selectively promoted to the default version after a 2-week notice period. Customers interested in ensuring maximum stability have two weeks to test the upcoming release. Finally, the "previous" version points to the version that was previously the default, meaning it is possible to effectively roll back in case something breaks.

To summarize, the following changes are live as of today:

  1. The Ubuntu-based Cloud Worker has been renamed as "Cloud Worker (Ubuntu 18.04 legacy)" to indicate the EOL status.

  2. Three new Cloud Worker options have been added. See the docs page for a description: https://robocorp.com/docs/control-room/unattended/worker-setups/robocorp-container#different-cloud-worker-versions

  3. New steps are assigned to the Debian-based, current container version by default.

  4. The legacy Ubuntu-based container continues to run with a soft resource quota. The new Debian container runs with a (significantly increased) hard quota.

KNOWN ISSUES

Currently, if a step run gets terminated due to exceeding the memory or disk quota, the run fails with a "Connection loss" error. We are working on adding better error reporting.