Upload
mohammed-marouan
View
78
Download
3
Embed Size (px)
Citation preview
Salt DocumentationRelease 0.17.1
SaltStack, Inc.
October 29, 2013
Contents
1 Frequently Asked Questions 11.1 Is Salt open-core? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 What ports should I open on my firewall? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 My script runs every time I run a state.highstate. Why? . . . . . . . . . . . . . . . . . . . . . . . . . 11.4 When I run test.ping, why dont the Minions that arent responding return anything? Returning
False would be helpful. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.5 How does Salt determine the Minions id? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.6 Im trying to manage packages/services but I get an error saying that the state is not available. Why? 21.7 Im using gitfs and my custom modules/states/etc are not syncing. Why? . . . . . . . . . . . . . . . 21.8 Why arent my custom modules/states/etc. available on my Minions? . . . . . . . . . . . . . . . . . 31.9 Module X isnt available, even though the shell command it uses is installed. Why? . . . . . . . . . . 3
2 Introduction to Salt 52.1 The 30 second summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Simplicity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3 Parallel execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.4 Building on proven technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.5 Python client interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.6 Fast, flexible, scalable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.7 Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 Installation 73.1 Quick Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.2 Platform-specific installation instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.3 Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.4 Optional Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4 Configuring Salt 254.1 Master Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2 Minion Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.3 Running Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.4 Key Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.5 Sending Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.6 Whats Next? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
i
5 Developing Salt 295.1 Sending a GitHub pull request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.2 Keeping Salt Forks in Sync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.3 Posting patches to the mailing list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.4 Installing Salt for development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.5 Using easy_install to Install Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.6 Editing and previewing the documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6 Targeting 376.1 Matching the minion id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376.2 Grains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386.3 Node groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.4 Compound matchers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.5 Batch Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7 Salt tutorials 437.1 Bootstrapping Salt on Linux EC2 with Cloud-Init . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437.2 Salt as a Cloud Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447.3 Using cron with Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467.4 Automatic Updates / Frozen Deployments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467.5 Opening the Firewall up for Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477.6 GitFS Backend Walkthrough . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497.7 Installing and Configuring Halite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527.8 Remote execution tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547.9 Multi Master Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567.10 Pillar Walkthrough . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577.11 Preseed Minion with Accepted Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617.12 Salt Masterless Quickstart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627.13 Standalone Minion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637.14 How Do I Use Salt States? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647.15 Understanding State Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717.16 States tutorial, part 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777.17 States tutorial, part 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797.18 States tutorial, part 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817.19 States tutorial, part 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857.20 Salt Stack Walkthrough . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
8 Access Control System 97
9 External Authentication System 999.1 Tokens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
10 Pillar of Salt 10110.1 Declaring the Master Pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10110.2 Pillar namespace flattened . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10210.3 Including Other Pillars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10210.4 Viewing Minion Pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10310.5 Pillar get Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10310.6 Refreshing Pillar Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10410.7 Targeting with Pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10410.8 Master Config In Pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
11 Master Tops System 105
12 Job Management 107
ii
12.1 The Minion proc System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10712.2 Functions in the saltutil Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10712.3 The jobs Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
13 Salt Scheduling 10913.1 Scheduler With Returner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
14 Running the Salt Master as Unprivileged User 111
15 Troubleshooting 11315.1 Running in the Foreground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11315.2 What Ports do the Master and Minion Need Open? . . . . . . . . . . . . . . . . . . . . . . . . . . . 11315.3 Using salt-call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11315.4 Too many open files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11415.5 Salt Master Stops Responding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11415.6 Salt and SELinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11515.7 Red Hat Enterprise Linux 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11515.8 Common YAML Gotchas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11515.9 Live Python Debug Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
16 YAML Idiosyncrasies 11716.1 Spaces vs Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11716.2 Indentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11716.3 True/False, Yes/No, On/Off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11816.4 Integers are Parsed as Integers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11816.5 YAML does not like Double Short Decs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11916.6 YAML support only plain ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12016.7 Underscores stripped in Integer Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
17 Community 12117.1 Mailing List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12117.2 IRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12117.3 Follow on Github . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12117.4 The Red45 Blog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12217.5 Example Salt States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12217.6 Follow on ohloh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12217.7 Other community links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12217.8 Developing Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
18 Salt Based Projects 12918.1 Salt Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
19 Salt Event System 13119.1 Listening for Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13119.2 Firing Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13219.3 Firing Events From Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
20 The Salt Mine 13320.1 Mine Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13320.2 Mine Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
21 Virtual Machine Disk Profiles 13521.1 Define More Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
22 Salt Virt - The Salt Stack Cloud Controller 13722.1 Salt Virt Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
iii
22.2 The Salt Virt Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13722.3 Based on Live State Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
23 Virtual Machine Network Profiles 13923.1 Define More Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
24 Salt SSH 14124.1 Salt SSH Roster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14124.2 Calling Salt SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14224.3 States Via Salt SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14224.4 Targeting with Salt SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
25 Salt Rosters 14325.1 How Rosters Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
26 Running The Tests 14526.1 Writing Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
27 Integration Tests 147
28 Unit Tests 149
29 Integration Tests 15129.1 Integration Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15129.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
30 Reactor System 15530.1 Event System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15530.2 Mapping Events to Reactor SLS Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15530.3 Fire an event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15630.4 Understanding the Structure of Reactor Formulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
31 Salt Formulas 15931.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15931.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16031.3 Writing Formulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
32 Salt Conventions 16732.1 Salt Formulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16732.2 SaltStack Packaging Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17332.3 Salt Release Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17732.4 Salt Coding Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
33 SaltStack Packaging Guide 18333.1 Source Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18333.2 Single Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18333.3 Split Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
34 Salt Release Process 18934.1 Feature Release Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18934.2 Maintenance and Bugfix Releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
35 Salt Coding Style 19135.1 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19135.2 Imports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19235.3 Vertical is Better . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
iv
35.4 Indenting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19335.5 Code Churn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
36 Salt Stack Git Policy 19536.1 New Code Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19536.2 Release Branching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
37 Salt Development Guidelines 19737.1 Deprecating Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19737.2 Dunder Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19837.3 External Pillars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19937.4 Logging Internals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20237.5 Modular Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20237.6 Package Providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
38 Translating Documentation 20938.1 Building A Localized Version of the Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . 209
39 Logging 21139.1 Available Configuration Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
40 External Logging Handlers 21540.1 Logstash Logging Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21540.2 Sentry Logging Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
41 Logstash Logging Handler 21941.1 UDP Logging Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21941.2 ZeroMQ Logging Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
42 Sentry Logging Handler 22142.1 Threaded Transports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
43 Introduction to Extending Salt 22343.1 Client API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22343.2 Adding Loadable Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
44 Modules 22544.1 Modules Are Easy to Write! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22544.2 Cross Calling Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22544.3 Preloaded Modules Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22644.4 Printout Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22644.5 Virtual Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22744.6 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22744.7 How Functions are Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22844.8 Useful Decorators for Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22844.9 Examples of Salt Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
45 Full list of builtin execution modules 23145.1 salt.modules.pkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23145.2 salt.modules.aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23545.3 salt.modules.alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23645.4 salt.modules.apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23745.5 salt.modules.apt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23945.6 salt.modules.archive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24445.7 salt.modules.at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24645.8 salt.modules.augeas_cfg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
v
45.9 salt.modules.bluez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24845.10 salt.modules.brew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25045.11 salt.modules.bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25145.12 salt.modules.bsd_shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25345.13 salt.modules.cassandra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25345.14 salt.modules.chocolatey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25545.15 salt.modules.cmdmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25745.16 salt.modules.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26145.17 salt.modules.cp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26245.18 salt.modules.cron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26545.19 salt.modules.daemontools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26645.20 salt.modules.darwin_sysctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26745.21 salt.modules.data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26845.22 salt.modules.ddns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26945.23 salt.modules.debconfmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26945.24 salt.modules.debian_service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27045.25 salt.modules.dig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27145.26 salt.modules.disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27245.27 salt.modules.djangomod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27345.28 salt.modules.dnsmasq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27445.29 salt.modules.dnsutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27445.30 salt.modules.dockerio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27645.31 salt.modules.dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28845.32 salt.modules.ebuild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28845.33 salt.modules.eix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29345.34 salt.modules.eselect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29345.35 salt.modules.event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29445.36 salt.modules.extfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29445.37 salt.modules.file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29645.38 salt.modules.freebsd_sysctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30745.39 salt.modules.freebsdjail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30845.40 salt.modules.freebsdkmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30945.41 salt.modules.freebsdpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31045.42 salt.modules.freebsdports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31345.43 salt.modules.freebsdservice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31445.44 salt.modules.gem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31645.45 salt.modules.gentoo_service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31845.46 salt.modules.gentoolkitmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31945.47 salt.modules.git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32145.48 salt.modules.glance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32645.49 salt.modules.grains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32745.50 salt.modules.groupadd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33045.51 salt.modules.grub_legacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33145.52 salt.modules.guestfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33145.53 salt.modules.hg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33145.54 salt.modules.hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33345.55 salt.modules.img . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33445.56 salt.modules.iptables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33445.57 salt.modules.key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33645.58 salt.modules.keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33645.59 salt.modules.keystone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33745.60 salt.modules.kmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34245.61 salt.modules.launchctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34345.62 salt.modules.layman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
vi
45.63 salt.modules.ldapmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34545.64 salt.modules.linux_acl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34645.65 salt.modules.linux_lvm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34645.66 salt.modules.linux_sysctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34845.67 salt.modules.localemod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34845.68 salt.modules.locate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34945.69 salt.modules.logrotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35045.70 salt.modules.lxc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35045.71 salt.modules.mac_group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35245.72 salt.modules.mac_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35345.73 salt.modules.makeconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35445.74 salt.modules.match . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36145.75 salt.modules.mdadm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36345.76 salt.modules.mine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36445.77 salt.modules.modjk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36545.78 salt.modules.mongodb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36845.79 salt.modules.monit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36945.80 salt.modules.moosefs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37045.81 salt.modules.mount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37045.82 salt.modules.munin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37245.83 salt.modules.mysql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37245.84 salt.modules.netbsd_sysctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37845.85 salt.modules.netbsdservice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37845.86 salt.modules.network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38045.87 salt.modules.nfs3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38245.88 salt.modules.nginx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38245.89 salt.modules.nova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38345.90 salt.modules.npm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38645.91 salt.modules.nzbget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38745.92 salt.modules.omapi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38845.93 salt.modules.openbsdpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38845.94 salt.modules.openbsdservice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38945.95 salt.modules.osxdesktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39045.96 salt.modules.pacman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39145.97 salt.modules.pam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39345.98 salt.modules.parted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39345.99 salt.modules.pecl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39745.100salt.modules.pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39745.101salt.modules.pip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39845.102salt.modules.pkg_resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40145.103salt.modules.pkgin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40245.104salt.modules.pkgng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40545.105salt.modules.pkgutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41545.106salt.modules.portage_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41745.107salt.modules.postgres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41945.108salt.modules.poudriere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42145.109salt.modules.powerpath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42345.110salt.modules.ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42345.111salt.modules.publish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42645.112salt.modules.puppet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42745.113salt.modules.pw_group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42845.114salt.modules.pw_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42845.115salt.modules.qemu_img . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43045.116salt.modules.qemu_nbd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
vii
45.117salt.modules.quota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43145.118salt.modules.rabbitmq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43245.119salt.modules.rbenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43545.120salt.modules.rdp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43745.121salt.modules.reg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43745.122salt.modules.ret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43845.123salt.modules.rh_ip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43845.124salt.modules.rh_service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44045.125salt.modules.riak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44145.126salt.modules.rpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44245.127salt.modules.rvm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44345.128salt.modules.s3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44645.129salt.modules.saltcloudmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44745.130salt.modules.saltutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44745.131salt.modules.seed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45045.132salt.modules.selinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45145.133salt.modules.service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45245.134salt.modules.shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45245.135salt.modules.smartos_imgadm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45445.136salt.modules.smartos_vmadm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45545.137salt.modules.smf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45645.138salt.modules.solaris_group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45845.139salt.modules.solaris_shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45845.140salt.modules.solaris_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45945.141salt.modules.solarispkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46145.142salt.modules.solr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46445.143salt.modules.sqlite3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47045.144salt.modules.ssh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47145.145salt.modules.state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47245.146salt.modules.status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47545.147salt.modules.supervisord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47745.148salt.modules.svn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47945.149salt.modules.sysbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48245.150salt.modules.sysmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48345.151salt.modules.system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48345.152salt.modules.systemd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48445.153salt.modules.test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48645.154salt.modules.timezone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48945.155salt.modules.tls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49045.156salt.modules.tomcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49245.157salt.modules.upstart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49645.158salt.modules.useradd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49845.159salt.modules.virt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50045.160salt.modules.virtualenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50745.161salt.modules.win_autoruns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50845.162salt.modules.win_disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50845.163salt.modules.win_dns_client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50845.164salt.modules.win_file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50945.165salt.modules.win_firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51045.166salt.modules.win_groupadd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51145.167salt.modules.win_ip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51145.168salt.modules.win_network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51345.169salt.modules.win_ntp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51545.170salt.modules.win_path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
viii
45.171salt.modules.win_pkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51645.172salt.modules.win_repo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51845.173salt.modules.win_servermanager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51945.174salt.modules.win_service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51945.175salt.modules.win_shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52145.176salt.modules.win_status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52245.177salt.modules.win_system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52245.178salt.modules.win_timezone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52445.179salt.modules.win_useradd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52545.180salt.modules.xapi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52745.181salt.modules.yumpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53145.182salt.modules.yumpkg5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53645.183salt.modules.zfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53845.184salt.modules.zpool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53945.185salt.modules.zypper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
46 Returners 54346.1 Using Returners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54346.2 Writing a Returner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
47 Full list of builtin returner modules 54547.1 salt.returners.carbon_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54547.2 salt.returners.cassandra_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54547.3 salt.returners.couchdb_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54647.4 salt.returners.local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54647.5 salt.returners.memcache_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54647.6 salt.returners.mongo_future_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54747.7 salt.returners.mongo_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54847.8 salt.returners.mysql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54847.9 salt.returners.postgres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54947.10 salt.returners.redis_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55147.11 salt.returners.sentry_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55147.12 salt.returners.smtp_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55247.13 salt.returners.sqlite3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55247.14 salt.returners.syslog_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
48 File State Backups 55548.1 Backed-up Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55548.2 Interacting with Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
49 Extending External SLS Data 55949.1 The Extend Declaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55949.2 Extend is a Top Level Declaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55949.3 The Requisite in Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56049.4 Rules to Extend By . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
50 Failhard Global Option 56150.1 State Level Failhard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56150.2 Global Failhard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
51 Highstate data structure definitions 56351.1 The Salt State Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56351.2 Large example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
52 Include and Exclude 569
ix
52.1 Include . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56952.2 Relative Include . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56952.3 Exclude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
53 State Enforcement 57153.1 State management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57153.2 Understanding the Salt State System Components . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
54 State System Layers 57754.1 Function Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57754.2 Low Chunk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57754.3 Low State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57754.4 High Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57854.5 SLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57854.6 HighState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57854.7 OverState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
55 Remote Control States 57955.1 Creating States Trigger Remote Executions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57955.2 Calling Multiple State Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
56 Ordering States 58156.1 State Auto Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58156.2 Requisite Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58156.3 The Order Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
57 OverState System 58757.1 The Over State SLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58757.2 Adding Functions To Overstate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58857.3 Executing the Over State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
58 State Providers 58958.1 Setting a Provider in the Minion Config File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58958.2 Arbitrary Module Redirects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
59 Requisites 59359.1 Requisite and Requisite in types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
60 Startup States 59960.1 Examples: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
61 State Testing 60161.1 Default Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
62 The Top File 60362.1 Environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60362.2 Other Ways of Targeting Minions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60562.3 How Top Files Are Compiled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606
63 SLS Template Variable Reference 60963.1 Salt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60963.2 Opts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60963.3 Pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60963.4 Grains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61063.5 env . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61063.6 sls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
x
64 State Modules 61164.1 States are Easy to Write! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61164.2 Using Custom State Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61164.3 Cross Calling Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61264.4 Return Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61264.5 Test State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61264.6 Watcher Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61264.7 Mod_init Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
65 Full list of builtin state modules 61565.1 salt.states.alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61765.2 salt.states.alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61765.3 salt.states.apt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61865.4 salt.states.augeas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61865.5 salt.states.cmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61965.6 salt.states.cron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62365.7 salt.states.ddns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62565.8 salt.states.debconfmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62665.9 salt.states.disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62765.10 salt.states.dockerio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62765.11 salt.states.eselect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63065.12 salt.states.file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63065.13 salt.states.gem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64365.14 salt.states.git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64365.15 salt.states.grains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64565.16 salt.states.group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64565.17 salt.states.hg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64565.18 salt.states.host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64665.19 salt.states.iptables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64765.20 salt.states.keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64765.21 salt.states.keystone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64865.22 salt.states.kmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65065.23 salt.states.layman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65065.24 salt.states.libvirt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65065.25 salt.states.locale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65165.26 salt.states.lvm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65165.27 salt.states.makeconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65265.28 salt.states.mdadm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65265.29 salt.states.modjk_worker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65365.30 salt.states.module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65465.31 salt.states.mongodb_database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65565.32 salt.states.mongodb_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65565.33 salt.states.mount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65665.34 salt.states.mysql_database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65765.35 salt.states.mysql_grants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65765.36 salt.states.mysql_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65965.37 salt.states.network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66065.38 salt.states.npm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66365.39 salt.states.ntp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66365.40 salt.states.pecl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66465.41 salt.states.pip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66465.42 salt.states.pkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66565.43 salt.states.pkgng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66865.44 salt.states.pkgrepo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
xi
65.45 salt.states.portage_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67065.46 salt.states.ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67165.47 salt.states.postgres_database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67165.48 salt.states.postgres_group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67265.49 salt.states.postgres_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67365.50 salt.states.powerpath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67365.51 salt.states.process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67465.52 salt.states.quota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67465.53 salt.states.rabbitmq_cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67465.54 salt.states.rabbitmq_plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67565.55 salt.states.rabbitmq_policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67565.56 salt.states.rabbitmq_user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67665.57 salt.states.rabbitmq_vhost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67665.58 salt.states.rbenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67765.59 salt.states.rdp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67865.60 salt.states.reg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67865.61 salt.states.rvm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67865.62 salt.states.saltmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68065.63 salt.states.selinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68265.64 salt.states.service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68265.65 salt.states.ssh_auth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68365.66 salt.states.ssh_known_hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68565.67 salt.states.stateconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68665.68 salt.states.supervisord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68665.69 salt.states.svn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68765.70 salt.states.sysctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68865.71 salt.states.timezone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68865.72 salt.states.tomcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68865.73 salt.states.user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69065.74 salt.states.virtualenv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69265.75 salt.states.win_dns_client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69265.76 salt.states.win_firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69265.77 salt.states.win_network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69365.78 salt.states.win_path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69465.79 salt.states.win_servermanager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69465.80 salt.states.win_system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
66 Renderers 69766.1 Multiple Renderers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69766.2 Composing Renderers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69866.3 Writing Renderers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69866.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698
67 Full list of builtin renderer modules 70167.1 salt.renderers.jinja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70167.2 salt.renderers.json . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70567.3 salt.renderers.mako . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70567.4 salt.renderers.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70667.5 salt.renderers.pydsl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70667.6 salt.renderers.stateconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71167.7 salt.renderers.wempy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71567.8 salt.renderers.yaml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715
68 Pillars 717
xii
69 Full list of builtin pillar modules 71969.1 salt.pillar.cmd_json . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71969.2 salt.pillar.cmd_yaml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71969.3 salt.pillar.cobbler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72069.4 salt.pillar.django_orm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72069.5 salt.pillar.git_pillar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72169.6 salt.pillar.hiera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72269.7 salt.pillar.libvirt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72269.8 salt.pillar.mongo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72369.9 salt.pillar.pillar_ldap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72469.10 salt.pillar.puppet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72469.11 salt.pillar.reclass_adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72469.12 salt.pillar.virtkey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
70 Master Tops 727
71 Full list of builtin master tops modules 72971.1 salt.tops.cobbler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72971.2 salt.tops.ext_nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72971.3 salt.tops.mongo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73071.4 salt.tops.reclass_adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
72 Salt Runners 73372.1 Writing Salt Runners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73372.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
73 Full list of runner modules 73573.1 salt.runners.cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73573.2 salt.runners.doc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73673.3 salt.runners.fileserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73673.4 salt.runners.jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73773.5 salt.runners.launchd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73773.6 salt.runners.manage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73873.7 salt.runners.network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73973.8 salt.runners.search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74073.9 salt.runners.state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74073.10 salt.runners.thin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74073.11 salt.runners.virt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74073.12 salt.runners.winrepo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741
74 Full list of builtin wheel modules 74374.1 salt.wheel.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74374.2 salt.wheel.file_roots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74374.3 salt.wheel.key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74474.4 salt.wheel.pillar_roots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744
75 Full list of builtin auth modules 74575.1 salt.auth.auto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74575.2 salt.auth.keystone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74575.3 salt.auth.ldap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74575.4 salt.auth.pam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74675.5 salt.auth.stormpath_mod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
76 Full list of builtin output modules 74976.1 salt.output.grains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749
xiii
76.2 salt.output.highstate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74976.3 salt.output.json_out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75076.4 salt.output.key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75076.5 salt.output.nested . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75076.6 salt.output.no_out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75076.7 salt.output.no_return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75076.8 salt.output.overstatestage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75176.9 salt.output.pprint_out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75176.10 salt.output.raw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75176.11 salt.output.txt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75176.12 salt.output.virt_query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75176.13 salt.output.yaml_out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752
77 Python client API 75377.1 LocalClient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75377.2 Salt Caller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75577.3 RunnerClient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75577.4 WheelClient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756
78 Peer Communication 75778.1 Peer Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75778.2 Peer Runner Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75878.3 Using Peer Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758
79 Client ACL system 75979.1 Permission Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759
80 Salt Syndic 76180.1 Configuring the Syndic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76180.2 Running the Syndic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761
81 File Server Backends 76381.1 Environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763
82 Dynamic Module Distribution 76582.1 Sync Via States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76582.2 Sync Via the saltutil Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765
83 File Server Configuration 76783.1 Environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76783.2 Directory Overlay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76783.3 Local File Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768
84 Salt File Server 76984.1 The cp Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76984.2 File Server Client API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770
85 Full list of builtin fileserver modules 77385.1 salt.fileserver.gitfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77385.2 salt.fileserver.hgfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77485.3 salt.fileserver.roots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77485.4 salt.fileserver.s3fs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
86 Configuration file examples 77786.1 Example master configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77786.2 Example minion configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
xiv
87 Configuring the Salt Master 79787.1 Primary Master Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79787.2 Master Security Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80087.3 Master Module Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80287.4 Master State System Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80287.5 Master File Server Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80387.6 Pillar Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80487.7 Syndic Server Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80587.8 Peer Publish Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80687.9 Node Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80787.10 Master Logging Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80787.11 Include Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808
88 Configuring the Salt Minion 81188.1 Minion Primary Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81188.2 Minion Module Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81588.3 State Management Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81688.4 File Directory Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81788.5 Security Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81888.6 Thread Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81988.7 Minion Logging Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81988.8 Include Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82088.9 Frozen Build Update Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821
89 Salt code and internals 82389.1 Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823
90 Network Topology 82790.1 Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82790.2 PUB/SUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82790.3 Return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
91 Windows Software Repository 82991.1 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82991.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83091.3 Generate Repo Cache File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83191.4 Install Windows Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83291.5 Uninstall Windows Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83291.6 Standalone Minion Salt Windows Repo Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83291.7 Git Hosted Repo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83291.8 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
92 Command Line Reference 83592.1 Using the Salt Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
93 salt 83993.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83993.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83993.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83993.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842
94 salt-master 84394.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84394.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84394.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843
xv
94.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844
95 salt-minion 84595.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84595.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84595.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84595.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846
96 salt-key 84796.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84796.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84796.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84796.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
97 salt-cp 85197.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85197.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85197.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85197.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852
98 salt-call 85398.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85398.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85398.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85398.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855
99 salt-run 85799.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85799.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85799.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85799.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858
100salt-ssh 859100.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859100.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859100.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859100.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861
101salt-syndic 863101.1 Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863101.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863101.3 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863101.4 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864
102Release notes and upgrade instructions 865102.1 Salt 0.10.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865102.2 Salt 0.10.2 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866102.3 Salt 0.10.3 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869102.4 Salt 0.10.4 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 872102.5 Salt 0.10.5 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873102.6 Salt 0.11.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876102.7 Salt 0.12.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878102.8 Salt 0.13.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879102.9 Salt 0.14.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881102.10Salt 0.15.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882
xvi
102.11Salt 0.15.1 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884102.12Salt 0.16.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885102.13Salt 0.16.2 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887102.14Salt 0.16.3 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890102.15Salt 0.16.4 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891102.16Salt 0.17.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891102.17Salt 0.17.1 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894102.18Salt 0.6.0 release notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899102.19Salt 0.7.0 release notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899102.20Salt 0.8.0 release notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901102.21Salt 0.8.7 release notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902102.22Salt 0.8.8 release notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904102.23Salt 0.8.9 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905102.24Salt 0.9.0 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907102.25Salt 0.9.2 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909102.26Salt 0.9.3 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910102.27Salt 0.9.4 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914102.28Salt 0.9.5 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916102.29Salt 0.9.6 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923102.30Salt 0.9.7 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924102.31Salt 0.9.8 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926102.32Salt 0.9.9 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
Python Module Index 937
xvii
xviii
CHAPTER 1
Frequently Asked Questions
FAQ
Frequently Asked Questions Is Salt open-core? What ports should I open on my firewall? My script runs every time I run a state.highstate. Why? When I run test.ping, why dont the Minions that arent responding return anything? ReturningFalse would be helpful.
How does Salt determine the Minions id? Im trying to manage packages/services but I get an error saying that the state is not available. Why? Im using gitfs and my custom modules/states/etc are not syncing. Why? Why arent my custom modules/states/etc. available on my Minions? Module X isnt available, even though the shell command it uses is installed. Why?
1.1 Is Salt open-core?
No. Salt is 100% committed to being open-source, including all of our APIs and the new Halite web interface whichwas introduced in version 0.17.0. It is developed under the Apache 2.0 license, allowing it to be used in both open andproprietary projects.
1.2 What ports should I open on my firewall?
Minions need to be able to connect to the Master on TCP ports 4505 and 4506. Minions do not need any inbound portsopen. More detailed information on firewall settings can be found here.
1.3 My script runs every time I run a state.highstate. Why?
You are probably using cmd.run rather than cmd.wait. A cmd.wait state will only run when there has been achange in a state that it is watching.
1
Salt Documentation, Release 0.17.1
A cmd.run state will run the corresponding command every time (unless it is prevented from running by the unlessor onlyif arguments).
More details can be found in the docmentation for the cmd states.
1.4 When I run test.ping, why dont the Minions that arent respond-ing return anything? Returning False would be helpful.
When you run test.ping the Master tells Minions to run commands/functions, and listens for the return data, printingit to the screen when it is received. If it doesnt receive anything back, it doesnt have anything to display for thatMinion.
There are a couple options for getting information on Minions that are not responding. One is to use the verbose (-v)option when you run salt commands, as it will display Minion did not return for any Minions which time out.
salt -v * pkg.install zsh
Another option is to use the manage.down runner:
salt-run manage.down
1.5 How does Salt determine the Minions id?
If the Minion id is not configured explicitly (using the id parameter), Salt will determine the id based on the hostname.Exactly how this is determined varies a little between operating systems and is described in detail here.
1.6 Im trying to manage packages/services but I get an error sayingthat the state is not available. Why?
Salt detects the Minions operating system and assigns the correct package or service management module based onwhat is detected. However, for certain custom spins and OS derivatives this detection fails. In cases like this, an issueshould be opened on our tracker, with the following information:
1. The output of the following command:
salt grains.items | grep os
2. The contents of /etc/lsb-release, if present on the Minion.
1.7 Im using gitfs and my custom modules/states/etc are not sync-ing. Why?
In versions of Salt 0.16.3 or older, there is a bug in gitfs which can affect the syncing of custom types. Upgrading to0.16.4 or newer will fix this.
2 Chapter 1. Frequently Asked Questions
Salt Documentation, Release 0.17.1
1.8 Why arent my custom modules/states/etc. available on my Min-ions?
Custom modules are only synced to Minions when state.highstate, saltutil.sync_modules, orsaltutil.sync_all is run. Similarly, custom states are only synced to Minions when state.highstate,saltutil.sync_states, or saltutil.sync_all is run.
Other custom types (renderers, outputters, etc.) have similar behavior, see the documentation for the saltutilmodule for more information.
1.9 Module X isnt available, even though the shell command it usesis installed. Why?
This is most likely a PATH issue. Did you custom-compile the software which the module requires?RHEL/CentOS/etc. in particular override the root users path in /etc/init.d/functions, setting it to/sbin:/usr/sbin:/bin:/usr/bin, making software installed into /usr/local/bin unavailable to Saltwhen the Minion is started using the initscript. In version 0.18.0, Salt will have a better solution for these sort ofPATH-related issues, but recompiling the software to install it into a location within the PATH should resolve the issuein the meantime. Alternatively, you can create a symbolic link within the PATH using a file.symlink state.
/usr/bin/foo:file.symlink:- target: /usr/local/bin/foo
1.8. Why arent my custom modules/states/etc. available on my Minions? 3
Salt Documentation, Release 0.17.1
4 Chapter 1. Frequently Asked Questions
CHAPTER 2
Introduction to Salt
Were not just talking about NaCl.
2.1 The 30 second summary
Salt is:
a configuration management system, capable of maintaining remote nodes in defined states (for example, ensur-ing that specific packages are installed and specific services are running)
a distributed remote execution system used to execute commands and query data on remote nodes, either indi-vidually or by arbitrary selection criteria
It was developed in order to bring the best solutions found in the world of remote execution together and make thembetter, faster, and more malleable. Salt accomplishes this through its ability to handle large loads of information,and not just dozens but hundreds and even thousands of individual servers quickly through a simple and manageableinterface.
2.2 Simplicity
Providing versatility between massive scale deployments and smaller systems may seem daunting, but Salt is verysimple to set up and maintain, regardless of the size of the project. The architecture of Salt is designed to workwith any number of servers, from a handful of local network systems to international deployments across differentdatacenters. The topology is a simple server/client model with the needed functionality built into a single set ofdaemons. While the default configuration will work with little to no modification, Salt can be fine tuned to meetspecific needs.
2.3 Parallel execution
The core functions of Salt:
enable commands to remote systems to be called in parallel rather than serially
use a secure and encrypted protocol
use the smallest and fastest network payloads possible
5
Salt Documentation, Release 0.17.1
provide a simple programming interface
Salt also introduces more granular controls to the realm of remote execution, allowing systems to be targeted not justby hostname, but also by system properties.
2.4 Building on proven technology
Salt takes advantage of a number of technologies and techniques. The networking layer is built with the excellentZeroMQ networking library, so the Salt daemon includes a viable and transparent AMQ broker. Salt uses public keysfor authentication with the master daemon, then uses faster AES encryption for payload communication; authenticationand encryption are integral to Salt. S