Description of problem:
Right now, the qdrouterd "helloInterval" and "helloMaxAge" settings are set to 1 sec and 3 sec by default. This can cause issues on networks with sporadic issues, or if a system pauses temporarily (for example, migrating a VM running a capsule to a new hypervisor). Qdrouterd will eventually reconnect but it may make multiple attempts while waiting for network issues to resolve. In short, qdrouterd on Satellite installations is overly sensitive to network blips by default, given that katello-agent commands sent via amqp are not extremely time sensitive.
These settings can be changed in qdrouterd.conf, but it requires manual editing of the config file, and must be reapplied after the installer runs.
This bug has two parts:
* allow helloInterval and helloMaxAge to be configured via custom-hiera.yaml
* investigate if we should bump helloInterval and helloMaxAge to a higher default in Satellite. The default "accept timeout" for katello-agent in the satellite settings page is 20 seconds, so perhaps helloMaxAge of 15 is a good number to allow qdrouterd to drop and reconnect at least once.
https://access.redhat.com/solutions/3440201 has more info on this.
Version-Release number of selected component (if applicable): 6.3.1
Steps to Reproduce:
1. run satellite with one capsule on a VM
2. pause and unpause VM quickly, or suspend/unsuspend qdrouterd process
3. check if qdrouterd connection was dropped
qdrouterd connection dropped
qdrouterd connection not dropped
*** Bug 1578706 has been marked as a duplicate of this bug. ***
+1 for the new default settings:
to have it aligned within the 20s katello-agent initial response timeout.
(and +1 for having the options configurable via custom-hiera.yaml)
Verified fix in sat 6.5 snap 10.
Adding the following options to custom-hiera.yaml:
Resulted in the relevant options being added to /etc/qpid-dispatch/qdrouterd.conf
Also verified that removing the option from custom-hiera.yaml, removed them from qdrouterd.conf
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.