Release Notes v7.3.1

The BeeGFS 7.3.1 release includes changes to the default mount options and security configuration as well as some other fixes and QoL improvements.

Warning

Before upgrading to this version, please read the section about security improvements below carefully. If you have not configured a connAuthFile, services will no longer start without configuration changes. For more background on why we make this change, please refer to our blog post on the topic.

Security Improvements

  • The client will now use the nosuid mount option by default to prevent users from escalating privileges by using setuid binaries. This can be overridden by setting suid as a mount option in beegfs-mounts.conf

  • Configuring a connAuthFile is now mandatory. Services will no longer start if connAuthFile is not configured or connection authentication is explicitly disabled by setting the new configuration option connDisableAuthentication to true. Please refer to our documentation about Authentication for more information about setting up connection authentication.

General Changes/Improvements

  • The native cache mode is no longer marked as experimental.

Note

We have discovered an issue with the native cache mode on new kernels (Linux 5.15 in Ubuntu 22.04 and Linux 5.14 in RHEL 9), where the page cache is corrupted during read. Although on-disk data is not affected, we advise against using the native cache mode on kernels newer than 5.13 with an upatched BeeGFS 7.3.1 client. A patch is available here.

  • TCP and UDP receive buffer sizes can now be configured independently from the RDMA buffer size with the configuration options connTCPRcvBufSize and connUDPRcvBufSize. The default values of 0 will preserve the legacy behavior of setting the buffer size to connRDMABufNum * connRDMABufSize. Setting the value to -1 will set the buffer size to system defaults.

  • Improved performance when selecting a connection from the client connection pool by reordering the connection according to availability.

  • Updated the client module to work with Linux 5.15 to support RHEL 9 and Ubuntu 22.04.

  • Removed unnecessary memory context switching in standard socket code.

  • Some general code cleanup.

Fixes

  • RDMA events with event code RDMA_CM_EVENT_TIMEWAIT_EXIT will no longer be logged by default. They will still be logged on log level DEBUG.

  • Added connAuthFile configuration to client runtime config in procfs to fix an issue where beegfs-ctl with the --mount flag was not able to connect to other servers when connAuthFile is configured.

  • Fixed a bug in the RDMA buffer allocation that caused the client module to crash during OPA and RoCE device initialization on newer kernels (RHEL >8.5, Ubuntu 22.04).

  • The --access flag in the beegfs-ctl modes --createdir and --createfile will no longer ignore special bits for setuid, setgid and sticky.

Known Issues and Limitations

  • The Metadata daemon does not work reliably on RHEL/CentOS 8 and SLES 15.1 and 15.2 due to a problem in the versions of glibc. The problem was fixed in RHEL/CentOS 8.1 and SLES 15.3.

  • The client module might hang if the IBV device(s) used are taken offline during operation.

  • The client module does not compile on SLES 15.2 with Mellanox OFED 5.2

  • The native cache mode has an issue on new kernels (Linux 5.15 in Ubuntu 22.04 and Linux 5.14 in RHEL 9). In some situations, the page cache can become corrupted during read. Although on-disk data is not affected, we advise against using the native cache mode on kernels newer than 5.13 with an upatched BeeGFS 7.3.1 client. A patch is available here.

Supported Linux Distributions and Kernels

Packages are provided for the x86_64 and aarch64 architecture and the following distributions:

  • RHEL 8 and 9 (packages can also be used on RockyLinux and Alma Linux)

  • SLES 15

  • Debian 10 and 11

  • Ubuntu 18.04, 20.04 and 22.04

The following Mellanox OFED driver versions are supported: 5.6, 5.5, 5.4, 5.3, 5.2, 5.1, 5.0, 4.9

The full integration test suite was run on Alma 9.0, Rocky 8.5, RHEL 8.5, Rocky 8.6, Alma 8.5, OpenSUSE 15 SP3, Debian 10, 11 and Ubuntu 20.04 and 22.04.

Client build testing:

  • RHEL 8.3: no OFED, OFED 4.9, 5.0, 5.1, 5.2, 5.3, 5.4

  • AlmaLinux 8.4: no OFED, OFED 5.3, 5.4

  • AlmaLinux 8.5: no OFED, OFED 5.3, 5.4, 5.5

  • AlmaLinux 9.0: no OFED, OFED 5.6

  • Rocky Linux 8.4: no OFED, OFED 5.3, 5.4

  • Rocky Linux 8.5: no OFED, OFED 5.5

  • Rocky Linux 8.6: no OFED, OFED 5.6

  • SLES 15.1: no OFED, OFED 5.0

  • SLES 15.2: no OFED, OFED 5.1, 5.4

  • SLES 15.3: no OFED, OFED 5.4, 5,5, 5.6

  • Debian 10: no OFED, OFED 5.2, 5.3, 5.4

  • Debian 11: no OFED, OFED 5.6

  • Ubuntu 18.04: no OFED

  • Ubuntu 20.04: no OFED, OFED 5.4

  • Ubuntu 22.04: no OFED, OFED 5.6

Version Interoperability

BeeGFS v7.3.1 is compatible with BeeGFS v7.3.x.

Upgrading from Older Versions

To upgrade from an older version, please refer to the Upgrade Guide.