From b12eeec85f07ab26d95f073c208557764b81aade Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 28 Aug 2012 20:48:25 -0400 Subject: [PATCH] Rebuild --- api.html | 22 ++++-- bestpractices.html | 30 +++++--- examples.html | 37 +++++++--- faq.html | 50 +++++++++---- gettingstarted.html | 25 +++++-- moduledev.html | 40 ++++++++--- modules.html | 170 +++++++++++++++++++++----------------------- patterns.html | 31 +++++--- playbooks.html | 33 +++++++-- playbooks2.html | 73 +++++++++++++------ searchindex.js | 2 +- 11 files changed, 330 insertions(+), 183 deletions(-) diff --git a/api.html b/api.html index 8fd017a87d..02f40a73bd 100644 --- a/api.html +++ b/api.html @@ -187,15 +187,25 @@ s.parentNode.insertBefore(ga, s);
-

API & Integrations

+

API & Integrations

There are two major ways to use Ansible from an API perspective. The primary way is to use the Ansible python API to control nodes. Ansible is written in its own API so you have a considerable amount of power there.

Also covered here, Ansible’s list of hosts, groups, and variables assigned to each host can be driven from external sources. We’ll start with the Python API.

+
+

Table of contents

+ +
-

Python API

+

Python API

The Python API is very powerful, and is how the ansible CLI and ansible-playbook are implemented.

It’s pretty simple:

@@ -263,7 +273,7 @@ command line tools ansible
-

External Inventory

+

External Inventory

Often a user of a configuration management system will want to keep inventory in a different system. Frequent examples include LDAP, Cobbler, or a piece of expensive enterprisey CMDB software. Ansible easily supports all @@ -422,9 +432,9 @@ e.g.

Both ec2_security_group_ids and ec2_security_group_names are comma-separated lists of all security groups. Each EC2 tag is a variable in the format ec2_tag_KEY.

To see the complete list of variables available for an instance, run the script by itself:

-
-
cd examples/scripts -./ec2_external_inventory.py –host ec2-12-12-12-12.compute-1.amazonaws.com
+
cd examples/scripts
+./ec2_external_inventory.py --host ec2-12-12-12-12.compute-1.amazonaws.com
+

See also

diff --git a/bestpractices.html b/bestpractices.html index 10efe634a4..55d35cb3a6 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -182,24 +182,37 @@ s.parentNode.insertBefore(ga, s);
-

Best Practices

+

Best Practices

Here are some tips for making the most of Ansible.

+
-

Always Mention State

+

Always Mention State

The ‘state’ parameter is optional to a lot of modules. Whether ‘state=present’ or ‘state=absent’, it’s always best to leave that parameter in your playbooks to make it clear, especially as some modules support additional states.

-

Group By Roles

+

Group By Roles

A system can be in multiple groups. See Inventory & Patterns. Having groups named after things like webservers and dbservers is repeated in the examples because it’s a very powerful concept.

This allows playbooks to target machines based on role, as well as to assign role specific variables using the group variable system.

-

Directory Organization

+

Directory Organization

Playbooks should be organized like this:

# root of source control repository
 ├── acme/
@@ -240,14 +253,9 @@ these sections do, see P
 are contained in ‘acme/handlers/main.yml’.  As a reminder, handlers are mostly just used to notify services to restart
 when things change, and these are described in Playbooks.

Including more than one setup file or more than one handlers file is of course legal.

-

Having playbooks be able to include other playbooks is coming in a -future release. See Issue 538.

-

Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. -You don’t have to do this though. It’s fine to select sections of your infrastructure to manage at a single time. -You may wish to construct simple shell scripts to wrap calls to ansible-playbook.

-

Bundling Ansible Modules With Playbooks

+

Bundling Ansible Modules With Playbooks

New in version 0.5.

If a playbook has a ”./library” directory relative to it’s YAML file, @@ -256,7 +264,7 @@ automatically be in the ansible module path. This is a great way to keep modules that go with a playbook together.

-

Miscellaneous Tips

+

Miscellaneous Tips

When you can do something simply, do something simply. Do not reach to use every feature of Ansible together, all at once. Use what works for you. For example, you should probably not need ‘vars’, diff --git a/examples.html b/examples.html index 62afb9b382..ee3a287fe1 100644 --- a/examples.html +++ b/examples.html @@ -186,14 +186,31 @@ s.parentNode.insertBefore(ga, s);

-

Command Line Examples And Next Steps

+

Command Line Examples And Next Steps

The following examples show how to use /usr/bin/ansible for running ad hoc tasks. Start here.

For configuration management and deployments, you’ll want to pick up on using /usr/bin/ansible-playbook – the concepts port over directly. (See Playbooks for more information about those)

+
-

Parallelism and Shell Commands

+

Parallelism and Shell Commands

Let’s use ansible’s command line tool to reboot all web servers in Atlanta, 10 at a time. First, let’s set up SSH-agent so it can remember our credentials:

$ ssh-agent bash
@@ -257,7 +274,7 @@ get it there.  This is commonly referred to as ‘idempotence’, and is
 However, we also recognize that running ad hoc commands is equally important, so Ansible easily supports both.

-

File Transfer

+

File Transfer

Here’s another use case for the /usr/bin/ansible command line. Ansible can SCP lots of files to multiple machines in parallel.

To transfer a file directly to many different servers:

$ ansible atlanta -m copy -a "src=/etc/hosts dest=/tmp/hosts"
@@ -281,7 +298,7 @@ same options can be passed directly to the 
 
-

Managing Packages

+

Managing Packages

There are modules available for yum and apt. Here are some examples with yum.

Ensure a package is installed, but don’t update it:

@@ -305,7 +322,7 @@ for other packages for now using the command module or (better!) contribute a mo for other package managers. Stop by the mailing list for info/details.

-

Users and Groups

+

Users and Groups

The user module allows easy creation and manipulation of existing user accounts, as well as removal of user accounts that may exist:

@@ -318,7 +335,7 @@ exist:

how to manipulate groups and group membership.

-

Deploying From Source Control

+

Deploying From Source Control

Deploy your webapp straight from git:

$ ansible webservers -m git -a "repo=git://foo.example.org/repo.git dest=/srv/myapp version=HEAD"
 
@@ -329,7 +346,7 @@ deploying Perl/Python/PHP/Ruby directly from git and then restarting apache.

-

Managing Services

+

Managing Services

Ensure a service is started on all webservers:

$ ansible webservers -m service -a "name=httpd state=started"
 
@@ -344,7 +361,7 @@ apache.

-

Time Limited Background Operations

+

Time Limited Background Operations

Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won’t lose track. If you kick hosts and don’t want @@ -370,7 +387,7 @@ the remote nodes will be terminated.

shell commands or software upgrades only. Backgrounding the copy module does not do a background file transfer. Playbooks also support polling, and have a simplified syntax for this.

-

Limiting Selected Hosts

+

Limiting Selected Hosts

New in version 0.7.

What hosts you select to manage can be additionally constrained by using the ‘–limit’ parameter or @@ -394,7 +411,7 @@ what their names or IP addresses are).

Both of these methods can be used at the same time, and ranges can also be passed to the –limit parameter.

-

Configuration & Defaults

+

Configuration & Defaults

New in version 0.7.

Ansible has an optional configuration file that can be used to tune settings and also eliminate the need to pass various command line flags. The config file location is controlled by the ANSIBLE_CONFIG environment variable, if set, otherwise ~/.ansible.cfg or /etc/ansible/ansible.cfg will be loaded, whichever comes first. For those running from source, a sample configuration file lives in the examples/ directory. The RPM will install configuration into /etc/ansible/ansible.cfg automatically.

diff --git a/faq.html b/faq.html index 16dba55af4..c5f309be3d 100644 --- a/faq.html +++ b/faq.html @@ -193,14 +193,38 @@ s.parentNode.insertBefore(ga, s);
-

FAQ

+

FAQ

+
-

Why Is It Called Ansible?

+

Why Is It Called Ansible?

One of my favorite books is Orson Scott Card’s “Ender’s Game”. In the book, the Ansible is a method of instantaneous long distance “hyperspace” communication with a large number of space ships. You should read it!

-

What inspired Ansible?

+

What inspired Ansible?

