Ansible

Hoe Ansible op Ubuntu 20 te installeren.04 LTS

Hoe Ansible op Ubuntu 20 te installeren.04 LTS
In dit artikel laat ik je zien hoe je Ansible installeert op Ubuntu 20.04 LTS en configureer Ubuntu 20.04 LTS-hosts voor Ansible-automatisering. Dus laten we beginnen.

Netwerk topologie:

Hier de linuxhint-711ea is een Ubuntu 20.04 LTS-machine waar ik Ansible zal installeren.

Dan zal ik de hosts configureren gastheer1 (IP-adres 192.168.20.162) en gastheer2 (IP-adres 192.168.20.153) voor Ansible-automatisering en voer er opdrachten op uit met behulp van Ansible vanuit de from linuxhint-711ea machine.

ik bel gewoon gastheer1 en gastheer2 als Ansible-hosts in dit artikel.

Ansible installeren:

U kunt Ansible eenvoudig installeren op Ubuntu 20.04 LTS uit de officiële pakketrepository van Ubuntu.

Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:

$ sudo apt-update

De cache van de APT-pakketrepository moet worden bijgewerkt.

Installeer nu Ansible met de volgende opdracht:

$ sudo apt install ansible

Om de installatie te bevestigen, drukt u op Y en druk vervolgens op .

Ansible moet worden geïnstalleerd.

Voer nu de volgende opdracht uit om te controleren of ansible correct werkt:.

$ ansible --versie

Zoals je kunt zien, is het ansible-commando beschikbaar en werkt het correct.

SSH-sleutel genereren:

Nu moet je een SSH-sleutel genereren op de computer waarop je Ansible hebt geïnstalleerd.

Voer de volgende opdracht uit om een ​​SSH-sleutel te genereren:

$ ssh-keygen

Druk nu op .

druk op .

druk op .

Er moet een SSH-sleutel worden gegenereerd.

Ubuntu-hosts configureren voor Ansible-automatisering:

In dit gedeelte laat ik u zien hoe u een Ubuntu-host (gastheer1) voor Ansible-automatisering. Als je meer dan één host hebt die je wilt automatiseren met Ansible, herhaal dan hetzelfde proces op elk van de hosts.

Op de Ubuntu Ansible-hosts (die u wilt configureren voor Ansible-automatisering) moet een SSH-serverpakket zijn geïnstalleerd.

Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:

$ sudo apt-update

Installeer vervolgens de OpenSSH-server met de volgende opdracht:

$ sudo apt install openssh-server -y

In mijn geval is het OpenSSH-serverpakket al geïnstalleerd. Als het in uw geval niet is geïnstalleerd, moet het worden geïnstalleerd.

Controleer nu of de sshd service wordt uitgevoerd met het volgende commando:

$ sudo systemctl status sshd

Zoals je kunt zien, is de sshd service is actief (rennen) en ingeschakeld (start automatisch bij het opstarten van het systeem).

Als de sshd service is niet actief (in uw geval actief), start het handmatig met de volgende opdracht:

$ sudo systemctl start sshd

Als de sshd service is niet ingeschakeld (niet toegevoegd aan het opstarten van het systeem) in uw geval, voeg het in uw geval handmatig toe aan het opstarten van het systeem met de volgende opdracht:

$ sudo systemctl sshd inschakelen

Configureer nu de firewall om SSH-toegang toe te staan ​​met de volgende opdracht:

$ sudo ufw ssh . toestaan

Je moet ook een maken weerbaar gebruiker en sta wachtwoordloze sudo-toegang toe tot de weerbaar gebruiker.

om een ​​te maken weerbaar gebruiker, voer de volgende opdracht uit:

$ sudo adduser ansible

Typ nu een wachtwoord voor de weerbaar gebruiker en druk op .

Typ nu het wachtwoord opnieuw en druk op .

Druk nu op .

Druk nu op .

Druk nu op .

Druk nu op .

Druk nu op .

Typ nu in ja en druk vervolgens op .

Een weerbaar gebruiker moet worden aangemaakt.

Configureer nu wachtwoordloze sudo-toegang tot de weerbaar gebruiker met het volgende commando:

$ echo "ansible ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ansible

Zoek nu het IP-adres van de Ansible-host (gastheer1) met het volgende commando:

$ hostnaam -I

Hier is het IP-adres in mijn geval: 192.168.20.162. Het zal voor jou anders zijn. Zorg er dus voor dat u het nu vervangt door uw formulier form.

