Anbox Cloud 1.10.0 has been released

Introduction

The Anbox Cloud team is pleased to announce the release of Anbox Cloud 1.10.0

Please see and component versions for a list of updated components.

New Features & Improvements

Android 11

Android 11 was released back in 2020 by Google and is now available and fully supported in Anbox Cloud. With Android 11 various new features become available for developers and applications. From an Anbox perspective Android 11 provides the same feature set as for the existing Android 10 images and will be provided with monthly security updates starting with 1.10.1

All Charms and Bundles are now public

In earlier Anbox Cloud versions the Juju charms and bundles for Anbox Cloud where only available after whitelisting user accounts for access. With 1.10 all charms and bundles are not available in the public on the Juju Charmstore. You can see all available charms and bundles here.

Please note that despite the charms being publically available you still need a paid subscription for Ubuntu Advantage for Applications. In case you’re interested, please contact us.

Pinned Package Versions

Before 1.10 a deployment might have been automatically updated through a system package update to the next major or minor version of Anbox Cloud. With 1.10 this is no longer possible and upgrading to a new minor version of Anbox Cloud requires an explicit update to a newer charm as specified in component versions.

This allows a deployment to stay on a specific release without running into the risk of accidentally updating to a newer version while performing regular system maintenance.

Instant Session Handover

Up until 1.10 streaming sessions managed by the Anbox Stream Gateway could be joined but new clients had to wait before an existing client disconnected to establish a connection. With 1.10 the Anbox Stream Gateway has gotten a new API which allows to force disconnect any currently connected client from an active session.

The following example shows how this can be implemented as part of a regular attempt to join an existing streaming session:

$ curl -X POST https://"$gw_addr"/1.0/sessions/c29opbd9ib102182kfk0/join?api_token="$api_token" --data '{"disconnect_clients":true}'

As a result a client currently connected to the session will be disconnected and the session becomes available for new clients to join instantly.

This feature allows for use cases where server side initiated hand overs of existing streaming sessions, for example between different devices, are needed.

Nvidia Server Optimized GPU Drivers

With 1.10 Anbox Cloud now by default uses the server optimized Nvidia GPU drivers as packaged in the Ubuntu archive by default on amd64 systems. On arm64 systems the Nvidia drivers are still coming from the Nvidia provided CUDA archive.

Application Management in the Dashboard

Applications can now be managed from the Anbox Cloud Dashboard. The feature was already available in 1.9 but disabled by default due to a few limitations. As part of 1.10 this is now fully available by default and allows the creation, modification and deletion of applications via simple web based user interface.

Other

  • If a container has multiple service endpoints defined, allocation of node ports is now quicker. For containers with a high number of service endpoints (100+) the startup time was delayed by more than 70 seconds and is now down to a couple of seconds at maximum.

  • A juju crashdump now collects additional debug information from LXD and AMS about available containers, addons, applications and cluster configuration

  • The LLVMPipe software renderer used by Anbox as part of the swrast and webrtc platforms is now limited in the number of threads it creates for rendering to the number of vCPUs which are assigned to the container. This helps to improve its efficiency and adjusts performance to match the assigned vCPUs.

Deprecations

Android 7

As announced with the 1.9.0 release Android 7 images are now unsupported. They will stay available till 1.10.1 but will not automatically synced to a new deployment afterwards.

Anbox Stream Gateway Dev UI

The Anbox Stream Gateway Dev UI is now fully replaced with the Anbox Cloud Dashboard and is no longer available. Trying to enable it with the enable_dev_ui charm configuration option on the anbox-stream-gateway charm will have no effect.

If you haven’t deployed the Anbox Cloud Dashboard yet, you can do so with the following commands:

$ juju depoy cs:~anbox-charmers/anbox-cloud-dashboard
$ juju relate anbox-cloud-dashboard:gateway anbox-stream-gateway:client
$ juju relate anbox-cloud-dashboard:certificates easyrsa:client
$ juju relate anbox-cloud-dashboard:ams ams:rest-api

The Juju bundles for Anbox Cloud are updated and include the dashboard since 1.9.0

Known Issues

  • With 1.10.0 Juju 2.9 is not yet fully supported. It is recommended to stick to Juju 2.8 until explicit support for Juju 2.9 is added and called out in the release notes.

Bug Fixes

  • LP #1883526 NATs reconnects quite often on a LXD deployment
  • LP #1912172 WebRTC platform hangs forever on peer connection release
  • LP #1885708 ams fails to start on deploy
  • LP #1920999 IP addresses of LXD containers used by the appliance change after a reboot
  • LP #1921835 On systems with multiple Nvidia GPUs Anbox fails to start with WebRTC platform
  • LP #1922208 juju config lxd images_compression_algorithm does not work
  • LP #1923204 Handle Juju timeout error
  • LP #1923300 Shader compilation error in Android 11 because of missing GL_OES_EGL_image_external in swrast/webrtc
  • LP #1924234 Failed to trigger action even if the proper actions were given
  • LP #1924891 Appliance CF template misses AWS regions
  • LP #1925121 The incompatible CUDA libraries were installed when deploying Anbox Cloud on a Nvidia GPU supported environment
  • LP #1926113 AMS is still leaking fds when constantly scaling LXD cluster
  • LP #1926696 Currently synchronized images never show up in amc image ls
  • LP #1905747 Check for debian package before attempting to remove it
  • LP #1915139 Grafana dashboard doesn’t provide Regions selector
  • LP #1915297 Dashboard fails to install on fresh 1.9.0 deployment
  • LP #1920930 Appliance status page is missing favicon
  • LP #1923205 Appliance status page shows incorrect year 2020
  • LP #1924931 Android 11: android.app.cts.SystemFeaturesTest#testCameraFeatures fails
  • LP #1885112 Anbox reports incorrect path for ANR and tomstones
  • LP #1904414 Stream gateway fails to stop if gateway wasn’t installed
  • LP #1914433 images.version_lockstep value is printed as a string instead of a boolean in `amc config show
  • LP #1915803 amc ls --format=json returns null on an empty list, would have expected []

Upgrade Instructions

Please see the general upgrade guide for instructions of how to update your Anbox Cloud deployment to the 1.10.0 release.

1 Like