Back when I worked for Red Hat and working on Cobbler, several of us identified a gap between provisioning (Cobbler) and configuration management solutions (cfengine, Puppet, etc). There was a need for a way to do ad-hoc tasks efficiently, and various parallel @@ -232,9 +256,9 @@ best’, and distills all of the ideas behind all of these other tools to th

I’d like to know what you think of it. Hop by the mailing list and say hi.

-

Comparisons

+

Comparisons

-

vs Func?

+

vs Func?

Ansible uses SSH by default instead of SSL and custom daemons, and requires no extra software to run on managed machines. You can also write modules in any language as long as they return JSON. Ansible’s API, of course, is @@ -243,7 +267,7 @@ a configuration management and multinode orchestration layer ( -

vs Puppet?

+

vs Puppet?

First off, Ansible wouldn’t have happened without Puppet. Puppet took configuration management ideas from cfengine and made them sane. However, I still think they can be much simpler.

@@ -271,7 +295,7 @@ in jinja2 in a way just like Puppet does with erb. Ansible also has it’s so usage of facter is not required to get variables about the system.

-

vs Chef?

+

vs Chef?

Much in the ways Ansible is different from Puppet. Chef is notoriously hard to set up on the server, and requires that you know how to program in Ruby to use the language. As such, it seems to have a pretty good following mainly @@ -292,7 +316,7 @@ submit a patch or module.

has it’s own facts so you do not need to use ohai unless you want to.

-

vs Capistrano/Fabric?

+

vs Capistrano/Fabric?

These tools aren’t really well suited to doing idempotent configuration and are typically about pushing software out for web deployment and automating steps.

Meanwhile Ansible is designed for other types of configuration management, and contains some @@ -303,9 +327,9 @@ useful for sysadmins (not just web developers), and can also be used for firing

-

Other Questions

+

Other Questions

-

What is Ansible’s approach to security?

+

What is Ansible’s approach to security?

Ansible aims to not develop custom daemon or PKI code but rely heavily on OpenSSH, which is extremely well peer reviewed and the most widely used security subsystem in the industry. As a result, Ansible has a lower attack surface than any configuration management tool featuring daemons that run @@ -320,7 +344,7 @@ free RAM and compute resources, which should be relevant to users wanting to max computing investments.

-

How does Ansible scale?

+

How does Ansible scale?

Whether in single-execution mode or using ansible playbooks, ansible can run multiple commands in seperate parallel forks, thanks to the magic behind Python’s multiprocessing module.

@@ -345,7 +369,7 @@ model.

If you’d like to discuss scaling strategies further, please hop on the mailing list.

-

Are transports other than SSH supported?

+

Are transports other than SSH supported?

Currently SSH (you can choose between paramiko or the openssh binaries) and local connections are supported. The interface is actually pluggable so a small patch could bring transport over message bus or XMPP as an option.

@@ -353,7 +377,7 @@ small patch could bring transport over message bus or XMPP as an option.

are all abstracted away from the core implementation so it is very easy to extend.

-

What are some ideal uses for Ansible?

+

What are some ideal uses for Ansible?

One of the best use cases? Complex multi-node cloud deployments using playbooks. Another good example is for configuration management where you are starting from a clean OS with no extra software installed, adopting systems diff --git a/gettingstarted.html b/gettingstarted.html index 2e38545bfe..274224338c 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -189,9 +189,22 @@ s.parentNode.insertBefore(ga, s);

-

Getting Started

+

Getting Started

+
-

Requirements

+

Requirements

Requirements for Ansible are extremely minimal.

Ansible is written for Python 2.6. If you are running Python 2.5 on an “Enterprise Linux” variant, your distribution can easily install 2.6 (see instructions in the next section). Newer versions @@ -218,7 +231,7 @@ though.)

-

Python 2.6 EPEL instructions for RHEL and CentOS 5

+

Python 2.6 EPEL instructions for RHEL and CentOS 5

These distributions don’t have Python 2.6 by default, but it is easily installable. If you have not already done so, configure EPEL

$ yum install python26 python26-PyYAML python26-paramiko python26-jinja2
@@ -226,7 +239,7 @@ installable. If you have not already done so, 
 
-

Getting Ansible

+

Getting Ansible

If you are interested in using all the latest features, you may wish to keep up to date with the development branch of the git checkout. This also makes it easiest to contribute back to the project.

@@ -310,7 +323,7 @@ project page:

-

Choosing Between Paramiko and Native SSH

+

Choosing Between Paramiko and Native SSH

By default, ansible uses paramiko to talk to managed nodes over SSH. Paramiko is fast, works very transparently, requires no configuration, and is a good choice for most users. However, it does not support some advanced SSH features that folks will want to use.

@@ -327,7 +340,7 @@ are roughly the same speed. Without CM, the binary ssh transport is signficantl

If none of this makes sense to you, the default paramiko option is probably fine.

-

Your first commands

+

Your first commands

Now that you’ve installed Ansible, it’s time to test it.

Edit (or create) /etc/ansible/hosts and put one or more remote systems in it, for which you have your SSH key in authorized_keys:

diff --git a/moduledev.html b/moduledev.html index d82c497062..33f4d89e60 100644 --- a/moduledev.html +++ b/moduledev.html @@ -187,13 +187,31 @@ s.parentNode.insertBefore(ga, s);
-

Module Development

+

Module Development

Ansible modules are reusable units of magic that can be used by the Ansible API, or by the ansible or ansible-playbook programs.

Modules can be written in any language and are found in the path specified by ANSIBLE_LIBRARY_PATH or the --module-path command line option.

+
-

Tutorial

+

Tutorial

Let’s build a module to get and set the system time. For starters, let’s build a module that just outputs the current time.

We are going to use Python here but any language is possible. Only File I/O and outputing to standard @@ -223,7 +241,7 @@ you’ll turn to stone. Nobody ever executes async_wrapper directly.

-

Testing Modules

+

Testing Modules

There’s a useful test script in the source checkout for ansible:

git clone git@github.com:ansible/ansible.git
 chmod +x ansible/hacking/test-module
@@ -238,7 +256,7 @@ chmod +x ansible/hacking/test-module

If you did not, you might have a typo in your module, so recheck it and try again.

-

Reading Input

+

Reading Input

Let’s modify the module to allow setting the current time. We’ll do this by seeing if a key value pair in the form time=<string> is passed in to the module.

Ansible internally saves arguments to an arguments file. So we must read the file @@ -342,7 +360,7 @@ a lot shorter than this:

-

Module Provided ‘Facts’

+

Module Provided ‘Facts’

The ‘setup’ module that ships with Ansible provides many variables about a system that can be used in playbooks and templates. However, it’s possible to also add your own facts without modifying the system module. To do this, just have the module return a ansible_facts key, like so, along with other return data:

@@ -363,7 +381,7 @@ A good idea might be make a module called ‘site_facts’ and always ca we’re always open to improving the selection of core facts in Ansible as well.

-

Common Module Boilerplate

+

Common Module Boilerplate

As mentioned, if you are writing a module in Python, there are some very powerful shortcuts you can use. Modules are still transferred as one file, but an arguments file is no longer needed, so these are not only shorter in terms of code, they are actually FASTER in terms of execution time.

@@ -405,7 +423,7 @@ can function outside of Ansible.

class is required.

-

Common Pitfalls

+

Common Pitfalls

You should also never do this in a module:

print "some status message"
 
@@ -422,7 +440,7 @@ will still be shown in Ansible, but the command will not succeed.

you about these kind of things.

-

Conventions/Recomendations

+

Conventions/Recomendations

As a reminder from the example code above, here are some basic conventions and guidelines:

    @@ -439,7 +457,7 @@ and guidelines:

-

Shorthand Vs JSON

+

Shorthand Vs JSON

To make it easier to write modules in bash and in cases where a JSON module might not be available, it is acceptable for a module to return key=value output all on one line, like this. The Ansible parser @@ -450,7 +468,7 @@ will know what to do:

JSON is probably the simplest way to go.

-

Sharing Your Module

+

Sharing Your Module

If you think your module is generally useful to others, a good place to share it is in Ansible Resources. This is maintained as a simple repo with pointers to other github projects.

