GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie Ansible (Automatisierungstool) unter Debian 10 (Buster)

Heutzutage ist die Automatisierung im IT-Bereich das heiße Thema und jede Organisation beginnt damit, Automatisierungstools wie Puppet einzuführen , Ansible , Koch , CFEngine , Vorarbeiter und Katello . Von diesen Tools ist Ansible die erste Wahl fast aller IT-Organisationen, um UNIX- und Linux-ähnliche Systeme zu verwalten. In diesem Artikel zeigen wir, wie man das Ansible-Tool auf Debian 10 Server installiert und verwendet.

Details zu meinem Labor:

  • Debian 10 – Ansible-Server/Controller-Knoten – 192.168.1.14
  • CentOS 7 – Ansible Host (Webserver) – 192.168.1.15
  • CentOS 7 – Ansible Host (DB-Server) – 192.169.1.17

Wir zeigen auch, wie Linux-Server mit Ansible Server verwaltet werden können

Ansible-Installation auf Debian 10 Server

Ich gehe davon aus, dass Sie in Ihrem Debian 10-System einen Benutzer haben, der entweder Root-Rechte oder Sudo-Rechte hat. In meinem Setup habe ich einen lokalen Benutzer namens „pkumar“ mit sudo-Rechten.

Ansible 2.7-Pakete sind in den standardmäßigen Debian 10-Repositories verfügbar, führen Sie die folgenden Befehle von der Befehlszeile aus, um Ansible zu installieren,

$ sudo apt update
$ sudo apt install ansible -y

Führen Sie den folgenden Befehl aus, um die Ansible-Version zu überprüfen,

[email protected]:~$ sudo ansible --version

Um die neueste Version von Ansible 2.8 zu installieren, müssen wir zuerst Ansible-Repositories einrichten.

Führen Sie die folgenden Befehle nacheinander aus,

$ echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" \ 
| sudo tee -a /etc/apt/sources.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
$ sudo apt update
$ sudo apt install ansible -y
$ sudo ansible --version

Linux-Server mit Ansible verwalten

Sehen Sie sich die folgenden Schritte an, um Linux-ähnliche Server mit dem Ansible-Controller-Knoten zu verwalten,

Schritt:1) Tauschen Sie die SSH-Schlüssel zwischen Ansible Server und seinen Hosts aus

Generieren Sie die SSH-Schlüssel vom Ansible-Server und teilen Sie die Schlüssel mit den Ansible-Hosts

$ sudo -i
# ssh-keygen
# ssh-copy-id [email protected]
# ssh-copy-id [email protected]

Schritt:2) Inventardatei für Ansible Hosts erstellen

Wenn Ansible installiert ist, wird die Datei /etc/hosts automatisch erstellt. In dieser Datei können wir die Ansible-Hosts oder ihre Clients erwähnen. Wir können auch unsere eigene ansible Host-Inventardatei in unserem Home-Verzeichnis erstellen,

Lesen Sie mehr unter:Verwalten des statischen und dynamischen Hostinventars von Ansible

Führen Sie den folgenden Befehl aus, um ein Ansible-Host-Inventar in unserem Home-Verzeichnis zu erstellen

[email protected]:~$ vi $HOME/hosts
[Web]
192.168.1.15

[DB]
192.168.1.17

Speichern und beenden Sie die Datei

Hinweis: In der obigen Hosts-Datei können wir auch Hostnamen oder FQDN verwenden, aber dafür müssen wir sicherstellen, dass Ansible-Hosts erreichbar und über Hostnamen oder FQDN zugänglich sind.

Schritt:3) Ansible-Standardmodule testen und verwenden

Ansible wird mit vielen Standardmodulen geliefert, die in Ansible-Befehlen verwendet werden können. Beispiele sind unten gezeigt,

Syntax:

# ansible -i -m

Wo:

  • -i ~/hosts :enthält eine Liste ansibler Hosts
  • -m: Geben Sie nach -m das Ansible-Modul wie Ping und Shell an
  • : Ansible-Hosts, auf denen die Ansible-Module ausgeführt werden sollen

Überprüfen Sie die Ping-Konnektivität mit dem ansiblen Ping-Modul

$ sudo ansible -i ~/hosts -m ping all
$ sudo ansible -i ~/hosts -m ping Web
$ sudo ansible -i ~/hosts -m ping DB

Die Ausgabe der obigen Befehle würde in etwa so aussehen:

Ausführen von Shell-Befehlen auf Ansible-Hosts mit dem Shell-Modul

Syntax: # ansible -i -m shell -a  

Beispiel:

[email protected]:~$ sudo ansible -i ~/hosts -m shell -a "uptime" all
192.168.1.17 | CHANGED | rc=0 >>
 01:48:34 up  1:07,  3 users,  load average: 0.00, 0.01, 0.05

192.168.1.15 | CHANGED | rc=0 >>
 01:48:39 up  1:07,  3 users,  load average: 0.00, 0.01, 0.04

[email protected]:~$
[email protected]:~$ sudo ansible -i ~/hosts -m shell -a "uptime ; \
 df -Th / ; uname -r" Web
192.168.1.15 | CHANGED | rc=0 >>
 01:52:03 up  1:11,  3 users,  load average: 0.12, 0.07, 0.06
Filesystem              Type  Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs    13G 1017M   12G   8% /
3.10.0-327.el7.x86_64

[email protected]:~$

Die obige Befehlsausgabe bestätigt, dass wir den Ansible Controller Node erfolgreich eingerichtet haben

Lassen Sie uns ein beispielhaftes NGINX-Installationsplaybook erstellen. Das folgende Playbook installiert nginx auf allen Servern, die Teil der Webhostgruppe sind, aber in meinem Fall habe ich einen Centos 7-Computer unter dieser Hostgruppe.

[email protected]:~$ vi nginx.yaml
---
- hosts: Web
  tasks:
    - name: Install latest version of nginx on CentOS 7 Server
      yum: name=nginx state=latest
    - name: start nginx
      service:
          name: nginx
          state: started

Führen Sie nun das Playbook mit dem folgenden Befehl aus,

[email protected]:~$ sudo ansible-playbook -i ~/hosts  nginx.yaml

Die Ausgabe des obigen Befehls wäre so etwas wie unten,

Dies bestätigt, dass das Ansible Playbook erfolgreich ausgeführt wurde, das ist alles aus dem Artikel, bitte teilen Sie Ihr Feedback und Ihre Kommentare.


Debian
  1. So installieren Sie VirtualBox 6.1 auf Debian 10 (Buster)

  2. So installieren Sie ownCloud auf Debian 10 (Buster)

  3. So installieren Sie WildFly unter Debian 10 Buster

  4. So installieren Sie R unter Debian 10 Buster

  5. So installieren Sie Ansible unter Debian 10

So installieren Sie Tomcat auf Debian 10 Buster

So installieren Sie Vagrant unter Debian 10 Buster

So installieren Sie Plex Media Server auf Debian 10 Buster

So installieren Sie Odoo auf Debian 10 Buster

So installieren Sie Go unter Debian 11

So installieren Sie Samba auf Debian 10 Buster