saltstack / saltstack/salt

[BUG] beacons module do not load if the first master in multimaster list is not reachable when minion starts

Open
#66,717 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug needs-triage
Dominant language
Python
Stars
15.7k
Forks
5.6k
Avg merge
2d 44m
Merged PRs (30d)
80

Description

Description
I created a custom beacon module and noticed that in my Windows and Linux minions, which are set using multimaster list, if the first master in the list is not reachable/available when the minion starts, the beacon module does not load, despite the second master being available and the minion responding to this master.

Setup
Set minion in multimaster (active/active), create and deploy a custom beacon module, sync/provision the module to the Windows minion, stop the minion, stop the master service on the first master, start the minion service, check the minion log, despite the minion connected to the second master, the beacon module is not loaded.

This can be workaround by using the minion config option beacons_before_connect: True. But maybe not ideal in all cases.

I think the beacon module should load if any of the masters is reachable.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing minion startup handling for the multimaster list and the beacons_before_connect option, then reproduce the setup with the first master stopped and the second available. Done means a custom beacon module loads when any configured master is reachable, on both Windows and Linux minions, without requiring the workaround.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.