@@ -459,7 +477,7 @@ We would like to build up as many of these as possible in as many languages as p

Ansible Mailing List

-

Getting Your Module Into Core

+

Getting Your Module Into Core

High-quality modules with minimal dependencies can be included in the core, but core modules (just due to the programming preferences of the developers) will need to be implemented in Python and use diff --git a/modules.html b/modules.html index 1e9fc96fd2..f7b2318481 100644 --- a/modules.html +++ b/modules.html @@ -149,6 +149,7 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page

  • Ansible Modules
      +
    • Introduction
    • apt_repository
    • apt
    • assemble
    • @@ -211,7 +212,52 @@ s.parentNode.insertBefore(ga, s);
      -

      Ansible Modules

      +

      Ansible Modules

      + +
      +

      Introduction

      Ansible ships with a number of modules (called the ‘module library’) that can be executed directly on remote hosts or through Playbooks. Users can also write their own modules. These modules can control system @@ -237,61 +283,9 @@ not have to write modules in any particular language – you get to choose.< playbooks, these modules can trigger ‘change events’ in the form of notifying ‘handlers’ to run additional tasks.

      Let’s see what’s available in the Ansible module library, out of the box:

      - ----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      apt_repositoryaptassemble
      authorized_keycommandcopy
      easy_installfacterfetch
      fileget_urlgit
      groupmountmysql_db
      mysql_usernagiosohai
      pingpippostgresql_db
      postgresql_userrawservice
      setupshellsupervisorctl
      templateuservirt
      yum  
      +
      -

      apt_repository

      +

      apt_repository

      New in version 0.7.

      Manages apt repositores

      @@ -328,7 +322,7 @@ apt_repository repo='deb http://archive.canonical.com/ubuntu hardy partner'
      -

      apt

      +

      apt

      Manages apt-packages (such as for Debian/Ubuntu).

      @@ -395,7 +389,7 @@ apt pkg=openjdk-6-jdk state=latest install-recommends=no
      -

      assemble

      +

      assemble

      New in version 0.5.

      Assembles a configuration file from fragments. Often a particular @@ -442,7 +436,7 @@ sorting order. Puppet calls this idea “fragments”.

      -

      authorized_key

      +

      authorized_key

      New in version 0.5.

      Adds or removes an authorized key for a user from a remote host.

      @@ -483,7 +477,7 @@ sorting order. Puppet calls this idea “fragments”.

      -

      command

      +

      command

      The command module takes the command name followed by a list of arguments, space delimited.

      @@ -538,7 +532,7 @@ the user’s environment.

      The creates= and chdir options will not be passed to the actual executable.

      -

      copy

      +

      copy

      The copy module moves a file on the local box to remote locations. In addition to the options listed below, the arguments available to the file module can also be passed to the copy module.

      @@ -580,7 +574,7 @@ relative.
      -

      easy_install

      +

      easy_install

      New in version 0.7.

      The easy_install module installs Python libraries.

      @@ -624,7 +618,7 @@ easy_install name=flask virtualenv=/srv/webapps/my_app/venv
      -

      facter

      +

      facter

      Runs the discovery program ‘facter’ on the remote system, returning JSON data that can be useful for inventory purposes.

      Requires that ‘facter’ and ‘ruby-json’ be installed on the remote end.

      @@ -635,7 +629,7 @@ module behind the scenes.

      -

      fetch

      +

      fetch

      This module works like ‘copy’, but in reverse. It is used for fetching files from remote machines and storing them locally in a file tree, organized by hostname.

      @@ -673,7 +667,7 @@ be saved into ‘/foo/host.example.com/tmp/bar’
      -

      file

      +

      file

      Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories. Many other modules support the same options as the file module – including ‘copy’, ‘template’, and ‘assmeble’.

      @@ -771,7 +765,7 @@ file path=/some/path state=directory context=default
      -

      get_url

      +

      get_url

      Downloads files from http, https, or ftp to the remote server. The remote server must have direct access to the remote resource.

      @@ -821,7 +815,7 @@ small local files. prior to 0.6, acts if ‘yes’ by default.
      -

      git

      +

      git

      Deploys software (or files) from git checkouts.

      @@ -872,7 +866,7 @@ discarded. Prior to 0.7, this was always ‘yes’ and could not be dis
      -

      group

      +

      group

      Adds or removes groups.

      @@ -917,7 +911,7 @@ discarded. Prior to 0.7, this was always ‘yes’ and could not be dis
      -

      mount

      +

      mount

      New in version 0.6.

      The mount module controls active and configured mount points (fstab).

      @@ -977,7 +971,7 @@ configured in fstab. ‘absent’, and ‘present’ only deal
      -

      mysql_db

      +

      mysql_db

      New in version 0.6.

      Add or remove MySQL databases from a remote host.

      @@ -1044,7 +1038,7 @@ finally fall back to using the MySQL default login of ‘root’ with no
      -

      mysql_user

      +

      mysql_user

      New in version 0.6.

      Adds or removes a user from a MySQL database.

      @@ -1122,7 +1116,7 @@ finally fall back to using the MySQL default login of ‘root’ with no
-

nagios

+

nagios

New in version 0.7.

Perform common tasks in Nagios related to downtime and notifications.

@@ -1294,7 +1288,7 @@ receive this error if that is the case:

-

ohai

+

ohai

Similar to the facter module, this returns JSON inventory data. Ohai data is a bit more verbose and nested than facter.

Requires that ‘ohai’ be installed on the remote end.

@@ -1305,7 +1299,7 @@ Ohai data is a bit more verbose and nested than facter.

-

ping

+

ping

A trivial test module, this module always returns ‘pong’ on successful contact. It does not make sense in playbooks, but is useful from /usr/bin/ansible:

@@ -1313,7 +1307,7 @@ from /usr/bin/ansible:

-

pip

+

pip

New in version 0.7.

Manages Python library dependencies.

@@ -1371,7 +1365,7 @@ pip requirements=/srv/webapps/my_app/src/requirements.txt virtualenv=/srv/webapp
-

postgresql_db

+

postgresql_db

New in version 0.6.

Add or remove PostgreSQL databases from a remote host.

@@ -1435,7 +1429,7 @@ host before using this module.

-

postgresql_user

+

postgresql_user

New in version 0.6.

Add or remove PostgreSQL users (roles) from a remote host and, optionally, grant the users @@ -1532,7 +1526,7 @@ happened and separately if the user was removed or not.

-

raw

+

raw

Executes a low-down and dirty SSH command, not going through the module subsystem.

This is useful and should only be done in two cases. The first case is installing python-simplejson on older (python 2.4 and before) hosts that need it as a dependency @@ -1547,7 +1541,7 @@ for this module.

-

service

+

service

Controls services on remote machines.

@@ -1600,7 +1594,7 @@ service name=foo pattern=/usr/bin/foo state=started
-

setup

+

setup

This module is automatically called by playbooks to gather useful variables about remote hosts that can be used in playbooks. It can also be executed directly by /usr/bin/ansible to check what variables are available to a host.

@@ -1682,7 +1676,7 @@ on your remote systems.

-

shell

+

shell

The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module but runs the command through the user’s configured shell on the remote node.

@@ -1732,7 +1726,7 @@ your best judgement.

-

subversion

+

subversion

New in version 0.7.

Deploys a subversion repository.

@@ -1774,7 +1768,7 @@ discarded. If no, this module will fail if it encounters modified files.
-

supervisorctl

+

supervisorctl

New in version 0.7.

Manage the state of a program or group of programs running via Supervisord

@@ -1810,7 +1804,7 @@ discarded. If no, this module will fail if it encounters modified files.
-

template

+

template

Templates a file out to a remote server.

@@ -1850,7 +1844,7 @@ a relative or absolute path.
-

user

+

user

Creates user accounts, manipulates existing user accounts, and removes user accounts.

@@ -1949,7 +1943,7 @@ user name=mdehaan state=absent force=yes
-

virt

+

virt

Manages virtual machines supported by libvirt. Requires that libvirt be installed on the managed machine.

@@ -2009,7 +2003,7 @@ ansible host -m virt -a "command=virttype"
-

yum

+

yum

Will install, upgrade, remove, and list packages with the yum package manager.

@@ -2051,11 +2045,11 @@ yum name=httpd state=installed
-

