Jak zainstalować i skonfigurować ansible na Debian 10

Jak zainstalować i skonfigurować ansible na Debian 10

Ansible to bezpłatne i łatwe w użyciu narzędzie automatyzacji do zarządzania wieloma zdalnymi hostami z pojedynczego komputera. Zapewnia łatwe do skonfigurowania dla dużej liczby zdalnych hostów. Na przykład wykonujesz te same zadania nad wieloma maszynami, Ansible zapewnia opcję automatyzacji tych zadań.

Ansible to lepsze alternatywy innych popularnych narzędzi do automatyzacji infrastruktury, takie jak Chef i Puppet. Nie musisz instalować żadnego oprogramowania klienckiego w węzłach, aby zarządzać za pośrednictwem serwera Ansible. Używa połączenia SSH do wykonywania zadań na hostach.

Ten samouczek pomoże Ci zainstalować i skonfigurować Ansible w systemach Linux Debian 10.

Wymagania wstępne

W tym samouczku mam następujących gospodarzy:

  • Jeden węzeł sterujący - Aby zbudować infra z Ansible, potrzebujesz węzła kontrolnego, w którym uruchomi się serwer Ansible. Jest to znane jako węzeł kontrolny Ansible.
  • Jeden lub więcej hostów - Mamy trzech hostów działających z różnymi 2 systemami operacyjnymi.
    • Dwóch gospodarzy z Ubuntu 20.04 LTS
    • Jeden gospodarz z Centos 8

Krok 1 - Skonfiguruj klucze SSH

Ansible Control Node używa połączenia SSH do łączenia hostów. Możesz skonfigurować ansible do podłączenia hostów za pomocą hasła lub dostępu do ssh opartego na kluczu. W tym samouczku użyjemy zarówno typów (hasła i klucza), aby podłączyć hosty z węzła sterowania.

Zaloguj się do węzła sterowania Ansible i wygeneruj parę klawiszy SSH (jeśli nie wygenerowano):

SSH -KEYGEN -T RSA  

Wystarczy nacisnąć „Wprowadź” na wszystkie dane wejściowe zapytane przez polecenie.

Następnie skopiuj klucz publiczny do zdalnych hostów, musisz połączyć się za pośrednictwem klawisza:

ssh-copy-id -i ~/.ssh/id_rsa.pub [e -mail chroniony]  ssh-copy-id -i ~/.ssh/id_rsa.pub [e -mail chroniony]  

Krok 2 - Instalowanie Ansible na Debian

Pakiety Ansible Debian są dostępne w ramach oficjalnego repozytorium APT. Wystarczy dodać PPA do swojego systemu. Użyj następującego polecenia, aby dodać repozytorium ANSIBLE DEBIAN do swojego systemu:

sudo apt-add-repozytory PPA: ansible/ansible  

Narzędzie oprogramowania aktualizowania zaktualizuje pamięć podręczną pakietów w twoim systemie. Musisz więc uruchomić następujące polecenie, aby zainstalować lub zaktualizować ansible w systemie Debian

Aktualizacja sudo apt  sudo apt instal instaluble  

Naciśnij „Y”, aby wszystkie potwierdzenie instalacji w celu zakończenia procesu instalacji. Następnie musisz skonfigurować serwer Ansible

Krok 3 - Utwórz plik zapasów

Zainstalowałeś serwer ansible w swoim węźle sterowania.

Teraz musisz dodać hosty do serwera Ansible. Ansible pozwala zarządzać hostami w formularzu na hostach i grupach. Grupy są używane do wykonywania jednego zadania na wszystkich zdalnych hostach zdefiniowanych pod nim.

Jeden host można dodać do wielu grup. Edytuj plik konfiguracyjny hostów ansible. Na przykład:

sudo nano/etc/ansible/hosts  

Dodaj hostów i uporządkuj je z grupami:

[WebServers] Web-Host1 Web-Host2 [Dbservers] DB-Host1 [Ubuntu] Web-Host1 DB-Host1 [Centos] Web-Host2 

Poniższy obraz pomoże ci zrozumieć grupę i hosty w ramach grupy.

Na konfigurację hosta

Możesz tworzyć pliki konfiguracyjne dla poszczególnych hostów. Wszystkie plik konfiguracyjny hostów znajduje się w katalogu/etc/ansible/host_vars z taką samą jak nazwa hosta.

sudo mkdir/etc/ansible/host_vars/  sudo vi/etc/ansible/host_vars/web-host1  
  • 1 host -/etc/ansible/host_vars/web -host1
    ansible_ssh_host: 10.0.1.101 ansible_ssh_port: 22 ansible_ssh_user: root 
  • 2'nd host -/etc/ansible/host_vars/web -host2
    ansible_ssh_host: 10.0.1.102 ansible_ssh_port: 22 ansible_ssh_user: root 
  • Host 3'rd -/etc/ansible/host_vars/db -host1
    ansible_ssh_host: 10.0.1.103 ansible_ssh_port: 22 ansible_ssh_user: root 
  • Na wypadek, gdybyś nie używał kroku 1 dla połączenia SSH dla tego hosta. Możesz także dodać jedną z poniższych metod do pliku konfiguracyjnego Web-Hosts1 do uwierzytelnienia.

    ansible_ssh_pass: secret_password ansible_ssh_private_key_file:/home/rahul/.SSH/AWS.pem 

    Grupa konfiguracja vars

    Możesz skonfigurować wspólne ustawienia zmiennych grupy w ramach konfiguracji grupy. Nazwa pliku grupy musi być taka sama jak nazwa grupy (np.: WebServers) grupa_vars informator.

    sudo mkdir/etc/ansible/grupa_vars  sudo vi/etc/ansible/grupa_vars/WebServers  

    Dodaj wspólne zmienne do tego pliku używanego przez wszystkie hosty dodane w tej grupie.

    ansible_ssh_port: 22 ansible_ssh_user: root 

    Krok 4 - Testowanie połączenia Ansible

    Twój Ansible jest gotowy do użycia. Aby przetestować wszystkie węzły, użyj modułu ping. Zaloguj się do serwera Ansible i wykonaj następujące polecenie:

    ansible -m ping wszystko  

    Możesz także testować łączność dla określonego hosta lub grup.

    Ansible -m ping Web -Host1  ## specyficzny host  ansible -m ping Webservers  ## konkretna grupa  

    Możesz także uruchomić dowolne polecenie Linux za pomocą modułu powłoki ansible. Na przykład wykonaj poniższe polecenie, aby przetestować bezpłatną pamięć w Web-Host1.

    ansible -m shell -a „free -m” Web -Host1  

    Możesz także wykonać to samo zadanie dla grupy. Po prostu użyj nazwy grupy zamiast nazwy hosta.

    Wniosek

    W tym samouczku nauczyłeś się instalować i konfigurować Ansible w systemie Linux Debian 10.