From: Roland Kammerer <roland.kammerer@linbit.com>
To: drbd-announce@lists.linbit.com, drbd-user@lists.linbit.com
Subject: [DRBD-announce] drbd-reactor v1.2.0
Date: Tue, 9 May 2023 09:28:52 +0200 [thread overview]
Message-ID: <ZFn2NPWa76w2zBlS@rck.sh> (raw)
[-- Attachment #1: Type: text/plain, Size: 2703 bytes --]
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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
reply other threads:[~2023-05-09 7:28 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZFn2NPWa76w2zBlS@rck.sh \
--to=roland.kammerer@linbit.com \
--cc=drbd-announce@lists.linbit.com \
--cc=drbd-user@lists.linbit.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.