Võrgu topoloogia
Siin, ansible-pc on Debiani 10 masin, kuhu installime Ansible.
Serverid 6f7c2 ja 6b219 on Debiani 10 masinad, mille konfigureerime Ansible automatiseerimiseks. Selle artikli tähenduses nimetan neid servereid lihtsalt Ansible hostiteks.
Saame kasutada rakendust Ansible from ansible-pc erinevate ülesannete automatiseerimiseks 6f7c2 ja 6b219 Debiani serverid.
Ansible'i installimine
Selles jaotises näitan teile, kuidas rakendust Ansible installida ansible-pc.
Anniini saate installida Debian 10-sse Debiani ametlikust paketihoidlast.
Kõigepealt värskendage APT paketi hoidla vahemälu järgmise käsuga:
$ sudo apt värskendus
Nüüd installige Ansible järgmise käsuga:
$ sudo apt install ansible
Installimise kinnitamiseks vajutage Y ja seejärel vajutage
Ansible peaks olema paigaldatud.
Nüüd käivitage järgmine käsk, et kontrollida, kas Ansible töötab õigesti.
$ ansible --versioonNagu näete, on võimalik käsk saadaval ja töötab õigesti. Võimalik 2.7.7 on uusim versioon Ansible, mis on saadaval Debiani paketihoidlas selle artikli kirjutamise ajal.
SSH-võtme genereerimine
Debiani 10 masinas (ansible-pc), kuhu olete installinud Ansible, peate kõigepealt genereerima SSH-võtme.
SSH-võtme genereerimiseks käivitage järgmine käsk:
$ ssh-keygen
Nüüd vajutage
Vajutage
Vajutage
Tuleks luua SSH-võti.
Debiani hostide konfigureerimine võimalikuks automatiseerimiseks
Selles jaotises näitan teile, kuidas seadistada Debiani hosti Ansible automatiseerimiseks. Kui teil on mitu masinat, mida soovite Ansible abil automatiseerida, korrake sama protsessi kõigi hostide puhul.
Hostidel, mille soovite Ansible automatiseerimiseks konfigureerida, peab olema SSH-serveripakett eelinstallitud.
Kõigepealt värskendage APT paketi hoidla vahemälu järgmise käsuga:
$ sudo apt värskendus
Seejärel installige OpenSSH-server järgmise käsuga:
$ sudo apt install openssh-server -y
Minu puhul on OpenSSH serveripakett juba installitud. Kui teie puhul pole seda installitud, peaks see olema installitud enne seda sammu.
Nüüd kontrollige, kas sshd teenus töötab järgmise käsu kaudu:
$ sudo systemctl olek sshdNagu näete, sshd teenus on aktiivne (jooksmine) ja lubatud (käivitub automaatselt süsteemi käivitamisel).
Kui sshd teenus on pole aktiivne (töötab), käivitage see käsitsi järgmise käsuga:
$ sudo systemctl start sshd
Kui sshd teenus ei ole lubatud (pole süsteemi käivitusse lisatud), lisage see käsitsi süsteemi käivitusse järgmise käsuga:
$ sudo systemctl lubab sshd
Nüüd looge võimalik kasutaja ja lubage paroolivaba sudo juurdepääs sellele võimalik kasutaja.
Et luua võimalik kasutaja, käivitage järgmine käsk:
$ sudo adduser --shell / bin / bash --gecos "" ansible
Sisestage võimalik ja vajutage
Sisestage parool uuesti ja vajutage
An võimalik kasutaja tuleks luua.
Nüüd, et võimaldada paroolivaba sudo juurdepääs võimalik kasutaja, muutke / etc / sudoers fail järgmise käsuga:
$ sudo visudo
Nüüd lisage jaotisele järgmine rida / etc / sudoers faili.
ansible ALL = (KÕIK) NOPASSWD: KÕIKSeejärel salvestage fail, vajutades
Nüüd leidke hosti Ansible IP-aadress 6f7c2 järgmise käsuga:
$ hostinimi -ISiin on minu puhul IP-aadress 192.168.20.167. Teie jaoks on see erinev. Niisiis, asendage see aadress nüüd oma vormiga.
SSH avaliku võtme kopeerimine võimalikule hostile
Arvutist, kuhu olete installinud Ansible (ansible-pc), kopeerige SSH avalik võti Ansible hostile 6f7c2 järgnevalt:
$ ssh-copy-id ansible @ 192.168.20.167
Trüki sisse jah ja vajutage
Järgmisena sisestage võimalik ja vajutage
Avalik SSH-võti tuleks kopeerida saidile Ansible 6f7c2.
Peaksite saama SSH-d Ansible hostile 6f7c2 kasutajana võimalik ilma paroolita, nagu näete allolevalt ekraanipildilt:
$ ssh ansible @ 192.168.20.167
Samuti peaksite saama käitada sudo-käske ilma parooli küsimata.
$ sudo ls /
Lõpuks sulgege SSH-seanss järgmiselt:
$ väljumine
Vastutavate hostide turvamine
Nagu võimalik Kasutaja saab käivitada mis tahes sudo käsu ilma parooli küsimata. Oleme konfigureerinud SSH-võtmel põhineva sisselogimise. Kuid saate siiski SSH-d sisse logida Ansible hostidesse võimalik kasutaja parooli kasutades võimalik kasutaja. Nii et see pole eriti turvaline.
Turvalisuse parandamiseks käivitage jaotises Ansible hosts järgmine käsk, et keelata paroolipõhine sisselogimine võimalik kasutaja:
$ sudo usermod -L ansible
Kui otsustate hiljem rakenduse jaoks paroolipõhise sisselogimise lubada võimalik kasutaja, käivitage järgmine käsk Ansible hostis:
$ sudo usermod -U ansibleTestimine on võimalik
Looge uus projekti kataloog ~ / projekt / Debiani masinas, kuhu olete installinud Ansible (ansible-pc) kasutades järgmist koodi:
$ mkdir ~ / projekt
Navigeerige lehele ~ / projekt / kataloogi, kasutades järgmist koodi:
$ cd ~ / projekt /
Looge uus võõrustajad fail projekti kataloogis järgmiselt:
$ nano hostid
Nüüd loetlege Ansible hosts IP-aadressid või DNS-nimed (6f7c2 ja 6b219 minu puhul) võõrustajad fail:
192.168.20.167192.168.20.168
Kui olete lõpetanud, salvestage fail, vajutades
Testimiseks proovige kõiki hoste pingutada, kasutades Ansible'i järgmist koodi:
$ ansible -i ./ hosts kõik -u ansible -m pingMÄRGE: Siin, -u suvandit kasutatakse kasutajanime (võimalik antud juhul), mida Ansible hostide SSH-le kasutab.
Nagu näete, pääseb Ansible juurde kõigile hostidele. Niisiis, hostid on Ansible'i automatiseerimiseks valmis.
Nii installite Ansible Debian 10-sse ja konfigureerite Debiani hostid Ansible automatiseerimiseks. Täname, et lugesite seda artiklit.