Skip to main content

Backend.AI 22.09: September 2022 Update

· 5 min read
Lablup

Hello! We are here to inform you about the improvements in Backend.AI 22.09/Enterprise R2 update for September 2022!

This is a 6-month integrated update release, and major bug fixes and essential improvements will also be reflected in Backend.AI 22.03/Enterprise R2. Backend.AI 21.09 and earlier versions will no longer receive updates unless emergency security patches are required for currently active users.

Support for commit function that stores contents of running containers

Unlike virtual machines (VMs), Backend.AI sessions (kernels) are created in containers, and all content inside the container shares the lifecycle of the container. This means that when the container is terminated, all internal content is also lost (except for content stored in virtual folders mounted with NFS). To solve this limitation, Backend.AI now supports the container commit function, which is a feature supported by Docker that saves container work history to a file. The saved commit contents have the tar.gz extension and are stored on the agent node where the container was running.

Additional support for SAML (Security Assertion Markup Language) 2.0

Backend.AI manages user accounts separately in a DB table by default. Therefore, unless an SSO plugin is applied, user registration must be carried out separately regardless of whether it is an on-premise or cloud environment. With the addition of support for SAML 2.0 in this update, users can now utilize information from a site where they are registered to access Backend.AI, create AI models, and train them with minimal input.

Record and display session (kernel) status history

Since version 21.09, Backend.AI has provided detailed information about session status. However, the status change history of sessions was not yet supported. With this update, you can now see the timeline from preparation to execution, and from execution to termination of sessions at a glance. This feature is currently only supported in the admin panel, so it can only be viewed in Backend.AI 22.09/Enterprise R2.

Support for using wsproxy v2 in NAT environments

In addition to manager, agent, storage-proxy, and webserver, Backend.AI is a structure in which various components, such as wsproxy(v1, v2) and proxy-coordinator, interact with each other. In this case, various situations can arise depending on the network environment. When accessing Backend.AI via NAT, there was a problem where wsproxy v2 could not be used because the manager and wsproxy IP addresses were different. With this update, wsproxy v2 can now be used even when the addresses are different, allowing for more flexible network environment compatibility.

User IP-based access blocking function

A new function has been added to restrict access to specific users only from designated IP ranges. Access can be allowed from a single IP or a specific network range, and multiple ranges can be added.

Support for resuming file transfer in CLI

Backend.AI supports not only the GUI WebUI but also the CLI (Command Line Interface). When downloading files with the CLI, there was an inconvenience that you had to start from the beginning if the file transfer failed due to network problems or other reasons. With this update, the --max-retries option has been added to enable resuming file transfer from the previous point even if the connection with the server is lost during file download. Now you can download files even in an unstable network situation without worrying.

Removal of dependency on psycopg2

The following is an important update for those who directly use Backend.AI. The DB adapter psycopg2, which was used for alembic migration tool operation, is no longer used. For existing alembic.ini, the postgresql:// part of the DB connection URI must be modified to postgresql+asyncpg://.

Other improvements to user interface and usability

  • Allow regular users to forcefully terminate sessions
  • (Admin WebUI) Improved interface to display more detailed resource information of agents
  • (Admin Panel Only) Provide user interface to view app domain information in app proxy screen
  • Improved file browser to work in read-only storage folders
  • Added option for administrators to allow users to view agent information
  • Support sending the target app's protocol (HTTP or TCP) when starting wsproxy
  • Support using a network other than the default Docker network when creating a container on the agent
  • Always mount InfiniBand devices when creating a single container on the agent (support for GPU Direct Storage)
  • Improved Pants CLI execution speed in the development environment
  • Added functionality to automatically read .env in the client and reflect it in environment variables

Support for development and research frameworks

  • Conda support update
    • Provides Conda 22.06 images.
  • NGC update
    • Supports NGC PyTorch 22.05.
    • Supports NGC Triton 22.07.
  • Ubuntu 22.04 base image support
    • Provides environment images based on Ubuntu 22.04. Starting with the multi-architecture image of python 3.10-ubuntu22.04.