Additional Contrib Modules

+

Additional Contrib Modules

In addition to the following built-in modules, community modules are available at Ansible Resources.

-

Writing your own modules

+

Writing your own modules

See Module Development.

See also

diff --git a/patterns.html b/patterns.html index a889b26ba3..ded022b3d3 100644 --- a/patterns.html +++ b/patterns.html @@ -184,12 +184,27 @@ s.parentNode.insertBefore(ga, s);
-

Inventory & Patterns

+

Inventory & Patterns

Ansible works against multiple systems in your infrastructure at the same time. It does this by selecting portions of systems listed in Ansible’s inventory file, which defaults to /etc/ansible/hosts.

+
-

Hosts and Groups

+

Hosts and Groups

The format for /etc/ansible/hosts is an INI format and looks like this:

mail.example.com
 
@@ -217,7 +232,7 @@ after the hostname with a colon.

Leading zeros can be included or removed, as desired, and the ranges are inclusive.

-

Selecting Targets

+

Selecting Targets

We’ll go over how to use the command line in Command Line Examples And Next Steps section, however, basically it looks like this:

ansible <pattern_goes_here> -m <module_name> -a <arguments>
@@ -256,7 +271,7 @@ wildcards:

Easy enough. See Command Line Examples And Next Steps and then Playbooks for how to do things to selected hosts.

-

Host Variables

+

Host Variables

It is easy to assign variables to hosts that will be used later in playbooks:

[atlanta]
 host1 http_port=80 maxRequestsPerChild=808
@@ -264,7 +279,7 @@ host2 http_port=303 maxRequestsPerChild=909
-

Group Variables

+

Group Variables

Variables can also be applied to an entire group at once:

[atlanta]
 host1
@@ -276,7 +291,7 @@ proxy=proxy.atlanta.example.com
-

Groups of Groups, and Group Variables

+

Groups of Groups, and Group Variables

It is also possible to make groups of groups and assign variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not /usr/bin/ansible:

@@ -308,7 +323,7 @@ southeast seperate from the inventory file, see the next section.

-

Splitting Out Host and Group Specific Data

+

Splitting Out Host and Group Specific Data

New in version 0.6.

In addition to the storing variables directly in the INI file, host @@ -339,7 +354,7 @@ variable called ‘ansible_python_interpreter’ to the Python interpreter path you would like to use.

-

YAML Inventory

+

YAML Inventory

Deprecated since version 0.7.

Ansible’s YAML inventory format is deprecated and will be removed in diff --git a/playbooks.html b/playbooks.html index aa4ada3ba3..c76695f383 100644 --- a/playbooks.html +++ b/playbooks.html @@ -149,6 +149,7 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page

  • Playbooks
      +
    • Introduction
    • Playbook Language Example
    • Basics
      • Hosts and Users
      • @@ -188,7 +189,24 @@ s.parentNode.insertBefore(ga, s);
        -

        Playbooks

        +

        Playbooks

        + +
        +

        Introduction

        Playbooks are a completely different way to use ansible than in task execution mode, and are particularly powerful. Simply put, playbooks are the basis for a really simple configuration management and multi-machine deployment system, @@ -204,8 +222,9 @@ remote systems are in spec.

        Let’s dive in and see how they work. As you go, you may wish to open the github examples directory in another tab, so you can apply the theory to what things look like in practice.

        +
        -

        Playbook Language Example

        +

        Playbook Language Example

        Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed of one or more ‘plays’ in a list.

        The goal of a play is map a group of hosts to some well defined roles, represented by @@ -238,7 +257,7 @@ server group, then more commands back on the webservers group, etc.

        Below, we’ll break down what the various features of the playbook language are.

        -

        Basics

        +

        Basics

        Hosts and Users

        For each play in a playbook, you get to choose which machines in your infrastructure @@ -378,7 +397,7 @@ make more sense to break up tasks using the ‘include:’ directive. W

        -

        Running Operations On Change

        +

        Running Operations On Change

        As we’ve mentioned, modules are written to be ‘idempotent’ and can relay when they have made a change on the remote system. Playbooks recognize this and have a basic event system that can be used to respond to change.

        @@ -415,7 +434,7 @@ won’t need them for much else.

        -

        Include Files And Encouraging Reuse

        +

        Include Files And Encouraging Reuse

        Suppose you want to reuse lists of tasks between plays or playbooks. You can use include files to do this. Use of included task lists is a great way to define a role that system is going to fulfill. Remember, the goal of a play in a playbook is to map @@ -477,14 +496,14 @@ ability for hosts to conditionally skip tasks).

-

Executing A Playbook

+

Executing A Playbook

Now that you’ve learned playbook syntax, how do you run a playbook? It’s simple. Let’s run a playbook using a parallelism level of 10:

ansible-playbook playbook.yml -f 10
-

Tips and Tricks

+

Tips and Tricks

Look at the bottom of the playbook execution for a summary of the nodes that were executed and how they performed. General failures and fatal “unreachable” communication attempts are kept seperate in the counts.

diff --git a/playbooks2.html b/playbooks2.html index 2ce1fd4d65..241cf4dbdc 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -198,13 +198,42 @@ s.parentNode.insertBefore(ga, s);
-

Advanced Playbooks

+

Advanced Playbooks

Here are some advanced features of the playbooks language. Using all of these features are not neccessary, but many of them will prove useful. If a feature doesn’t seem immediately relevant, feel free to skip it. For many people, the features documented in playbooks will be 90% or more of what they use in Ansible.

+
-

Tags

+

Tags

New in version 0.6.

If you have a large playbook it may become useful to be able to run a @@ -229,7 +258,7 @@ specific part of the configuration. Both plays and tasks support a

-

Playbooks Including Playbooks

+

Playbooks Including Playbooks

New in version 0.6.

To further advance the concept of include files, playbook files can @@ -245,7 +274,7 @@ all of your systems like this:

what parts of those plays.

-

Ignoring Failed Commands

+

Ignoring Failed Commands

Deprecated since version 0.6.

Generally playbooks will stop executing any more steps on a host that @@ -257,7 +286,7 @@ write a task that looks like this:

-

Accessing Complex Variable Data

+

Accessing Complex Variable Data

Some provided facts, like networking information, are made available as nested data structures. To access them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address:

${ansible_eth0.ipv4.address}
@@ -272,7 +301,7 @@ that is preferred:

-

Accessing Information About Other Hosts

+

Accessing Information About Other Hosts

If your database server wants to check the value of a ‘fact’ from another node, or an inventory variable assigned to another node, it’s easy to do so within a template or even an action line:

${hostvars.hostname.factname}
@@ -302,7 +331,7 @@ period.

Don’t worry about any of this unless you think you need it. You’ll know when you do.

-

Variable File Seperation

+

Variable File Seperation

It’s a great idea to keep your playbooks under source control, but you may wish to make the playbook source public while keeping certain important variables private. Similarly, sometimes you may just @@ -335,7 +364,7 @@ similar files, this is covered in -

Prompting For Sensitive Data

+

Prompting For Sensitive Data

You may wish to prompt the user for certain input, and can do so with the similarly named ‘vars_prompt’ section. This has uses beyond security, for instance, you may use the same playbook for all @@ -364,7 +393,7 @@ some other options, but otherwise works equivalently:

-

Passing Variables On The Command Line

+

Passing Variables On The Command Line

In addition to vars_prompt and vars_files, it is possible to send variables over the ansible command line. This is particularly useful when writing a generic release playbook where you may want to pass in the version of the application to deploy:

@@ -382,7 +411,7 @@ ansible-playbook release.yml --extra-vars "hosts=vipers user=starbuck"
-

Conditional Execution

+

Conditional Execution

Sometimes you will want to skip a particular step on a particular host. This could be something as simple as not installing a certain package if the operating system is a particular version, or it could be something like performing some cleanup steps if a filesystem is getting full.

@@ -417,7 +446,7 @@ there will be accessible to future tasks:

-

Conditional Imports

+

Conditional Imports

Sometimes you will want to do certain things differently in a playbook based on certain criteria. Having one playbook that works on multiple platforms and OS versions is a good example.

