1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
community.general/rst/gettingstarted.rst

124 lines
3.5 KiB
ReStructuredText
Raw Normal View History

Downloads & Getting Started
===========================
2012-03-07 17:35:18 +01:00
2012-03-08 19:36:47 +01:00
How to download ansible and get started using it
2012-03-07 17:35:18 +01:00
2012-03-08 19:36:47 +01:00
Requirements
````````````
2012-03-09 04:50:00 +01:00
Requirements for Ansible are extremely minimal.
2012-03-08 19:36:47 +01:00
2012-03-09 20:39:29 +01:00
If you are running python 2.6 on the **overlord** machine (the machine
that you'll be talking to the other machines from), you will need:
2012-03-08 19:36:47 +01:00
* ``paramiko``
* ``PyYAML``
* ``python-jinja2`` (for playbooks)
If you are running less than Python 2.6, you will also need:
* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module
- `Installation and Testing Instructions <http://code.google.com/p/python-multiprocessing/wiki/Install>`_
* ``simplejson``
On the managed nodes, to use templating, you will need:
* ``python-jinja2`` (you can install this with ansible)
Developer Requirements
``````````````````````
For developers, you may wish to have:
* ``asciidoc`` (for rebuilding manpage files)
* ``python-sphinx`` (for rebuilding content for the ansible.github.com docs project only)
2012-03-08 19:36:47 +01:00
Getting Ansible
```````````````
Tagged releases are available as tar.gz files from the Ansible github
project page:
* `Ansible/downloads <https://github.com/ansible/ansible/downloads>`_
As the project is still pretty new, you will probably just want to clone
the git checkout instead, so you can keep up with all of the latest features,
and also contribute easily back to the project (if you want).
Instructions for installing from source are below.
2012-03-08 19:36:47 +01:00
You may also wish to follow the `Github project <https://github.com/ansible/>`_ if
you have a github account. This is also where we keep the issue tracker for sharing
bugs or feature ideas.
2012-03-08 19:36:47 +01:00
Make Install
++++++++++++
You can install Ansible using "make install". This is done through python distutils::
2012-03-08 19:36:47 +01:00
$ git clone git://github.com/ansible/ansible.git
$ cd ./ansible
$ sudo make install
2012-03-08 19:36:47 +01:00
Via RPM
+++++++
2012-03-09 20:39:29 +01:00
In the near future, pre-built RPMs will be available through your
distribution. Until that time you can use the ``make rpm`` command::
2012-03-08 19:36:47 +01:00
$ git clone git://github.com/ansible/ansible.git
$ cd ./ansible
$ make rpm
$ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-*.noarch.rpm
If you are tracking the upstream source (i.e. git), the RPM revision may not be
bumped with every source code change. To get around this, you can use
rpm `-Uvh` with `--force` when RPM tells you the package is still at the
same version.
2012-03-08 19:36:47 +01:00
Your first commands
```````````````````
Edit (or create) /etc/ansible/hosts and put one or more remote systems in it, for
2012-03-09 20:39:29 +01:00
which you have your SSH key in ``authorized_keys``::
2012-03-08 19:36:47 +01:00
192.168.1.50
aserver.example.org
bserver.example.org
2012-03-09 05:05:52 +01:00
Set up SSH agent to avoid retyping passwords::
2012-03-08 19:36:47 +01:00
ssh-agent bash
ssh-add ~/.ssh/id_rsa
2012-03-09 05:05:52 +01:00
Now ping all your nodes::
2012-03-08 19:36:47 +01:00
ansible all -m ping
2012-03-09 05:05:52 +01:00
Now run a live command on all of your nodes::
2012-03-12 02:20:30 +01:00
ansible all -a "/bin/echo hello"
2012-03-09 05:05:52 +01:00
2012-03-09 20:39:29 +01:00
Congratulations. You've just contacted your nodes with Ansible. It's
now time to read some of the more real-world :doc:`examples`, and explore
2012-03-09 20:39:29 +01:00
what you can do with different modules, as well as the Ansible
:doc:`playbooks` language. Ansible is not just about running commands, but
2012-03-09 20:39:29 +01:00
you already have a working infrastructure!
2012-03-08 19:36:47 +01:00
2012-03-09 20:39:29 +01:00
.. seealso::
:doc:`examples`
Examples of basic commands
:doc:`playbooks`
Learning ansible's configuration management language
`Mailing List <http://groups.google.com/group/ansible-project>`_
Questions? Help? Ideas? Stop by the list on Google Groups
`irc.freenode.net <http://irc.freenode.net>`_
#ansible IRC chat channel