Because the rabbitmq user shell defaults to /bin/false, we must
explicitly define a shell when using the runuser command
Issue: rabbitmq/rabbitmq-server-release#32
PR: rabbitmq/rabbitmq-server-release#40
[#150221349]
Signed-off-by: Gerhard Lazu <gerhard@rabbitmq.com>
The previous patch was meant to make it clear that an unprivileged user
(other than `rabbitmq`) shouldn't run rabbitmq-plugins.
Unfortunately, it broke the script when called by root, because the
real script was executed as `rabbitmq`. This user doesn't have write
permissions to `/etc/rabbitmq` by default.
Now, rabbitmq-plugins' wrapper must be executed as root and so is the
real script. This should fix the problem described above.
[#149840153]
If the current working directory is not readable, Erlang will crash.
This ensures that we run RabbitMQ scripts from a readable directory.
[#149425921]
Signed-off-by: Gerhard Lazu <gerhard@rabbitmq.com>
The logic is a bit crazy, and the whole purpose of this script is
questionable, but until we get rid of it, we've refactor it to make it
more obvious just how crazy it actually is.
[#149425921]
Signed-off-by: Gerhard Lazu <gerhard@rabbitmq.com>
For some reason, the rabbitmq-plugins command could be run
from arbitrary user, which would result in errors unable to
access a cookie file or plugins configuration files.
Changed to work the same way as rabbitmqctl - require root
or rabbitmq user.
[Fixes#149425921]
Some parts of #21 have not been added to the stable branch. This change
fixes the issue by adding missing changes to rabbitmq-server-ha.ocf and
also fixing rabbitmq-server.ocf
Some parts of #21 have not been added to the stable branch. This change
fixes the issue by adding missing changes to rabbitmq-server-ha.ocf and
also fixing rabbitmq-server.ocf
For some reason some changes were lost from #21, adding back those.
The original PR message:
This enables to change the limit of open files, as the default on
distributions is usually too low for rabbitmq. Default is 65535.
For some reason some changes were lost from #21, adding back those.
The original PR message:
This enables to change the limit of open files, as the default on
distributions is usually too low for rabbitmq. Default is 65535.
It would be helpful to see rabbit's output when it exits with non-zero
status code. The log level is left at info, as it might be business as
usual that a node is not running rabbit. The -q switch prevents the
output from being logged if the return value is zero.
It would be helpful to see rabbit's output when it exits with non-zero
status code. The log level is left at info, as it might be business as
usual that a node is not running rabbit. The -q switch prevents the
output from being logged if the return value is zero.
This enables the cluster to focus on a vhost that is not /, in case the
most important vhost is something else.
For reference, other vhosts may exist in the cluster, but these are not
guaranteed to not suffer from any data loss. This patch doesn't address
this issue.
Closes https://github.com/rabbitmq/rabbitmq-server-release/issues/22
. /etc/profile can be called from shells incompatible with
autocomplete script syntax. To avoid that specific BASH and
ZSH autocomplete scripts are called only if shell version is
detected.
Add a matrix of two test cases:
* Smoke test: just a check if rabbit cluster assembles.
* Jepsen test: allowed to fail, it's main value is to
verify cluster auto-healing after consequent network
partitions and to provide numbers for
duplicated/lost/recovered/unexpected messages as well.
* Pin the cluster installer repo to the 1.2.0.
Backport from master branch
Make the gate always passing if there is no changes found
to the RabbitMQ OCF RA script in the patch under test.
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Add a matrix of two test cases:
* Smoke test: just a check if rabbit cluster assembles.
* Jepsen test: allowed to fail, it's main value is to
verify cluster auto-healing after consequent network
partitions and to provide numbers for
duplicated/lost/recovered/unexpected messages as well.
Make the gate always passing if there is no changes found
to the RabbitMQ OCF RA script in the patch under test.
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Panicking and returning non-success on stop often leads to resource
becoming unmanaged on that node.
Before we called get_status to verify that RabbitMQ is dead. But
sometimes it returns error even though RabbitMQ is not running. There
is no reason to call it - we will just verify that there is no beam
process running.
Related fuel bug - https://bugs.launchpad.net/fuel/+bug/1626933
Partitions reported by `rabbit_node_monitor:partitions/0` are not
commutative (i.e. node1 can report itself as partitioned with node2, but
not vice versa).
Given that we now have strong notion of master in OCF script, we can
check for those fishy situations during master health check, and order
damaged nodes to restart.
Fuel bug: https://bugs.launchpad.net/fuel/+bug/1628487