Ansible

Installer Ansible på Debian for automatisering

Installer Ansible på Debian for automatisering

Nettverkstopologi

Her, ansible-pc er en Debian 10-maskin der vi skal installere Ansible.

Serverne 6f7c2 og 6b219 er Debian 10-maskiner som vi vil konfigurere for Ansible-automatisering. Jeg vil ganske enkelt kalle disse serverne Ansible-verter for formålet med denne artikkelen.

Vi kan bruke Ansible fra ansible-pc å automatisere forskjellige oppgaver i 6f7c2 og 6b219 Debian-servere.

Installere Ansible

I denne delen vil jeg vise deg hvordan du installerer Ansible på ansible-pc.

Du kan installere Ansible på Debian 10 fra det offisielle pakkelageret til Debian.

Oppdater først APT-pakkelagerbufferen med følgende kommando:

$ sudo apt oppdatering

Installer nå Ansible med følgende kommando:

$ sudo apt installere ansible

Trykk på for å bekrefte installasjonen Y og trykk deretter på .

Ansible skal installeres.

Kjør nå følgende kommando for å sjekke om Ansible fungerer riktig.

$ ansible - versjon

Som du kan se, er ansible-kommandoen tilgjengelig og fungerer som den skal. Ansible 2.7.7 er den siste versjonen av Ansible som er tilgjengelig i Debian-pakkelageret da denne artikkelen ble skrevet.

Genererer SSH-nøkkel

På Debian 10-maskinen (ansible-pc) der du har installert Ansible, må du først generere en SSH-nøkkel.

For å generere en SSH-nøkkel, kjør følgende kommando:

$ ssh-keygen

Trykk nå .

trykk .

trykk .

En SSH-nøkkel bør genereres.

Konfigurere Debian Hosts for Ansible Automation

I denne delen vil jeg vise deg hvordan du konfigurerer en Debian-vert for Ansible-automatisering. Hvis du har flere verter som du vil automatisere ved hjelp av Ansible, gjenta samme prosess for hver av vertene.

Vertene du vil konfigurere for Ansible-automatisering, må ha SSH-serverpakken forhåndsinstallert.

Oppdater først APT-pakkelagerbufferen med følgende kommando:

$ sudo apt oppdatering

Installer deretter OpenSSH-serveren med følgende kommando:

$ sudo apt installerer openssh-server -y

I mitt tilfelle er OpenSSH-serverpakken allerede installert. Hvis det ikke er installert i ditt tilfelle, bør det installeres før dette trinnet.

Sjekk nå om sshd tjenesten kjører via følgende kommando:

$ sudo systemctl status sshd

Som du kan se, er sshd tjenesten er aktiv (løping) og aktivert (starter automatisk ved systemstart).

Hvis den sshd tjenesten er ikke aktiv (kjører), start den manuelt med følgende kommando:

$ sudo systemctl start sshd

Hvis den sshd tjenesten er ikke aktivert (ikke lagt til systemoppstart), i ditt tilfelle, legg det til systemoppstart manuelt med følgende kommando:

$ sudo systemctl aktiver sshd

Lag nå en ansible bruker og tillat passordfri sudotilgang til ansible bruker.

Å lage en ansible bruker, kjør følgende kommando:

$ sudo adduser - shell / bin / bash --gecos "" ansible

Skriv inn et passord for ansible brukeren og trykk .

Skriv passordet på nytt, og trykk på .

An ansible bruker skal opprettes.

Nå, for å gi passordfri sudotilgang til ansible bruker, rediger / etc / sudoers fil med følgende kommando:

$ sudo visudo

Nå legger du til følgende linje i / etc / sudoers fil.

ansible ALL = (ALL) NOPASSWD: ALL

Lagre deretter filen ved å trykke på + X etterfulgt av Y, og trykk deretter på .

Finn nå IP-adressen til Ansible-verten 6f7c2 med følgende kommando:

$ vertsnavn -I

Her er IP-adressen i mitt tilfelle 192.168.20.167. Det vil være annerledes for deg. Så sørg for å erstatte denne adressen med ditt eget skjema nå.

Kopiering av SSH Public Key til Ansible Host

Fra datamaskinen der du har installert Ansible (ansible-pc), kopier den offentlige SSH-nøkkelen til Ansible-verten 6f7c2 som følger:

$ ssh-copy-id ansible @ 192.168.20.167

Skriv inn ja og trykk .

Skriv deretter inn passordet for ansible brukeren og trykk .

Den offentlige SSH-nøkkelen skal kopieres til Ansible vert 6f7c2.

Du bør kunne SSH inn i Ansible-verten 6f7c2 som bruker ansible uten noe passord, som du kan se fra skjermbildet nedenfor:

$ ssh ansible @ 192.168.20.167

Du bør også kunne kjøre sudo-kommandoer uten å bli bedt om noe passord.

$ sudo ls /

Til slutt lukker du SSH-økten som følger:

$ exit

Sikre synlige verter

Som den ansible brukeren kan kjøre hvilken som helst sudo-kommando uten å bli bedt om et passord, vi har konfigurert SSH-nøkkelbasert pålogging for Ansible-vertene. Men du kan fortsatt SSH inn i Ansible-vertene som ansible bruker bruker passordet til ansible bruker. Så dette er ikke veldig sikkert.

For å forbedre sikkerheten, kjør følgende kommando på Ansible-vertene for å deaktivere passordbasert pålogging for ansible bruker:

$ sudo usermod -L ansible

Hvis du senere bestemmer deg for å aktivere passordbasert pålogging for ansible bruker, kjør følgende kommando på Ansible-verten:

$ sudo usermod -U ansible

Testing Ansible

Opprett en ny prosjektkatalog ~ / prosjekt / i Debian-maskinen der du har installert Ansible (ansible-pc) ved hjelp av følgende kode:

$ mkdir ~ / prosjekt

Naviger til ~ / prosjekt / katalog med følgende kode:

$ cd ~ / prosjekt /

Lage en ny verter filen i prosjektkatalogen som følger:

$ nano verter

Liste nå IP-adressene eller DNS-navnene til Ansible-vertene (6f7c2 og 6b219 i mitt tilfelle) i verter fil:

192.168.20.167
192.168.20.168

Når du er ferdig, lagrer du filen ved å trykke på + X etterfulgt av Y og deretter slå .

For å teste, prøv å pinge alle vertene ved hjelp av Ansible med følgende kode:

$ ansible -i ./ verter alt -u ansible -m ping

MERK: Her, den -u alternativet brukes til å spesifisere brukernavnet (ansible i dette tilfellet) som Ansible vil bruke til SSH i vertene.

Som du kan se, har Ansible tilgang til alle vertene. Så vertene er klare for Ansible automatisering.

Så det er slik du installerer Ansible på Debian 10 og konfigurerer Debian-verter for Ansible-automatisering. Takk for at du leser denne artikkelen.

Hvordan utvikle et spill på Linux
For et tiår siden ville ikke mange Linux-brukere forutsi at deres favorittoperativsystem en dag ville være en populær spillplattform for kommersielle ...
Åpne kildeporter for kommersielle spillmotorer
Gratis, åpen kildekode og plattformspillmotorrekreasjoner kan brukes til å spille gamle så vel som noen av de ganske nylige spilletitlene. Denne artik...
Beste kommandolinjespill for Linux
Kommandolinjen er ikke bare din største allierte når du bruker Linux, den kan også være kilden til underholdning fordi du kan bruke den til å spille m...