1FUNC-BUILD-MAP(1) func-build-map FUNC-BUILD-MAP(1)
2
3
4
6 func-build-map -- Builds/augments delegation map of all available func
7 minions
8
10 func-build-map [-a⎪--append] [-o⎪--onlyalive] [-v⎪--verbose]
11
13 Func's delegation feature allows an overlord to execute commands
14 through proxies (minions which also run as overlords) to reduce XMLRPC
15 overhead and the amount of time required to execute commands over large
16 Func networks.
17
18 To accomplish this task, Func needs to know where each proxy and minion
19 sits in the Func network, and for the sake of expediency, this data is
20 stored within a map file on the overlord.
21
22 func-build-map, when run on an overlord, recursively probes through
23 one's Func network, discovering its topology. When complete, it stores
24 a mapfile, encoded in YAML, in /var/lib/func/map.
25
26 If you utilize delegation frequently, we recommend running this tool as
27 a cron job to ensure that your mapfile remains up to date with changes
28 in your Func network topology.
29
31 Run without arguments, func-build-map will rewrite any mapfile cur‐
32 rently sitting in /var/lib/func.
33
34 To delegate commands, this mapfile must be created and kept updated. It
35 is hence recommended to run this as a daily cron job on the highest
36 overlord.
37
38 Note: Minions not yet in the map file will not be reached by delegation
39 calls.
40
42 Combines new Func network topology data with data from the old map
43 file, performing a tree merge. If this merge fails, it replaces the
44 old mapfile with a fresh version.
45
47 Pings all minions and proxies and returns a map containing those which
48 return those pings. Useful for Func network diagnostics and for those
49 who maintain networks where minions are frequently switched on and off.
50
52 Gives additional information as to what func-build-map is doing
53
55 To get started with delegation via the Python API, try the following
56 code:
57
58 import func.overlord.client as fc
59 my_overlord = fc.Overlord("<your glob>", delegate=True)
60
61 If you want to use an alternative delegation map file, you can add the
62 argument mapfile=<your mapfile location> to the Overlord constructor to
63 tell it to pull the mapping data out of it instead.
64
65 From this point, you can treat your delegating overlord object in the
66 same manner as a non-delegating overlord. Minions that exist under mul‐
67 tiple layers of overlords will appear as if they existed directly
68 beneath your master overlord, so make some function calls and play
69 around with it!
70
72 See https://fedorahosted.org/func/ for more information.
73
74 For feature-specific info, visit https://fedora‐
75 hosted.org/func/wiki/DelegationModule.
76
78 func-create-module(1), func-transmit(1), func-inventory(1), func(1),
79 funcd(1).
80
82 Steve Salevan <ssalevan@redhat.com>, Nima Talebi <nima@it.net.au>
83
84
85
86 2012-10-15 FUNC-BUILD-MAP(1)