Topologija mreže:
Evo, linuxhint-711ea je Ubuntu 20.04 LTS stroj na koji ću instalirati Ansible.
Zatim ću konfigurirati hostove domaćin1 (IP adresa 192.168.20.162) i domaćin2 (IP adresa 192.168.20.153) za Ansible automatizaciju i izvršavajte naredbe na njima koristeći Ansible iz linuxhint-711ea mašina.
Jednostavno ću nazvati domaćin1 i domaćin2 kao odgovorni domaćini u ovom članku.
Instaliranje Ansible:
Ansible možete jednostavno instalirati na Ubuntu 20.04 LTS iz službenog spremišta Ubuntu-a.
Prvo ažurirajte predmemoriju spremišta APT paketa sljedećom naredbom:
$ sudo apt ažuriranje
Predmemorija spremišta spremišta APT-a trebala bi se ažurirati.
Sada instalirajte Ansible pomoću sljedeće naredbe:
$ sudo apt install ansible
Da biste potvrdili instalaciju, pritisnite Y a zatim pritisnite
Treba instalirati Ansible.
Sada pokrenite sljedeću naredbu da provjerite radi li ansible ispravno.
$ ansible --verzijaKao što vidite, naredba ansible je dostupna i radi ispravno.
Generiranje SSH ključa:
Sada morate generirati SSH ključ na računalu na koje ste instalirali Ansible.
Da biste generirali SSH ključ, pokrenite sljedeću naredbu:
$ ssh-keygen
Sada pritisnite
Pritisnite
Pritisnite
Treba generirati SSH ključ.
Konfiguriranje Ubuntu hostova za odgovornu automatizaciju:
U ovom odjeljku pokazat ću vam kako konfigurirati Ubuntu domaćin (domaćin1) za Ansible automatizaciju. Ako imate više hostova koje želite automatizirati pomoću Ansible, ponovite isti postupak na svakom od hostova.
Ubuntu Ansible hostovi (koje želite konfigurirati za Ansible automatizaciju) moraju imati instaliran paket SSH poslužitelja.
Prvo ažurirajte predmemoriju spremišta APT paketa sljedećom naredbom:
$ sudo apt ažuriranje
Zatim instalirajte OpenSSH poslužitelj sa sljedećom naredbom:
$ sudo apt install openssh-server -y
U mom je slučaju paket OpenSSH poslužitelja već instaliran. Ako nije instaliran u vašem slučaju, trebao bi biti instaliran.
Sada provjerite je li sshd usluga se izvodi sa sljedećom naredbom:
$ sudo systemctl status sshdKao što vidite, sshd usluga je aktivan (trčanje) i omogućeno (automatski će se pokrenuti prilikom pokretanja sustava).
Ako je sshd usluga nije aktivan (pokrenut) u vašem slučaju, pokrenite ga ručno sljedećom naredbom:
$ sudo systemctl start sshdAko je sshd usluga nije omogućeno (nije dodano pri pokretanju sustava), u vašem slučaju dodajte ga ručno pri pokretanju sustava sljedećom naredbom:
$ sudo systemctl omogući sshdSada konfigurirajte vatrozid da omogući SSH pristup sljedećom naredbom:
$ sudo ufw dopusti ssh
Također biste trebali stvoriti ansible korisnika i dopustite sudo pristup sučelju bez lozinke ansible korisnik.
Da biste stvorili ansible korisnik, pokrenite sljedeću naredbu:
$ sudo adduser ansible
Sada unesite lozinku za ansible korisnik i pritisnite
Sada ponovno unesite lozinku i pritisnite
Sada pritisnite
Sada pritisnite
Sada pritisnite
Sada pritisnite
Sada pritisnite
Sad upišite g a zatim pritisnite
An ansible treba stvoriti korisnika.
Sada konfigurirajte sudo pristup sučelju bez lozinke ansible korisnik sa sljedećom naredbom:
$ echo "ansible ALL = (ALL) NOPASSWD: ALL" | sudo tee / etc / sudoers.d / ansible
Sada pronađite IP adresu hosta Ansible (domaćin1) sa sljedećom naredbom:
$ hostname -IOvdje je IP adresa u mom slučaju 192.168.20.162. Za vas će biti drugačije. Dakle, pobrinite se da ga sada zamijenite svojim obrascem.
Sada s računala na koje ste instalirali Ansible kopirajte javni ključ SSH na domaćin Ansible (domaćin1) kako slijedi:
$ ssh-copy-id ansible @ 192.168.20.162
Upišite Da i pritisnite
Sada unesite lozinku za ansible korisnik i pritisnite
Javni SSH ključ treba kopirati u domaćin1.
Sada onemogućite prijavu na temelju lozinke za ansible korisnik sa sljedećom naredbom:
$ sudo usermod -L ansible
Sada možete samo SSH unijeti u Ansible host (domaćin1) kao ansible korisnik bez lozinke s računala s kojeg ste kopirali SSH javni ključ (u ovom slučaju računalo na koje ste instalirali Ansible). Ali nećete moći SSH u Ansible host (domaćin1) kao ansible korisnik s bilo kojeg drugog računala. Na ovaj način sam konfigurirao domaćine Ansible iz sigurnosnih razloga. Kao ansible Korisnik ne treba lozinku za pokretanje administrativnih naredbi, rizično je dopustiti prijavu na temelju lozinke za ansible korisnik.
Sada biste trebali biti u mogućnosti SSH-a u ansible hostu domaćin1 s računala na koje ste instalirali Ansible kako slijedi:
$ ssh ansible @ 192.168.20.162
Kao što vidite, mogu pristupiti domaćinu Ansible (domaćin1) kao odgovorni korisnik bez ikakve lozinke. Dakle, domaćin Ansible (domaćin1) je spreman za Ansible automatizaciju.
Ako iz nekog razloga želite omogućiti prijavu na temelju lozinke za ansible ponovno pokrenite sljedeću naredbu u hostu Ansible (domaćin1):
$ sudo usermod -U ansible
Na isti način možete konfigurirati koliko god hostova želite za Ansible automatizaciju.
U ovom sam članku konfigurirao samo 2 hosta, domaćin1 i domaćin2 za demonstraciju.
Ispitivanje odgovorno:
Sada stvorite novi direktorij projekta ~ / ansible-demo / u računalo na koje ste instalirali Ansible kako slijedi:
$ mkdir ~ / ansible-demo
Sada idite na ~ / ansible-demo / direktorij kako slijedi:
$ cd ~ / ansible-demo /
Sada stvorite novi domaćini datoteku u direktoriju projekta kako slijedi:
$ nano domaćini
Sada unesite IP adrese ili DNS imena hostova Ansible (domaćin1 i domaćin2 u mom slučaju) u domaćini datoteka na sljedeći način:
192.168.20.162192.168.20.153
Sada spremite datoteku pritiskom na
Pokušajte pingati sve hostove koristeći Ansible na sljedeći način:
$ ansible sve -i ./ domaćini -u ansible -m pingBILJEŠKA: Ovdje se opcija -u koristi za određivanje korisničkog imena (u ovom slučaju ansible) koje će Ansible koristiti za SSH na hostovima.
Kao što vidite, svi domaćini mogu biti pingirani. Dakle, domaćini su spremni za Ansible automatizaciju.
Na isti način, možete pokrenuti bilo koju naredbu u hostovima koristeći Ansible na sljedeći način:
$ ansible sve -i ./ hosts -u ansible -m shell -a 'echo "$ (hostname) - $ (hostname -I)"'
Kao što vidite, naredba se uspješno pokrenula na svakom od domaćina i prikazan je izlaz.
Dakle, ovo je način na koji instalirate Ansible na Ubuntu 20.04 LTS i konfigurirajte Ubuntu 20.04 LTS domaćini za Ansible automatizaciju. Hvala što ste pročitali ovaj članak.