Tinklo topologija
Čia, ansible-pc yra „Debian 10“ mašina, kurioje įdiegsime „Ansible“.
Serveriai 6f7c2 ir 6b219 yra „Debian 10“ mašinos, kurias sukonfigūruosime „Ansible Automation“. Šio straipsnio tikslais šiuos serverius tiesiog vadinsiu „Ansible hosts“.
Mes galime naudoti „Ansible“ nuo ansible-pc automatizuoti įvairias užduotis 6f7c2 ir 6b219 „Debian“ serveriai.
Diegimas „Ansible“
Šiame skyriuje aš jums parodysiu, kaip įdiegti „Ansible“ ansible-pc.
Galite įdiegti „Ansible“ „Debian 10“ iš oficialios „Debian“ paketų saugyklos.
Pirmiausia atnaujinkite APT paketų saugyklos talpyklą naudodami šią komandą:
$ sudo apt atnaujinimas
Dabar įdiekite „Ansible“ naudodami šią komandą:
$ sudo apt install ansible
Norėdami patvirtinti diegimą, paspauskite Y tada paspauskite
Reikėtų įdiegti „Ansible“.
Dabar paleiskite šią komandą, kad patikrintumėte, ar „Ansible“ veikia tinkamai.
$ ansible --versijaKaip matote, galima komanda yra tinkama ir veikia tinkamai. Galimas 2.7.7 yra naujausia „Ansible“ versija, prieinama „Debian“ paketų saugykloje šio straipsnio rašymo metu.
SSH rakto generavimas
„Debian 10“ mašinoje (ansible-pc), kur įdiegėte „Ansible“, pirmiausia turite sugeneruoti SSH raktą.
Norėdami sugeneruoti SSH raktą, vykdykite šią komandą:
$ ssh-keygen
Dabar paspauskite
Paspauskite
Paspauskite
Reikėtų sugeneruoti SSH raktą.
„Debian“ kompiuterių konfigūravimas, kad būtų galima atlikti automatizavimą
Šiame skyriuje parodysiu, kaip sukonfigūruoti „Debian“ pagrindinį kompiuterį, skirtą „Ansible“ automatizavimui. Jei turite kelis kompiuterius, kuriuos norite automatizuoti naudodami „Ansible“, pakartokite tą patį procesą kiekvienam pagrindiniam kompiuteriui.
Pagrindiniuose kompiuteriuose, kuriuos norite sukonfigūruoti „Ansible“ automatizavimui, turi būti iš anksto įdiegtas SSH serverio paketas.
Pirmiausia atnaujinkite APT paketų saugyklos talpyklą naudodami šią komandą:
$ sudo apt atnaujinimas
Tada įdiekite „OpenSSH“ serverį naudodami šią komandą:
$ sudo apt install openssh-server -y
Mano atveju „OpenSSH“ serverio paketas jau yra įdiegtas. Jei jūsų atveju jis nėra įdiegtas, jis turėtų būti įdiegtas prieš šį veiksmą.
Dabar patikrinkite, ar sshd paslauga veikia naudojant šią komandą:
$ sudo systemctl status sshdKaip matote, sshd paslauga yra aktyvus (bėgimas) ir įjungtas (bus automatiškai paleistas įkrovos metu).
Jei sshd paslauga yra neaktyvus (veikia), paleiskite jį rankiniu būdu naudodami šią komandą:
$ sudo systemctl start sshd
Jei sshd paslauga nėra įjungtas (nepridėta prie sistemos paleisties), pridėkite jį prie sistemos paleisties rankiniu būdu naudodami šią komandą:
$ sudo systemctl įjungti sshd
Dabar sukurkite įmanoma vartotojui ir leisti be slaptažodžio sudo prieigą prie įmanoma Vartotojas.
Norėdami sukurti įmanoma vartotojas, vykdykite šią komandą:
$ sudo adduser --shell / bin / bash --gecos "" ansible
Įveskite slaptažodį, skirtą įmanoma vartotojui ir paspauskite
Dar kartą įveskite slaptažodį ir paspauskite
An įmanoma vartotojas turėtų būti sukurtas.
Dabar, norėdami leisti be slaptažodžių sudo prieigą prie įmanoma vartotojas, redaguokite / etc / sudoers failą su šia komanda:
$ sudo visudo
Dabar pridėkite šią eilutę prie / etc / sudoers failą.
ansible ALL = (VISI) NOPASSWD: VISITada išsaugokite failą paspausdami
Dabar raskite „Ansible“ kompiuterio IP adresą 6f7c2 su tokia komanda:
$ pagrindinio kompiuterio vardas -IMano atveju IP adresas yra 192.168.20.167. Jums bus kitaip. Taigi, būtinai pakeiskite šį adresą savo forma dabar.
SSH viešojo rakto kopijavimas į galimą pagrindinį kompiuterį
Iš kompiuterio, kuriame įdiegėte „Ansible“ (ansible-pc), nukopijuokite viešąjį SSH raktą į Ansible host 6f7c2 taip:
$ ssh-copy-id ansible @ 192.168.20.167
Įrašykite taip ir paspauskite
Tada įveskite įmanoma vartotojui ir paspauskite
Viešasis SSH raktas turėtų būti nukopijuotas į „Ansible host“ 6f7c2.
Turėtumėte sugebėti SSH prisijungti prie „Ansible“ pagrindinio kompiuterio 6f7c2 kaip vartotojas įmanoma be jokio slaptažodžio, kaip matote toliau pateiktoje ekrano kopijoje:
$ ssh ansible @ 192.168.20.167
Taip pat turėtumėte sugebėti paleisti sudo komandas neprašydami įvesti jokio slaptažodžio.
$ sudo ls /
Galiausiai uždarykite SSH sesiją taip:
$ išėjimas
Apsaugoti negalimus šeimininkus
Kaip įmanoma vartotojas gali paleisti bet kurią sudo komandą neprašydamas įvesti slaptažodžio, mes sukonfigūravome SSH raktu pagrįstą prisijungimą prie „Ansible hosts“. Bet jūs vis tiek galite prisijungti prie „Ansible Host“ kaip įmanoma vartotojas, naudodamas įmanoma Vartotojas. Taigi, tai nėra labai saugu.
Norėdami pagerinti saugumą, paleiskite šią komandą „Ansible hosts“, kad išjungtumėte slaptažodžiu pagrįstą prisijungimą prie įmanoma Vartotojas:
$ sudo usermod -L ansible
Jei vėliau nuspręsite įjungti slaptažodžiu pagrįstą prisijungimą prie įmanoma vartotojas, vykdykite šią komandą „Ansible Host“:
$ sudo usermod -U ansible„Testing Ansible“
Sukurkite naują projekto katalogą ~ / projektas / „Debian“ mašinoje, kurioje įdiegėte „Ansible“ (ansible-pc) naudojant šį kodą:
$ mkdir ~ / projektas
Eikite į ~ / projektas / katalogą naudodami šį kodą:
$ cd ~ / projektas /
Sukurkite naują šeimininkai failą projekto kataloge taip:
$ nano šeimininkai
Dabar išvardykite Ansible hosts IP adresus arba DNS pavadinimus (6f7c2 ir 6b219 mano atveju) šeimininkai failas:
192.168.20.167192.168.20.168
Baigę išsaugokite failą paspausdami
Norėdami išbandyti, pabandykite pinguoti visus kompiuterius naudodami „Ansible“ su šiuo kodu:
$ ansible -i ./ priima visus -u ansible -m pingPASTABA: Čia, -u parinktis naudojama nurodyti vartotojo vardą (įmanoma šiuo atveju), kurį „Ansible“ naudos SSH į pagrindinius kompiuterius.
Kaip matote, „Ansible“ gali pasiekti visus kompiuterius. Taigi, pagrindiniai kompiuteriai yra pasirengę „Ansible“ automatizavimui.
Taigi, taip jūs įdiegiate „Ansible“ į „Debian 10“ ir sukonfigūruojate „Debian“ kompiuterius, skirtus „Ansible“ automatizavimui. Dėkojame, kad perskaitėte šį straipsnį.