Increase Ansible forks to speed up fleet-wide deploys

Open Beginner friendly
#65 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
88/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Quiet
Tech stack
ansible, docker

Research direction

Open docker/ansible.cfg and inspect the [defaults] section, then review how deploy-all-engines invokes Ansible. Set the requested fork limit and verify that a fleet-wide deployment uses the higher concurrency without exceeding the stated VPN bandwidth constraint.

Written by the indexing model from the issue text.

Description

Fleet-wide runs like deploy-all-engines currently process hosts in waves of 5, the Ansible default forks value (docker/ansible.cfg does not override it).

The slowest tasks (docker image pulls on the Pis over 4G links) are fully independent per host, so a 30+ host deploy spends most of its wall-clock time waiting on batching rather than on the orchestrator.

Suggestion: set forks = 15 (or higher) in the [defaults] section of docker/ansible.cfg. The control node only orchestrates SSH sessions, so the extra concurrency is cheap; the practical ceiling is mostly VPN bandwidth.

Dominant language
Python
Stars
0
Forks
2
Avg merge
2d 12h
Merged PRs (30d)
6

Contributor guide

No contributing guide indexed for this repository

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.

More from pyronear/pi-manager-template

All issues in pyronear/pi-manager-template

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.