rabbitmq-server/deps/rabbitmq_peer_discovery_etcd
Jean-Sébastien Pédron d54b2bff3c
rabbitmq_peer_discovery_etcd: Wait for etcd start in system_SUITE
[Why]
It was possible that testcases were executed before the etcd daemon was
ready, leading to test failures.

[How]
There was already a santy check to verify that the etcd daemon was
working correctly, but it was itself a testcase.

This patch moves this code to the etcd start code to wait for it to be
ready.

This replaces the previous workaround of waiting for 2 seconds.

While here, log anything printed to stdout/stderr by etcd after it
exited.

Fixes #12981.
2024-12-19 19:45:55 +01:00
..
include More missed (c) header updates 2024-01-22 23:44:47 -05:00
priv/schema Upgrade eetcd and gun 2024-12-19 13:20:28 +00:00
src Upgrade eetcd and gun 2024-12-19 13:20:28 +00:00
test rabbitmq_peer_discovery_etcd: Wait for etcd start in system_SUITE 2024-12-19 19:45:55 +01:00
.gitignore Cleanup .gitignore files for the monorepo 2024-06-28 12:00:52 +02:00
BUILD.bazel rabbitmq_peer_discovery_etcd: Add clustering testcases 2024-05-14 09:40:44 +02:00
CODE_OF_CONDUCT.md Replace files with symlinks 2022-04-15 06:04:29 -07:00
CONTRIBUTING.md Replace files with symlinks 2022-04-15 06:04:29 -07:00
LICENSE Replace @rabbitmq.com addresses with rabbitmq-core@groups.vmware.com 2023-06-20 15:40:13 +04:00
LICENSE-MPL-RabbitMQ Revert drop of Exhibit B on MPL 2.0 2020-07-20 17:02:31 +01:00
Makefile Upgrade eetcd and gun 2024-12-19 13:20:28 +00:00
README.md More missed license header updates #9969 2024-02-05 12:26:25 -05:00
RUNNING_TESTS.md Small re-work for test instructions 2020-04-08 18:48:36 +00:00
app.bzl Replace globs in bazel with explicit lists of files 2023-04-25 17:29:12 +02:00

README.md

RabbitMQ Peer Discovery Etcd

This is an etcd-based implementation of RabbitMQ peer discovery interface (new in 3.7.0, previously available in the rabbitmq-autocluster plugin by Gavin Roy).

This plugin only performs peer discovery and most basic node health monitoring using etcd as a data source. Please get familiar with RabbitMQ clustering fundamentals before attempting to use it.

While it may seem at times that this is a RabbitMQ cluster management solution, it is not. Cluster provisioning and most of Day 2 operations such as proper monitoring are not in scope for this plugin.

Supported RabbitMQ Versions

This plugin requires RabbitMQ 3.7.0 or later.

Supported etcd Versions

The plugin supports etcd 3.4 or later and uses the current stable v3 gRPC API.

Installation

This plugin ships with supported RabbitMQ versions. There is no need to install it separately.

As with any plugin, it must be enabled before it can be used. For peer discovery plugins it means they must be enabled or preconfigured before first node boot:

rabbitmq-plugins --offline enable rabbitmq_peer_discovery_etcd

Documentation

See RabbitMQ Cluster Formation guide.

Contributing

See CONTRIBUTING.md and our development process overview.

License

Licensed under the MPL, same as RabbitMQ server.

(c) 2007-2024 Broadcom. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.