Overview

Date: 2026-05-11

Time: 15:13

Overview

FTL2 supports parallel execution of modules across multiple remote hosts simultaneously. Hosts are organized into groups within a YAML inventory, and operations can target all hosts, specific groups, individual hosts, or pattern-matched subsets using the --limit flag. By default, FTL2 executes concurrently across all targeted hosts, so total execution time approximates the slowest host rather than the sum of all hosts.

Key Concepts

Commands and Syntax

Basic multi-host execution:


ftl2 -m <module> -i inventory.yml

Targeting with --limit:


--limit webservers          # specific group
--limit web01               # specific host
--limit "web*"              # glob pattern
--limit "!db*"              # exclude pattern
--limit "web01,web02"       # comma-separated list
--limit "!databases"        # exclude a group

Inventory YAML structure:


all:
  children:
    webservers:
      vars:
        http_port: 80
      hosts:
        web01:
          ansible_host: 127.0.0.1
          ansible_port: 2222
    databases:
      hosts:
        db01:
          ansible_host: 127.0.0.1
          ansible_port: 2224

Verbose logging for timing/debugging:


ftl2 -m ping -i inventory.yml -vvv

Relationships

Exam-Relevant Points