As an example, the name of the Apache package may be different between CentOS and Debian, @@ -463,7 +492,7 @@ in more streamlined & auditable configuration rules – especially becau minimum of decision points to track.

-

Loop Shorthand

+

Loop Shorthand

To save some typing, repeated tasks can be written in short-hand like so:

- name: add user $item
   action: user name=$item state=present groups=wheel
@@ -484,7 +513,7 @@ minimum of decision points to track.

manager transactions.

-

Selecting Files And Templates Based On Variables

+

Selecting Files And Templates Based On Variables

Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. The following construct selects the first available file appropriate for the variables of a given host, which is often much cleaner than putting a lot of if conditionals in a template.

@@ -498,7 +527,7 @@ CentOS and Debian:

-

Asynchronous Actions and Polling

+

Asynchronous Actions and Polling

By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with a small parallelism value (aka --forks), you may wish that long @@ -548,7 +577,7 @@ tasks even faster. This also increases the efficiency of polling.

-

Local Playbooks

+

Local Playbooks

It may be useful to use a playbook locally, rather than by connecting over SSH. This can be useful for assuring the configuration of a system by putting a playbook on a crontab. This may also be used to run a playbook inside a OS installer, such as an Anaconda kickstart.

@@ -562,7 +591,7 @@ connection: local
-

Turning Off Facts

+

Turning Off Facts

If you know you don’t need any fact data about your hosts, and know everything about your systems centrally, you can turn off fact gathering. This has advantages in scaling ansible in push mode with very large numbers of systems, mainly, or if you are using Ansible on experimental platforms. In any play, just do this:

@@ -571,7 +600,7 @@ systems, mainly, or if you are using Ansible on experimental platforms. In any
-

Pull-Mode Playbooks

+

Pull-Mode Playbooks

The use of playbooks in local mode (above) is made extremely powerful with the addition of ansible-pull. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source checkout.

@@ -583,7 +612,7 @@ the cron frequency, logging locations, and parameters to ansible-pull.

logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull.

-

Register Variables

+

Register Variables

New in version 0.7.

Often in a playbook it may be useful to store the result of a given command in a variable and access @@ -603,7 +632,7 @@ instance, you could test for the existance of a particular program.

-

Rolling Updates

+

Rolling Updates

New in version 0.7.

By default ansible will try to manage all of the machines referenced in a play in parallel. For a rolling updates @@ -616,7 +645,7 @@ use case, you can define how many hosts ansible should manage at a single time b would complete the play completely before moving on to the next 3 hosts.

-

Delegation

+

Delegation

New in version 0.7.

If you want to perform a task on one host with reference to other hosts, use the ‘delegate_to’ keyword on a task. @@ -654,7 +683,7 @@ a good idea:

-

Understanding Variable Precedence

+

Understanding Variable Precedence

You have already learned about inventory host and group variables, ‘vars’, and ‘vars_files’.

If a variable name is defined in more than one place with the same name, priority is as follows to determine which place sets the value of the variable.

@@ -670,7 +699,7 @@ to determine which place sets the value of the variable.

place to set such a default is in a group variable.

-

Style Points

+

Style Points

Ansible playbooks are colorized. If you do not like this, set the ANSIBLE_NOCOLOR=1 environment variable.

Ansible playbooks also look more impressive with cowsay installed, and we encourage installing this package.

