Ansible installieren
Ansible ist ein Open-Source-Automatisierungstool, das verwendet wird, um die Bereitstellung, Konfiguration und Verwaltung von Computersystemen zu automatisieren. Es ermöglicht das Orchestrieren von IT-Prozessen durch die Definition von sogenannten Playbooks, die eine Abfolge von Befehlen oder Aufgaben enthalten, die auf entfernten Systemen ausgeführt werden sollen. Ansible verwendet eine einfache und deklarative Syntax basierend auf YAML, was die Lesbarkeit und Wartung der Automatisierungsabläufe erleichtert. Es ist weit verbreitet in der DevOps-Welt für die Automatisierung von Softwarebereitstellungen, Konfigurationsverwaltung und Systemadministration.
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt install ansible
Mit `ansible --version`` kannst du dir die Version von Ansible ausgeben lassen und sehen, ob die Installation funktioniert hat.
ansible --version
Ausgabe
ansible [core 2.14.9]
config file = None
configured module search path = ['/home/ppp-admin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/ppp-admin/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.11.6 (main, Oct 8 2023, 05:06:43) [GCC 13.2.0] (/usr/bin/python3)
jinja version = 3.1.2
libyaml = True
Ansible einrichten
ppp-admin@ppp-host:~$ git --version
git version 2.34.1
ppp-admin@ppp-host:~$ pwd
/home/ppp-admin
ppp-admin@ppp-host:~$ ls
ppp-admin@ppp-host:~$ mkdir ansible
ppp-admin@ppp-host:~$ cd ansible/
ppp-admin@ppp-host:~/ansible$ git clone https://gitlab.com/pop-up-platform/ppp-ansible.git
Cloning into 'ppp-ansible'...
remote: Enumerating objects: 42, done.
remote: Counting objects: 100% (42/42), done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 42 (delta 8), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (42/42), 7.59 KiB | 2.53 MiB/s, done.
Resolving deltas: 100% (8/8), done.
ppp-admin@ppp-host:~/ansible$ ls
ppp-ansible
ppp-admin@ppp-host:~/ansible$ cd ppp-ansible/
ppp-admin@ppp-host:~/ansible/ppp-ansible$ ls
README.md ansible
ppp-admin@ppp-host:~/ansible/ppp-ansible$ cd ansible/
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible$ ls
playbooks
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible$ cd playbooks/
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible/playbooks$ ls
ansible.cfg inventory playbook.yml
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible/playbooks$ ansible-playbook -i inventory/hosts playbook.yml
PLAY [Update und Upgrade Ubuntu Server] ******************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"ansible_facts": {}, "changed": false, "failed_modules": {"ansible.legacy.setup": {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python3"}, "failed": true, "module_stderr": "sudo: a password is required\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}}, "msg": "The following modules failed to execute: ansible.legacy.setup\n"}
PLAY RECAP ***********************************************************************************************************************************************************
localhost : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible/playbooks$ sudo ansible-playbook -i inventory/hosts playbook.yml
[sudo] password for ppp-admin:
PLAY [Update und Upgrade Ubuntu Server] ******************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************
ok: [localhost]
TASK [Update der Paketdatenbank] *************************************************************************************************************************************
changed: [localhost]
TASK [Upgrade aller Pakete auf die neueste Version] ******************************************************************************************************************
ok: [localhost]
TASK [Entfernen unnötiger Pakete] ************************************************************************************************************************************
ok: [localhost]
PLAY RECAP ***********************************************************************************************************************************************************
localhost : ok=4 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
ppp-admin@ppp-host:~/ansible/ppp-ansible/ansible/playbooks$