---
title: "Ansible unter Ubuntu 14.04 installieren"
id: "47"
type: "post"
slug: "ansible-unter-ubuntu-14-04-installieren"
published_at: "2017-01-18T21:05:19+00:00"
modified_at: "2025-05-20T06:11:38+00:00"
url: "https://www.geekbundle.org/ansible-unter-ubuntu-14-04-installieren/"
markdown_url: "https://www.geekbundle.org/ansible-unter-ubuntu-14-04-installieren.md"
excerpt: "Verschiedene Ansible Versionen lassen sich gleichzeitig unter Ubuntu, oder mit dieser Herangehensweise unter jedem Linux mit python, ganz einfach mit pip installieren."
taxonomy_category:
  - "Ansible"
  - "Linux"
taxonomy_post_tag:
  - "ansible"
  - "linux"
  - "ubuntu"
---

Table of Contents

Verschiedene Ansible Versionen lassen sich gleichzeitig unter Ubuntu, oder mit dieser Herangehensweise unter jedem Linux mit python, ganz einfach mit pip installieren.  
 Dafür richte ich pro Ansible Version eine eigene virtuelle python Umgebung mit virtualenv ein. Vorteil dieser Herangehensweise ist, dass ich zwischen den Ansible Versionen einfach wechseln und neue Versionen ausprobieren kann. Kommt ja schon mal vor, dass Optionen deprecated werden und man seine Config erst mal anpassen muss.

## Abhängigkeiten

 [shell]apt install libssl-dev python-setuptools python-pip  
 easy_install pip  
 pip install --upgrade pip virtualenv virtualenvwrapper[/shell] ## Ansible 2.1

 [shell]virtualenv ansible2.1  
 source ansible2.1/bin/activate  
 pip install ansible==2.1[/shell] ## Ansible 2.0

 [shell]virtualenv ansible2.0  
 source ansible2.0/bin/activate  
 pip install ansible==2.0.1.0[/shell] ## Ansible Vorbereiten

Nach der Installation von Ansible müssen noch Configs und Ordner erstellt werden.

### Ordnerstruktur anlegen

Meine komplette Ansible Config habe ich, wie vom Debian Ansible Paket auch vorgegeben, unter /etc/ansible angelegt.

 [shell]mkdir -p /etc/ansible/{files,group_vars,host_vars,playbooks}  
 mkdir -p /var/log/ansible  
 touch /var/log/ansible/ansible.log[/shell] Mehr Informationen zur Ordnerstruktur finden sich in den offiziellen [Best Practices](http://docs.ansible.com/ansible/playbooks_best_practices.html#directory-layout)
.

### Download Ansible.cfg

 [shell]wget -O /etc/ansible/ansible.cfg https://raw.githubusercontent.com/ansible/ansible/devel/examples/ansible.cfg[/shell] Folgende Parameter habe ich in der CFG angepasst:

 [shell]inventory = /etc/ansible/hosts  
 remote_tmp = /tmp  
 roles_path = /etc/ansible/roles  
 sudo_exe = sudo  
 log_path = /var/log/ansible/ansible.log  
 ansible_managed = Ansible managed: {file} modified on %Y-%m-%d %H:%M:%S by {uid} on {host}[/shell] Die Parameter sind im offiziellen Guide des [Configuration file](http://docs.ansible.com/ansible/intro_configuration.html)
 erklärt.

### Ergebnis

Die Ordnerstruktur sieht danach so aus:

 [shell](ansible2.1) root@server:/etc/ansible# ll  
 total 44K  
 drwxr-xr-x 7 root root 4.0K Jan 26 12:07 .  
 drwxr-xr-x 113 root root 4.0K Jan 24 06:51 ..  
 drwxr-xr-x 2 root root 4.0K Jan 25 10:03 files  
 drwxr-xr-x 2 root root 4.0K Jan 22 22:27 group_vars  
 drwxr-xr-x 2 root root 4.0K Jan 25 18:22 host_vars  
 drwxr-xr-x 2 root root 4.0K Jan 25 19:35 playbooks  
 drwxr-xr-x 2 root root 4.0K Jan 25 09:22 roles  
 -rw-r--r-- 1 root root 8.1K Jan 25 19:27 ansible.cfg[/shell] ## Wie geht es weiter?

Nachdem alles vorbereitet wurde, muss für Ansible ein [Inventory](http://docs.ansible.com/ansible/intro_inventory.html)
 erstellt und es müssen Playbooks / Roles geschrieben werden. Das Inventory beinhaltet alle Hosts, die bearbeitet, und Playbooks / Roles die Tasks, die auf den jeweiligen Hosts ausgeführt werden sollen. Roles bekommt man z.B. von [Ansible Galaxy](https://galaxy.ansible.com/)
 oder [Github.com](https://github.com/)
.

## Fazit

Mit der hier beschriebenen Herangehensweise kann ich quasi jede über pip verfügbare Ansible Version installieren und zwischen ihnen wechseln. Wenn ich mit einer bestimmten Version arbeiten möchte, gebe ich einfach folgenden Befehl ein:

 [shell]source <PFAD_ZUM_VIRTUAL_PYTHON_DIR>/ansible2.1/bin/activate[/shell] Man erkennt direkt am Eingabe Prompt mit welcher Ansible Version, bzw. python environment, gerade gearbeitet wird.

 [shell](ansible2.1) root@server:~#[/shell] Mit **which ansible-playbook** lässt sich noch kontrollieren, welche Ansible executables genutzt werden.  
 Der Pfad sollte, wenn man die python virtualenvironment geladen hat, den Pfad zu dieser enthalten:

 [shell](ansible2.1) root@server:~# which ansible-playbook  
 /root/ansible2.1/bin/ansible-playbook[/shell] **Ähnliche Beiträge**- [Ansible unter Windows in VS Code nutzen](https://www.geekbundle.org/ansible-unter-windows-in-vs-code-nutzen/)
- [Ansible Checkmk](https://www.geekbundle.org/ansible-checkmk/)
- [Check_MK in OMD einrichten](https://www.geekbundle.org/check_mk-in-omd-einrichten/)
- [Proxmox Container Template erstellen](https://www.geekbundle.org/proxmox-container-template-erstellen/)

### Kommentar hinterlassen [Antwort abbrechen](/ansible-unter-ubuntu-14-04-installieren/#respond)