diff --git a/searchindex.js b/searchindex.js index 88513fed24..97f471280c 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,func:[3,5],poorli:[],four:[8,12],prefix:[10,9,6,7],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[1,2,6,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:[],affect:[4,6,7],macaddress:6,ansible_config:11,showcas:4,cmd:6,supervisorctl:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[8,10,5,6,7],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10],hide:10,thunder:5,scp:11,constrast:[],"new":[5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,elimin:[10,11],manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],substr:6,unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[3,6,11,8],notif:[5,6],notic:5,warn:4,phone:[],exce:[],ec2_architectur:9,relai:7,loss:5,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10],work:[0,1,3,5,6,7,8,9,10,11],anotherdb:6,erb:5,virttyp:6,cento:[0,10,6],root:[0,1,3,5,6,7,10,11],overrid:[0,9,10],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],"1pm":3,how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],dialect:[],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:[6,7],ansible_product_seri:6,bootstrap:[3,5,6],credenti:[6,11],exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6,11],enter:10,exclus:10,idontknow:[],order:[3,1,5,6,7,10],oper:[0,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:[10,6],orang:2,becaus:[1,2,5,4,9,10],fifo:6,ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,privileg:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,mydb:6,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:7,ec2_ten:9,"break":7,band:[],glorifi:[],jinja2:[0,10,5,6,7],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],colleagu:[],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[4,10,6,7],dsl:[],pool:10,adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:8,nightmar:3,situat:6,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7,11],rang:[3,6,11,8],render:6,clariti:[],wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9,10],van_halen_port:7,apt_repositori:6,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[9,3,5,4,2],similarli:[9,10],john:[5,2],outag:[3,10],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:[3,5],"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,basho:12,target:[11,8,1,7],keyword:[10,5,6],provid:[1,2,6,5,4,7,9,10],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],matter:11,ansible_distribution_releas:6,minut:[5,6,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9,10],bruce:0,limitless:10,deleg:10,regular:7,specifi:[0,2,6,5,4,7,9,10,11],bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:[],random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:4,configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[10,5,6,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,report:6,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:[6,7],daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[6,5,4,7,9,10],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],brazil:12,heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:[6,7],com:[0,6,4,8,9,12],compromis:5,assur:[10,7],foobar:6,height:[],written:[0,3,4,7,9,10],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,6,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],add_back_to_pool:10,mysql_us:6,dave:[],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11,12],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,ain:[],visit:3,conf:[10,9,6,1,7],module_nam:[8,9],somekei:4,sever:[2,5,6,7,9,12],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,3,5,6,7,10],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[10,11],speakerdeck:3,kept:[5,7],scenario:9,thu:6,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10,12],expos:1,had:10,spread:3,els:[0,10,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],gave:3,opt:6,applic:[3,5,6,7,9,10,12],supervisord:6,quirk:2,wai:[0,1,6,5,4,7,8,9,10],fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],www:8,right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,cnf:6,tracker:[0,3],condit:[10,7,11],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:[6,1],peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:[],simul:10,"2ydx8":6,commit:1,produc:[4,6,12],match:[4,7],ppa:[0,6],basenam:6,contriv:[],halon_system_timeout:8,contrib:[4,6],install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[4,10,6,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,6,1],ansible_fqdn:6,fundament:6,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],plugin:9,cobbler:[9,3,5],desir:[8,4,1,7],ship:[4,5,6],check:[4,10,6,11],assembl:6,pipe:[6,11],encrypt:5,take_out_of_pool:10,tip:[8,10,6,1,7],role:[10,6,1,7],test:[0,6,5,4,9,10,12],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],relat:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],receiv:6,longer:4,anywher:[],ignor:[10,4,7],time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,chain:[],"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[10,5,4,7,11],middl:[],depend:[0,4,5,6,10],zone:9,flask:6,graph:[5,12],readabl:[1,7],decis:10,downtim:6,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9,10],brows:4,jdk:6,administr:[],level:[6,7,2],did:[3,10,9,4],passno:6,item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4],ansible_distribution_vers:6,current:[0,6,5,4,10,11],suspect:[],ceec4eif7ya:6,deriv:[],gener:[0,6,5,4,7,9,10],address:[1,6,5,4,8,9,10,11],along:[4,7],wait:10,box:[3,6,11],precursor:3,alta:12,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[4,10,6,1],instal:[0,3,6,5,4,7,10,11],mobil:[],httpd:[8,10,6,7,11],hyperspac:5,priv1:6,priv2:6,prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10,11],handler:[11,6,1,7],criteria:10,msg:[4,9,6],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,enhanc:[],accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:10,whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:7,chip:3,agent:[0,5,11,3],critic:3,disadvantag:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,9,10],purg:6,pure:[],somevalu:[10,4],parameter:[10,7],map:[9,7],product:[10,6],mar:[],book:5,max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,6,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,preced:10,combin:2,talk:[11,0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],window:[3,10],curli:[],pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,10,4,1,7],xyz:11,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],hassl:3,env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7,11],didn:[5,11],crypto:3,separ:[9,6,1,7],rock:[],distro:9,domain:[],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],wrap:1,backport:[0,6],facter:[10,5,6,7],happen:[9,4,5,6],subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[2,5,6,7,9,10],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:[],card:5,care:[6,7],reusabl:4,couldn:3,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,10,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,"long":[0,5,10,11,3],oppos:11,open:[3,5,4,7,10,12],tomorrow:12,somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],silenc:6,white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],motd_cont:10,retyp:0,netmask:6,github:[0,1,2,3,6,4,7,10,12],mostli:1,than:[0,1,2,3,4,5,6,7,9,10,11],cmdb:9,serv:[],wide:5,ec2_private_dns_nam:9,balanc:[3,10],were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[4,9,6,7,8],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:6,ideal:[5,10],denomin:1,take:[6,5,4,7,10,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[8,10,11],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,6,11],hack:[0,4],rotat:[3,7],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],enough:[8,5,11],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7,11],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,9,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,through:[0,6,11,3],where:[0,1,6,5,4,9,10],summari:7,wiki:[],hour:6,hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,estat:12,ansible_system_vendor:6,between:[0,1,3,5,7,10],my_app:6,"import":[10,9,4,7,11],across:[9,5],rerun:7,guitar:[],cycl:0,come:[11,3,4,1,7],timmi:7,region:[9,11],contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:[10,6],webapp:[5,6,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,invok:[],exist:[3,5,6,7,8,10,11],default_releas:6,newhost:6,advantag:[10,11],ec2_stat:9,canon:6,worri:[5,10],destin:[9,6],cluster:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10,12],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6],choos:[0,5,6,7,3],markup:[],without:[0,5,4],promis:[],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[1,6,5,4,7,9,10,11],rest:4,venv:6,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],europ:12,miscellan:1,except:[9,4],littl:[3,5],otherus:11,blob:[],notori:5,vulner:5,real:[0,10,7,12,3],ignore_error:10,around:5,ohai:[10,5,6,7],read:[0,2,3,6,5,4,9,11],dark:9,mon:[],world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:[],titan:[],altalang:[],server01:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[3,4,9,6,10],"throw":[5,4],earlier:[0,7],src:[10,9,6,7,11],stone:4,central:[3,5,10],greatli:[],get_url:6,acm:[8,10,6,1,11],wolf:9,stand:6,act:6,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,anothert:6,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,8,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,6,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,10,5,6,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],beyond:[10,12],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],repositor:6,event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,qeuz:6,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:10,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],disk:6,children:8,nors:[],articl:[3,4,6],program:[3,2,6,5,4,7,10],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,song:[],fals:[10,4,2],faq:[3,5],util:[],mechan:[],failur:[9,10,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[3,2,5,6,9,10],testuser2:10,testuser1:10,enterpris:[0,12],yetanotherdb:6,strung:11,zero:[8,4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,11,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,11,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,6,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:[9,5,11],movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],recip:0,first_available_fil:10,strong:3,modifi:[4,9,6],fail_on_us:6,valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:[10,6],amount:9,pick:[5,11],action:[10,9,6,7],via:[0,10,9,6,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10,11],distinct:[],stdout:[9,10],regist:10,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],toggl:6,more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7,11],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],launch:[10,7],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],deb:6,nagio:6,instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:[],unabl:6,resourc:[4,10,5,6,7],referenc:[8,10,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],spool:6,"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,scott:5,hierarchi:[],hell:3,suffer:5,paramet:[1,6,4,7,10,11],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],troubleshoot:6,instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],halen:[],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,thrown:[],pyyaml:0,sytem:5,daisi:[],drupal:12,omit:1,american:[],ansible_system:6,assign:[8,10,9,6,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,3,5,6,8,10],least:[10,1],blank:6,stabl:[0,6],fiction:[],differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[10,4,7],cfg:11,banana:[],store:[8,10,6,12],option:[0,1,6,5,4,7,8,9,10,11],behind:[5,6],selector:11,part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],gotten:3,remov:[8,10,6,11],jqueri:[],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],"123i":12,also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:[],distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,10,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],filesystem:10,clear:1,cover:[9,5,10],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[10,9,4,7,12],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],silli:[],him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[1,2,6,4,9,10],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,close:[3,4],setsebool:7,analog:[],expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,6,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[3,10,11],simpli:[9,6,1,7],point:[10,6,1],instanti:4,schedul:6,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,java:[],instrument:[],devic:6,due:[0,5,4],empti:9,ran:3,host4:9,enable_alert:6,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,10,7],comprimis:3,educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:[5,11],"while":[3,5,10,1,7],unifi:[],smart:[6,11],behavior:[10,6,11,12],error:[4,10,5,6],loop:[10,7],pack:9,gimm:[],pragmat:[],motd:[9,10,7],max_client:7,readm:[],jpg:[],itself:[9,0,5,6],ansible_ssh_host_key_rsa_publ:6,unmount:6,fedora:[0,12],grant:6,login_usernam:6,belong:9,exit_json:4,higher:[0,10],optim:1,painless:3,alert:6,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:[3,11],lizenzfrei:12,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],abduct:[],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:[5,6],"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],cmdfile:6,postgresql_db:6,encount:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,6,7,10,11],sampl:11,mirror:[],virtualenv:6,scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,substitut:[],mathemat:[],larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,10,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11,12],step:[0,3,5,6,7,8,10,11],squeez:6,meantim:5,frob:6,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[3,1,6,4,7,8,10,11],subvers:6,bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,inclus:8,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],translat:12,newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[8,10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],disable_alert:6,likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],svn:6,happier:3,far:[11,2],hello:0,jupit:[],local_act:10,pluggabl:[3,5],code:[3,1,5,4,7,9,10,11,12],alien:[],async_statu:11,privat:[0,9,10],sensit:10,elsewher:[],friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,whichev:11,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],tri:6,magic:[10,5,4,7],roll:10,id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,6,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5,6],malici:5,impli:6,natur:[],focu:12,cron:[5,10],gmbh:12,mysqldb:6,download:[0,6],ansible_python_interpret:8,folk:[0,11,12],index:9,turn:[3,10,5,4],compar:5,access:[0,10,9,6,3],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[0,9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:[3,12],"_some_str":7,later:[0,6,4,7,8,10,11],unsil:6,typic:[5,7,11],maker:12,hardi:6,fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],austria:12,api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,6,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,3,5,6,7,8,10,11],few:[9,6],usr:[0,6,4,7,8,9,10,11],sort:[5,6,12],dbserver:[8,10,1,11],impress:[3,10],sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[4,6,8],openjdk:6,alic:7,halt:[],obvious:10,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],thirsti:6,tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],mango:2,high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,serial:10,surfac:[3,5],orson:5,lame:2,mysql_root_password:[],"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,6,5,4,9,10,11],aws_secret_access_kei:9,move:[10,6,7],elit:2,comma:[9,6],loginpass:[],release_vers:10,bunch:[],somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,therefor:10,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[4,9,6],dai:[3,5],auth:6,devel:[],mention:[11,10,4,1,7],rubygem:[],instead:[0,1,5,6,10,11],strive:4,multiprocess:5,somewher:10,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],subset:[],grok:3,bump:[],strip:6,usernam:[6,11],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:[9,6],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],twice:[],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4],clarifi:[],insid:[10,9,4,7],unpars:4,ansible_machin:6,control:[3,1,6,5,4,7,8,9,10,11],dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[6,5,4,7,9,10],put:[0,1,6,7,8,10],fqdn:10,keep:[0,1,6,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,delegate_to:[10,6],softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],exact:[],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],facil:[],prioriti:[10,6],ansible_lo:6,perfectli:[],mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,10,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],nobodi:4,priveledg:[],dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],tabl:6,need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],unexpect:[],min:[],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10,11],datacent:[8,1,11],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],clash:[],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,determin:10,built:[0,5,6,9,10,11],constrain:11,fact:[3,6,5,4,7,10],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,3,6,4,9,10],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7,11],tire:5,should:[0,1,2,3,4,5,6,7,9,10,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,3,6,4,11,12],notat:[],familiar:9,pave:[],autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,11],integr:[3,9,6],contain:[0,1,3,5,4,7,9,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,stack:10,gmail:[],statu:[4,10,6,11],wire:[],extend:[3,5,10,1,7],correctli:6,mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],instant:[],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:[],etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,11],mailto:[],quit:[4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7,11],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:7,capistrano:5,global_var:1,vmware:6,togeth:[6,1,11],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],glossari:[],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1,12],archiv:6,lightweight:9,partner:6,revis:[],michaeldehaan:[],surprisingli:[],scienc:[],welcom:[3,9],parti:[],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:6,structur:[10,6],denot:8,upon:[],effect:[],libvirt:6,php:11,distutil:0,pull:[9,5,10],audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],interpol:10,undefin:6,latest:[0,10,6,7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,10,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],kick:[3,10,11],knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,insert:6,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[8,5,12],avoid:[0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:5,about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],swear:3,discard:6,disabl:[6,7],ntp_server:8,own:[1,6,5,4,7,9,10],easy_instal:6,automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],van:[],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:6,biggest:12,individu:[8,1],"function":[4,6],simplejson:[0,6],subscrib:[],nnwugi:[],continu:[4,10,6],ec2_plac:9,eas:5,eat:11,count:[10,7],succe:4,made:[3,6,5,4,7,8,10],whether:[1,6,5,4,9,10],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,6,7],limit:[10,11],otherwis:[4,10,6,11],problem:[3,5,6,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,pip:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line Examples And Next Steps","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,func:[3,5],poorli:[],four:[8,12],prefix:[10,9,6,7],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[1,2,6,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:[],affect:[4,6,7],macaddress:6,ansible_config:11,showcas:4,cmd:6,supervisorctl:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[8,10,5,6,7],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10],hide:10,thunder:5,scp:11,constrast:[],"new":[5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,elimin:[10,11],manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],substr:6,unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[3,6,11,8],notif:[5,6],notic:5,warn:4,phone:[],exce:[],ec2_architectur:9,relai:7,loss:5,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10],work:[0,1,3,5,6,7,8,9,10,11],anotherdb:6,erb:5,virttyp:6,cento:[0,10,6],root:[0,1,3,5,6,7,10,11],overrid:[0,9,10],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],"1pm":3,how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],dialect:[],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:[6,7],ansible_product_seri:6,bootstrap:[3,5,6],credenti:[6,11],exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6,11],enter:10,exclus:10,idontknow:[],order:[3,10,5,6,7],oper:[0,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:[10,6],orang:2,becaus:[1,2,5,4,9,10],fifo:6,ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,privileg:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,mydb:6,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:7,ec2_ten:9,"break":7,band:[],glorifi:[],jinja2:[0,10,5,6,7],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],colleagu:[],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[0,1,6,5,4,7,8,9,10,11],dsl:[],pool:10,adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:8,nightmar:3,situat:6,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7,11],rang:[3,6,11,8],render:6,clariti:[],wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9,10],van_halen_port:7,apt_repositori:6,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[9,3,5,4,2],similarli:[9,10],john:[5,2],outag:[3,10],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:[3,5],"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,basho:12,target:[11,8,1,7],keyword:[10,5,6],provid:[1,2,6,5,4,7,9,10],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],matter:11,ansible_distribution_releas:6,minut:[5,6,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9,10],bruce:0,limitless:10,deleg:10,regular:7,specifi:[0,2,6,5,4,7,9,10,11],bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:[],random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:4,configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[10,5,6,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,report:6,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:[6,7],daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[6,5,4,7,9,10],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],brazil:12,heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:[6,7],com:[0,6,4,8,9,12],compromis:5,assur:[10,7],foobar:6,height:[],written:[0,3,4,7,9,10],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,6,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],add_back_to_pool:10,mysql_us:6,dave:[],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11,12],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,ain:[],visit:3,tabl:[8,9,6],conf:[10,9,6,1,7],module_nam:[8,9],somekei:4,sever:[2,5,6,7,9,12],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,3,5,6,7,10],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[10,11],speakerdeck:3,kept:[5,7],scenario:9,thu:6,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10,12],expos:1,had:10,spread:3,els:[0,10,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],gave:3,opt:6,applic:[3,5,6,7,9,10,12],supervisord:6,quirk:2,wai:[0,1,6,5,4,7,8,9,10],fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],www:8,right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,cnf:6,tracker:[0,3],condit:[10,7,11],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:[6,1],peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:[],simul:10,"2ydx8":6,commit:1,produc:[4,6,12],match:[4,7],ppa:[0,6],basenam:6,contriv:[],halon_system_timeout:8,wrap:[],install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[4,10,6,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,6],ansible_fqdn:6,fundament:6,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],plugin:9,cobbler:[9,3,5],desir:[8,4,7],ship:[4,5,6],check:[4,10,6,11],assembl:6,pipe:[6,11],encrypt:5,take_out_of_pool:10,tip:[8,10,6,1,7],role:[10,6,1,7],test:[0,6,5,4,9,10,12],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],relat:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],receiv:6,longer:4,anywher:[],ignor:[10,4,7],time:[0,2,3,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,chain:[],"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[10,5,4,7,11],middl:[],depend:[0,4,5,6,10],zone:9,flask:6,graph:[5,12],readabl:[1,7],decis:10,downtim:6,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9,10],brows:4,jdk:6,administr:[],level:[6,7,2],did:[3,10,9,4],passno:6,item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4],ansible_distribution_vers:6,current:[0,6,5,4,10,11],suspect:[],ceec4eif7ya:6,deriv:[],gener:[0,6,5,4,7,9,10],address:[1,6,5,4,8,9,10,11],along:[4,7],wait:10,box:[3,6,11],precursor:3,alta:12,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[4,10,6,1],instal:[0,3,6,5,4,7,10,11],mobil:[],httpd:[8,10,6,7,11],hyperspac:5,priv1:6,priv2:6,prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10,11],handler:[11,6,1,7],criteria:10,msg:[4,9,6],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,enhanc:[],accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:10,whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:7,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,9,10],purg:6,pure:[],somevalu:[10,4],parameter:[10,7],map:[9,7],product:[10,6],mar:[],book:5,max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,6,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,preced:10,combin:2,talk:[11,0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],window:[3,10],curli:[],pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,10,4,1,7],xyz:11,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],hassl:3,env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7,11],didn:[5,11],crypto:3,separ:[9,6,1,7],rock:[],distro:9,domain:[],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:[4,6],backport:[0,6],facter:[10,5,6,7],happen:[9,4,5,6],subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[2,5,6,7,9,10],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:[],card:5,care:[6,7],reusabl:4,couldn:3,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,10,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,"long":[0,5,10,11,3],oppos:11,open:[3,5,4,7,10,12],tomorrow:12,somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],silenc:6,white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],motd_cont:10,retyp:0,netmask:6,github:[0,1,2,3,6,4,7,10,12],mostli:1,than:[0,1,2,3,4,5,6,7,9,10,11],cmdb:9,serv:[],wide:5,ec2_private_dns_nam:9,balanc:[3,10],were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[4,9,6,7,8],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:6,ideal:[5,10],denomin:1,take:[6,5,4,7,10,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[8,10,11],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,6,11],hack:[0,4],rotat:[3,7],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],enough:[8,5,11],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7,11],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,9,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,through:[0,6,11,3],where:[0,1,6,5,4,9,10],summari:7,wiki:[],hour:6,hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,estat:12,ansible_system_vendor:6,between:[0,1,3,5,7,10],my_app:6,"import":[10,9,4,7,11],across:[9,5],rerun:7,guitar:[],cycl:0,come:[3,4,7,11],timmi:7,region:[9,11],contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:[10,6],webapp:[5,6,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,invok:[],exist:[3,5,6,7,8,10,11],default_releas:6,newhost:6,advantag:[10,11],ec2_stat:9,canon:6,worri:[5,10],destin:[9,6],cluster:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10,12],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6],choos:[0,5,6,7,3],markup:[],without:[0,5,4],promis:[],model:[3,5],dereferenc:[],execut:[0,3,6,5,4,7,9,10,11],when:[1,6,5,4,7,9,10,11],rest:4,venv:6,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],europ:12,miscellan:1,except:[9,4],littl:[3,5],otherus:11,blob:[],notori:5,vulner:5,real:[0,10,7,12,3],ignore_error:10,around:5,ohai:[10,5,6,7],read:[0,2,3,6,5,4,9,11],dark:9,mon:[],world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:[],titan:[],altalang:[],server01:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[3,4,9,6,10],"throw":[5,4],earlier:[0,7],src:[10,9,6,7,11],stone:4,central:[3,5,10],greatli:[],get_url:6,acm:[8,10,6,1,11],wolf:9,stand:6,act:6,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,anothert:6,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,8,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,6,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,10,5,6,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],beyond:[10,12],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],repositor:6,event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,qeuz:6,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:10,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],disk:6,children:8,nors:[],articl:[3,4,6],program:[3,2,6,5,4,7,10],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,song:[],fals:[10,4,2],faq:[3,5],util:[],mechan:[],failur:[9,10,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[3,2,5,6,9,10],testuser2:10,testuser1:10,enterpris:[0,12],yetanotherdb:6,strung:11,zero:[8,4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,11,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,11,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,6],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:[9,5,11],movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],recip:0,first_available_fil:10,strong:3,modifi:[4,9,6],fail_on_us:6,valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:[10,6],amount:9,pick:[5,11],action:[10,9,6,7],via:[0,10,9,6,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10,11],distinct:[],stdout:[9,10],regist:10,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],toggl:6,more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7,11],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],launch:[10,7],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],deb:6,nagio:6,instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:[],unabl:6,resourc:[4,10,5,6,7],referenc:[8,10,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],spool:6,"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,scott:5,hierarchi:[],hell:3,suffer:5,paramet:[1,6,4,7,10,11],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],troubleshoot:6,instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],halen:[],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,thrown:[],pyyaml:0,sytem:5,daisi:[],drupal:12,omit:1,american:[],ansible_system:6,assign:[8,10,9,6,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,3,5,6,8,10],least:[10,1],blank:6,stabl:[0,6],fiction:[],differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,7],camelot:10,make_databas:6,statement:[10,4,7],cfg:11,banana:[],store:[8,10,6,12],option:[0,1,6,5,4,7,8,9,10,11],behind:[5,6],selector:11,part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],gotten:3,remov:[8,10,6,11],jqueri:[],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],"123i":12,also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:[],distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,10,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],filesystem:10,clear:1,cover:[9,5,10],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4],find:[10,9,4,7,12],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],silli:[],him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[1,2,6,4,9,10],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,analog:[],expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,6,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[3,10,11],simpli:[9,6,1,7],point:[10,6,1],instanti:4,schedul:6,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,java:[],instrument:[],devic:6,due:[0,5,4],empti:9,ran:3,host4:9,enable_alert:6,escape_pod:8,strategi:5,wish:[0,9,10,7,2],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,10,7],comprimis:3,educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:[5,11],"while":[3,5,10,1,7],unifi:[],smart:[6,11],behavior:[10,6,11,12],error:[4,10,5,6],loop:[10,7],pack:9,gimm:[],pragmat:[],motd:[9,10,7],max_client:7,readm:[],jpg:[],itself:[9,0,5,6],ansible_ssh_host_key_rsa_publ:6,unmount:6,fedora:[0,12],grant:6,login_usernam:6,belong:9,exit_json:4,higher:[0,10],optim:1,painless:3,alert:6,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:[3,11],lizenzfrei:12,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],abduct:[],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:[5,6],"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],cmdfile:6,postgresql_db:6,encount:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,6,7,10,11],sampl:11,mirror:[],virtualenv:6,scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,substitut:[],mathemat:[],larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,10,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11,12],step:[0,3,5,6,7,8,10,11],squeez:6,meantim:5,frob:6,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[3,1,6,4,7,8,10,11],subvers:6,bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,inclus:8,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],translat:12,newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[8,10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],disable_alert:6,likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],svn:6,happier:3,far:[11,2],hello:0,jupit:[],local_act:10,pluggabl:[3,5],code:[3,1,5,4,7,9,10,11,12],alien:[],async_statu:11,privat:[0,9,10],sensit:10,elsewher:[],friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,whichev:11,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],tri:6,magic:[10,5,4,7],roll:10,id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,6,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5,6],malici:5,impli:6,natur:[],focu:12,cron:[5,10],gmbh:12,mysqldb:6,download:[0,6],ansible_python_interpret:8,folk:[0,11,12],index:9,turn:[3,10,5,4],compar:5,access:[0,10,9,6,3],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[0,9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:[3,12],"_some_str":7,later:[0,6,4,7,8,10,11],unsil:6,typic:[5,7,11],maker:12,hardi:6,fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],austria:12,api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,6,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,3,5,6,7,8,10,11],few:[9,6],usr:[0,6,4,7,8,9,10,11],sort:[5,6,12],dbserver:[8,10,1,11],impress:[3,10],sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[4,6,8],openjdk:6,alic:7,halt:[],obvious:10,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],thirsti:6,tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],mango:2,high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,serial:10,surfac:[3,5],orson:5,lame:2,mysql_root_password:[],"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,3],allow:[0,1,6,5,4,9,10,11],aws_secret_access_kei:9,move:[10,6,7],elit:2,comma:[9,6],loginpass:[],release_vers:10,bunch:[],somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,therefor:10,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[4,9,6],dai:[3,5],auth:6,devel:[],mention:[11,10,4,1,7],rubygem:[],instead:[0,1,5,6,10,11],strive:4,multiprocess:5,somewher:10,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],subset:[],grok:3,bump:[],strip:6,usernam:[6,11],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:[9,6],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],twice:[],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4],clarifi:[],insid:[10,9,4,7],unpars:4,ansible_machin:6,control:[3,1,6,5,4,7,8,9,10,11],dictionari:[10,9,4,2],releas:[0,10,5,6,7],include_ansible_module_common:4,indent:2,could:[6,5,4,7,9,10],put:[0,1,6,7,8,10],fqdn:10,keep:[0,1,6,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,delegate_to:[10,6],softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],exact:[],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],facil:[],prioriti:[10,6],ansible_lo:6,perfectli:[],mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,6,4,7,9,10,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],nobodi:4,priveledg:[],dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],unexpect:[],min:[],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10,11],datacent:[8,1,11],with_item:10,divers:3,singl:[5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],clash:[],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,determin:10,built:[0,5,6,9,10,11],constrain:11,fact:[3,6,5,4,7,10],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,3,6,4,9,10],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7,11],tire:5,should:[0,1,2,3,4,5,6,7,9,10,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,3,6,4,11,12],notat:[],familiar:9,pave:[],autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,11],integr:[3,9,6],contain:[0,1,3,5,4,7,9,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,stack:10,gmail:[],statu:[4,10,6,11],wire:[],extend:[3,5,10,1,7],correctli:6,mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],instant:[],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:[],etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,11],mailto:[],quit:[4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7,11],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:7,capistrano:5,global_var:1,vmware:6,togeth:[6,1,11],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],glossari:[],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1,12],archiv:6,lightweight:9,partner:6,revis:[],michaeldehaan:[],surprisingli:[],scienc:[],welcom:[3,9],parti:[],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:6,structur:[10,6],denot:8,upon:[],effect:[],libvirt:6,php:11,distutil:0,pull:[9,5,10],audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],interpol:10,undefin:6,latest:[0,10,6,7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,10,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],introduct:[6,7],kick:[3,10,11],knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,insert:6,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[8,5,12],avoid:[0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:5,about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],swear:3,discard:6,disabl:[6,7],ntp_server:8,own:[1,6,5,4,7,9,10],easy_instal:6,automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],van:[],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:6,biggest:12,individu:[8,1],"function":[4,6],simplejson:[0,6],subscrib:[],nnwugi:[],continu:[4,10,6],ec2_plac:9,eas:5,eat:11,count:[10,7],succe:4,made:[3,6,5,4,7,8,10],whether:[1,6,5,4,9,10],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,6,7],limit:[10,11],otherwis:[4,10,6,11],problem:[3,5,6,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,pip:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,2,3,6,5,4,7,8,9,10,11,12],futur:[10,4],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line Examples And Next Steps","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file