Kopieer nu vanaf de computer waarop u Ansible hebt geïnstalleerd de openbare SSH-sleutel naar de Ansible-host (gastheer1) als volgt:

$ ssh-copy-id [email protected]

Typ in Ja en druk op .

Typ nu het wachtwoord voor de weerbaar gebruiker en druk op .

De openbare SSH-sleutel moet worden gekopieerd naar: gastheer1.

Schakel nu op wachtwoord gebaseerde login uit voor de weerbaar gebruiker met het volgende commando:

$ sudo usermod -L ansible

Nu kunt u alleen SSH naar de Ansible-host (gastheer1) net zo weerbaar gebruiker zonder wachtwoord van de computer waarvan je de openbare SSH-sleutel hebt gekopieerd (in dit geval de computer waarop je Ansible hebt geïnstalleerd). Maar u kunt SSH niet naar de Ansible-host (gastheer1) net zo weerbaar gebruiker vanaf een andere computer. Ik heb de Ansible-hosts om veiligheidsredenen op deze manier geconfigureerd. als de weerbaar gebruiker geen wachtwoord nodig heeft voor het uitvoeren van administratieve opdrachten, het is riskant om op wachtwoord gebaseerde login toe te staan ​​voor de weerbaar gebruiker.

Nu zou je in staat moeten zijn om te SSH naar de ansible host gastheer1 vanaf de computer waarop u Ansible als volgt hebt geïnstalleerd:

$ ssh [email protected]

Zoals je kunt zien, heb ik toegang tot de Ansible-host (gastheer1) als ansible-gebruiker zonder wachtwoord. Dus de Ansible-host (gastheer1) is klaar voor Ansible-automatisering.

Als u om de een of andere reden aanmelding op basis van een wachtwoord wilt toestaan ​​voor de weerbaar gebruiker opnieuw, voer de volgende opdracht uit in de Ansible-host (gastheer1):

$ sudo usermod -U ansible

U kunt op dezelfde manier zoveel hosts configureren als u wilt voor Ansible-automatisering.

In dit artikel heb ik slechts 2 hosts geconfigureerd, gastheer1 en gastheer2 voor de demonstratie.

Ansible testen:

Maak nu een nieuwe projectdirectory aan ~/ansible-demo/ op de computer waarop u Ansible als volgt hebt geïnstalleerd:

$ mkdir ~/ansible-demo

Navigeer nu naar de ~/ansible-demo/ map als volgt:

$ cd ~/ansible-demo/

Maak nu een nieuwe gastheren bestand in de projectdirectory als volgt:

$ nano-hosts

Typ nu de IP-adressen of DNS-namen van de Ansible-hosts (gastheer1 en gastheer2 in mijn geval) in de gastheren bestand als volgt:

192.168.20.162
192.168.20.153

Sla het bestand nu op door op te drukken + X gevolgd door Y en dan .

Probeer nu als volgt alle hosts te pingen met Ansible:

$ ansible all -i ./hosts -u ansible -m ping

OPMERKING: Hier wordt de optie -u gebruikt om de gebruikersnaam (in dit geval ansible) op te geven die Ansible zal gebruiken om SSH naar de hosts te sturen.

Zoals je kunt zien, kunnen alle hosts worden gepingd. Dus de hosts zijn klaar voor Ansible-automatisering.

Op dezelfde manier kunt u elk commando in de hosts als volgt uitvoeren met Ansible:

$ ansible all -i ./hosts -u ansible -m shell -a 'echo "$(hostnaam) - $(hostnaam -I)"'

Zoals u kunt zien, is de opdracht met succes uitgevoerd in elk van de hosts en wordt de uitvoer weergegeven.

Dus zo installeer je Ansible op Ubuntu 20.04 LTS en configureer Ubuntu 20.04 LTS-hosts voor Ansible-automatisering. Bedankt voor het lezen van dit artikel.

Hoe League Of Legends op Ubuntu 14 te installeren.04
Als je fan bent van League of Legends, dan is dit een kans voor jou om League of Legends te testen. Merk op dat LOL wordt ondersteund op PlayOnLinux a...
Installeer de nieuwste OpenRA Strategy Game op Ubuntu Linux
OpenRA is een Libre/Free Real Time Strategy-game-engine die de vroege Westwood-games nabootst, zoals de klassieke Command & Conquer: Red Alert. Gedist...
Installeer de nieuwste Dolphin Emulator voor Gamecube & Wii op Linux
Met de Dolphin Emulator kun je de door jou gekozen Gamecube- en Wii-spellen spelen op Linux Personal Computers (pc). Omdat het een vrij beschikbare e...