[release-announce] storlets 8.0.0 (xena)

no-reply at openstack.org no-reply at openstack.org
Wed Oct 6 11:48:45 UTC 2021


We are excited to announce the release of:

storlets 8.0.0: Middleware and Compute Engine for an OpenStack Swift
compute framework that runs compute within a Swift cluster

This release is part of the xena release series.

The source is available from:

    https://opendev.org/openstack/storlets

Download the package from:

    https://tarballs.openstack.org/storlets/

Please report issues through:

    https://bugs.launchpad.net/storlets/+bugs

For more details, please see below.

8.0.0
^^^^^


Prelude
*******

Now Storlets supports some new features to optimize resource usage by
storlet containers. Also, management of docker containers was
refactored and re-implemented by the docker python sdk, to allow more
flexible and secure container management.


New Features
************

* The new timeout feature has been added to the agent processes
  running in storlet containers. This feature makes storlet containers
  and storlet daemon processes inside these containers to terminate
  automatically if the process receives no requests for 300 seconds.

* Now storlet containers are started with auto remove flag enabled.
  Because of this change the containers are automatically deleted
  after these are stoped (manually or because of timeout).

* The agent processes inside storlet containers now accept SIGHUP
  signal and shutdown gracefully.

* The new "max_containers_per_node" option has been added to the
  docker gateway configuration file. This option limits the number of
  storlet containers in a single node, and would be useful to
  distribute containers among multiple nodes. This parameter should be
  carefully determined based on actual workload. If the limit is too
  low, clients might experience frequent 503 errors because the
  required storlet container cannot be launched in the cluster.


Upgrade Notes
*************

* The "restart_docker_container" script has been removed, and now
  the storlet_handler middleware directly communicates with the docker
  daemon to manage docker containers. Because of this change, now the
  user to run swift processes (which is usually the "swift" user)
  should belong to the "docker" group.

* Now "managed_by=storlets" is added as a tag to all storlet
  containers, to look up containers launched by Storlets. All existing
  containers without this tag should be stoped and removed during
  upgrade to use the new "max_containers_per_node" option.

Changes in storlets 7.0.0..8.0.0
--------------------------------

a513114 Add release note for 8.0.0
a3583b5 Allow limiting number of containers on a node
33c403e Accept SIGHUP for graceful shutdown
b5678a4 Stop Inactive storlet processes automatically
d0f5560 Run agent processes by the swift user
d60176c Get rid of SUID binary to restart docker containers
e2060cd devstack: Make OpenJDK version configurable
ef91a60 Update IRC network to OFTC
be9f7fc setup.cfg: Replace dashes with underscores
7d980c2 Add Python3 xena unit tests
77b2112 Update master for stable/wallaby


Diffstat (except docs and test files)
-------------------------------------

.gitignore                                         |   3 -
.zuul.yaml                                         |   2 +-
AUTHORS                                            |   2 +-
CONTRIBUTING.rst                                   |   2 +-
devstack/plugin.sh                                 | 106 ++++------
etc/storlet-docker-gateway.conf-sample             |   1 +
install_libs.sh                                    |   6 -
releasenotes/notes/8_0_0-535e0fed9755d83c.yaml     |  45 ++++
releasenotes/source/index.rst                      |   2 +
releasenotes/source/wallaby.rst                    |   6 +
requirements.txt                                   |   1 +
s2aio.sh                                           |   2 +-
scripts/Makefile                                   |  16 --
scripts/restart_docker_container.c                 |  87 --------
setup.cfg                                          |   6 +-
src/c/sbus/sbus.c                                  |  42 +++-
src/c/sbus/sbus.h                                  |   4 +-
src/java/SBus/SBusJNI.c                            |   5 +-
.../src/main/org/openstack/storlet/sbus/SBus.java  |   4 +-
.../org/openstack/storlet/sbus/SBusBackend.java    |   7 +-
.../main/org/openstack/storlet/sbus/SBusJNI.java   |   2 +-
.../main/org/openstack/storlet/daemon/SDaemon.java |   3 +-
storlets/agent/common/server.py                    |  53 ++++-
storlets/agent/daemon/server.py                    |  11 +-
storlets/agent/daemon_factory/server.py            |  12 +-
storlets/gateway/gateways/docker/runtime.py        |  86 +++++---
storlets/sbus/sbus.py                              |   8 +-
32 files changed, 455 insertions(+), 344 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index 68d910a..eee4e12 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9,0 +10 @@ stevedore>=1.16.0  # Apache-2.0
+docker






More information about the Release-announce mailing list