Netværkstopologi:
Her er linuxhint-711ea er en Ubuntu 20.04 LTS -maskine, hvor jeg vil installere Ansible.
Derefter konfigurerer jeg værterne vært1 (IP -adresse 192.168.20.162) og vært2 (IP -adresse 192.168.20.153) til Ansible automatisering og kør kommandoer på dem ved hjælp af Ansible fra linuxhint-711ea maskine.
Jeg vil bare ringe vært1 og vært2 som Ansible -værter i denne artikel.
Installation af Ansible:
Du kan nemt installere Ansible på Ubuntu 20.04 LTS fra det officielle pakkeopbevaringssted for Ubuntu.
Opdater først APT -pakkelagringscachen med følgende kommando:
$sudopassende opdatering
APT -pakkens lagercache skal opdateres.
Installer nu Ansible med følgende kommando:
$sudopassendeinstallereansvarsfuldFor at bekræfte installationen skal du trykke på OG og tryk derefter på .
Ansible skal installeres.
Kør nu følgende kommando for at kontrollere, om ansible fungerer korrekt.
$ansvarsfuld--versionSom du kan se, er ansible -kommandoen tilgængelig og fungerer korrekt.
Generering af SSH -nøgle:
Nu skal du generere en SSH -nøgle på den computer, hvor du har installeret Ansible.
For at generere en SSH -nøgle skal du køre følgende kommando:
$ssh-keygenTryk nu på .
Trykke .
Trykke .
Der skal genereres en SSH -nøgle.
Konfiguration af Ubuntu -værter til ansvarlig automatisering:
I dette afsnit vil jeg vise dig, hvordan du konfigurerer en Ubuntu -vært ( vært1 ) for Ansible automation. Hvis du har mere end én vært, som du vil automatisere ved hjælp af Ansible, skal du gentage den samme proces på hver af værterne.
Ubuntu Ansible -værterne (som du vil konfigurere til Ansible -automatisering) skal have SSH -serverpakke installeret.
Opdater først APT -pakkelagringscachen med følgende kommando:
$sudopassende opdateringInstaller derefter OpenSSH -serveren med følgende kommando:
$sudopassendeinstallereopenssh-server-ogI mit tilfælde er OpenSSH -serverpakken allerede installeret. Hvis det ikke er installeret i dit tilfælde, skal det installeres.
Tjek nu om sshd service kører med følgende kommando:
$sudosystemctl status sshdSom du kan se, er sshd service er aktiv (løb) og aktiveret (starter automatisk ved systemstart).
Hvis sshd service er ikke aktiv (kører) i dit tilfælde, start det manuelt med følgende kommando:
$sudosystemctl start sshdHvis sshd service er ikke aktiveret (ikke tilføjet til systemstart) i dit tilfælde skal du tilføje det til systemstart manuelt med følgende kommando:
$sudosystemctlaktiveresshdKonfigurer nu firewallen til at tillade SSH -adgang med følgende kommando:
$sudoufw tilladesshDu bør også oprette en ansvarsfuld bruger og tillad sudo-adgang uden adgangskode til ansvarsfuld bruger.
For at oprette en ansvarsfuld bruger, kør følgende kommando:
$sudoadduser ansibleIndtast nu en adgangskode til ansvarsfuld bruger, og tryk på .
Indtast nu adgangskoden igen, og tryk på .
Tryk nu på .
Tryk nu på .
Tryk nu på .
Tryk nu på .
Tryk nu på .
Skriv nu ind og og tryk derefter på .
An ansvarsfuld bruger skal oprettes.
Konfigurer nu sudo-adgang uden adgangskode til ansvarsfuld bruger med følgende kommando:
$smed ud 'ansible ALL = (ALL) NOPASSWD: ALL' | sudo tee /etc/sudoers.d/ansvarsfuldFind nu IP -adressen til Ansible -værten ( vært1 ) med følgende kommando:
$værtsnavn -JEGHer er IP -adressen i mit tilfælde 192.168.20.162 . Det vil være anderledes for dig. Så sørg for at udskifte den med din formular nu.
Nu, fra den computer, hvor du har installeret Ansible, kopierer du SSHs offentlige nøgle til Ansible -værten ( vært1 ) som følger:
$ssh-copy-id ansible@192.168.20.162Indtaste Ja og tryk på .
Indtast nu adgangskoden til ansvarsfuld bruger, og tryk på .
Den offentlige SSH -nøgle skal kopieres til vært1 .
Deaktiver nu adgangskodebaseret login til ansvarsfuld bruger med følgende kommando:
$sudobrugerform-DETansvarsfuldNu kan du kun SSH i Ansible -værten ( vært1 ) som ansvarsfuld bruger uden adgangskode fra den computer, du har kopieret den offentlige SSH -nøgle fra (i dette tilfælde computeren, hvor du har installeret Ansible). Men du kan ikke SSH ind i Ansible -værten ( vært1 ) som ansvarsfuld bruger fra enhver anden computer. Jeg har konfigureret Ansible -værterne på denne måde af sikkerhedsmæssige årsager. Som den ansvarsfuld bruger ikke har brug for nogen adgangskode til at køre administrative kommandoer, er det risikabelt at tillade adgangskodebaseret login til ansvarsfuld bruger.
Nu skulle du være i stand til at SSH til den ansvarlige vært vært1 fra computeren, hvor du har installeret Ansible som følger:
$sshansvarsfuld@192.168.20.162Som du kan se, har jeg adgang til Ansible -værten ( vært1 ) som ansible bruger uden adgangskode. Så Ansible -værten ( vært1 ) er klar til Ansible automatisering.
Hvis du af en eller anden grund ønsker at tillade adgangskodebaseret login til ansvarsfuld bruger igen, kør følgende kommando i Ansible -værten ( vært1 ):
$sudobrugerform-UansvarsfuldDu kan konfigurere så mange værter, du vil, til Ansible -automatisering på samme måde.
I denne artikel har jeg kun konfigureret 2 værter, vært1 og vært2 til demonstrationen.
Testbar Ansible:
Opret nu et nyt projektmappe ~/ansible-demo/ på computeren, hvor du har installeret Ansible som følger:
$mkdir~/ansible-demoNaviger nu til ~/ansible-demo/ bibliotek som følger:
$CD~/ansible-demo/Opret nu en ny værter fil i projektmappen som følger:
$nanoværterIndtast nu IP -adresserne eller DNS -navnene på Ansible -værterne ( vært1 og vært2 i mit tilfælde) i værter fil som følger:
192.168.20.162192.168.20.153
Gem nu filen ved at trykke på + X efterfulgt af OG og så .
Prøv nu at pinge alle værterne ved hjælp af Ansible som følger:
$ansvarsfuld alle-jeg./værter-uansvarsfuld-m pingBEMÆRK: Her bruges indstillingen -u til at angive det brugernavn (ansible i dette tilfælde), som Ansible vil bruge til at SSH ind i værterne.
Som du kan se, kan alle værterne pinges. Så værterne er klar til Ansible automatisering.
På samme måde kan du køre enhver kommando i værterne ved hjælp af Ansible som følger:
$ansvarsfuld alle-jeg./værter-uansvarsfuld-mskal-til 'echo' $ (værtsnavn) - $ (værtsnavn -I) ''Som du kan se, kørte kommandoen med succes i hver af værterne, og output blev vist.
Så sådan installerer du Ansible på Ubuntu 20.04 LTS og konfigurerer Ubuntu 20.04 LTS -værter til Ansible -automatisering. Tak fordi du læste denne artikel.