[DRBD-announce] drbd-reactor v1.2.0

Roland Kammerer roland.kammerer at linbit.com
Tue May 9 09:28:52 CEST 2023


Dear DRBD users,

this is version 1.2.0 of drbd-reactor. There have not been any reported
issues in RC1. With some public holidays and not wanting to do a Fri
release it just took a bit longer. For your convenience the original
announcement (and some upgrade hint):

There are two noteworthy changes in this release:

- The promoter plugin used a shell wrapper script shipped in drbd-utils
  to handle OCF agents. This wrapper was replaced by a proper Rust
  binary. The advantage is that we can (re)use that in our Windows port.
  Every shell script re-written in a proper programming language is a
  benefit on its own.

- So far it was possible to specify an "id" for plugins in their
  configuration snippet and that was the handle to decide which plugin
  instances got stopped, kept alive, or started on drbd-reactor reloads
  (systemctl reload/kill -HUP). Now we keep hashes of the configuration
  structs (i.e., they are trait Hash) and reloading changed plugins just
  behaves like expect: No weird "id"s, changed plugins restart, new get
  started, unchanged ones stay, the ones now without a config get
  stopped. The "id" fields in configs are now marked as deprecated
  (i.e., specifying them prints a warning in the log) and don't have any
  special meaning anymore. Note that they still contribute to the hash
  of config struct. In order to make the config structs trait Hash we
  had to change the 'sleep-before-promote-factor' from a f32 to a u32. I
  guess this setting is that unknown and rarely used that we can do
  that.

In the best case you don't even notice the changes, but get an improved
behavior on reactor reloads.

Upgrade: if you have promoter resources using ocf agents I'd suggest you
upgrade all cluster nodes without active promoter resources, then you
'systemctl restart drbd-reactor.service', then 'drbd-reactorctl evict'
the active ones to another - now upgraded - node, upgrade that last node
and restart the service there as well.

GIT: https://github.com/LINBIT/drbd-reactor/commit/39c82c1c324bf1011f34d4acaaf82201cef61727
TGZ: https://pkg.linbit.com//downloads/drbd/utils/drbd-reactor-1.2.0.tar.gz
PPA: https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack

Regards, rck

Changelog:
[ Moritz "WanzenBug" Wanzenböck ]
* prometheus: start server in plugin constructor
* ctl: ignore already unmasked targets
* plugin: unify starting of plugins

[ Roland Kammerer ]
* prometheus: rm unused import
* ocf-wrapper: rewrite in Rust
* core,plugins: auto generate IDs
* core,plugins,ctl: deprecate IDs
* ocf-rs-wrapper: rm random sleep

[ Joel Colledge ]
* ci: remove -l from lbbuildctl invocation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.linbit.com/pipermail/drbd-announce/attachments/20230509/bdfec69c/attachment.pgp>


More information about the drbd-announce mailing list