GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Ansible na Ubuntu 18.04

V tomto článku vysvětlíme nezbytné kroky k instalaci a konfiguraci Ansible na Ubuntu 18.04 LTS. Než budete pokračovat v tomto tutoriálu, ujistěte se, že jste přihlášeni jako uživatel s právy sudo. Všechny příkazy v tomto tutoriálu by měly být spouštěny jako uživatel bez oprávnění root.

Ansible je bezplatný a otevřený nástroj pro konfiguraci a automatizaci pro operační systém typu UNIX. Je napsán v pythonu a podobně jako Chef nebo Puppet, ale existuje jeden rozdíl a výhoda Ansible je, že na uzly nemusíme instalovat žádného agenta. Pro komunikaci se svými uzly používá SSH.

V tomto článku si ukážeme, jak nainstalovat a nakonfigurovat Ansible v Ubuntu a pokusíme se spravovat jeho dva uzly:

  • Ansible Server – ansible.idroot.us ( 192.168.13.33)
  • Ansible Client – ​​192.168.100.120

Nainstalujte Ansible na Ubuntu

Krok 1. Než začnete instalovat jakýkoli balíček na svůj server Ubuntu, vždy doporučujeme zajistit, aby byly všechny systémové balíčky aktualizovány.

sudo apt update
sudo apt upgrade

Krok 2. Nainstalujte Ansible na Ubuntu.

Nejprve musíme povolit ansible repo. Nainstalujte úložiště pomocí následujícího příkazu:

sudo apt-add-repository ppa:ansible/ansible

Po přidání úložiště Ansible spusťte níže uvedené příkazy k instalaci:

sudo apt update
sudo apt install ansible

Po úspěšné instalaci Ansible můžete ověřit nainstalovanou verzi ansible spuštěním:

sudo ansible --version

Krok 3. Nastavení konfigurace SSH bez hesla mezi ansible serverem a ansible klientem.

Musíme vygenerovat klíče ssh na serveru ansible a zkopírovat tento klíč do veřejného klíče na klientovi ansible:

[[email protected] ~]# ssh-keygen -t rsa -b 4096 -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:rqAwbwQ8/meilanamaria4D2V0fQ49amw2WKbYIA [email protected]
The key's randomart image is:
+---[RSA 4096]----+
| .oo.+o |
| . =.=.. . |
|. E o + X . o |
|.o. + + = X . |
| .o. + oSX + |
| .. o.+ = |
|o. o oo.o |
| +.. +oo |
| .o ... |
+----[SHA256]-----+
[[email protected] ~]#

Můžeme použít příkaz ssh-copy-id ke zkopírování veřejného klíče z ansible serveru do ansible klientů:

[[email protected] ~]# ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[[email protected] ~]#
[[email protected] ~]# ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.43.131 (192.168.43.131)' can't be established.
ECDSA key fingerprint is SHA256:OuHrnRxppengenkimpoi5Z+1tOWOF8eYZ5Le5MNwUQ.
ECDSA key fingerprint is MD5:78:1c:a5:72:bb:25:fa:c7:67:39:fc:91:b9:fb:b6:20.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[[email protected] ~]#
===============================
[[email protected] ~]# ssh [email protected]
Last login: Thu Sep 19 16:00:57 2019 from bezafari-c1
[[email protected] ~]# exit
logout
Connection to 192.168.100.120 closed.
[[email protected] ~]#

Potřebujeme zkontrolovat, zda náš ansible server a ansible klienti fungují s heslem méně nebo ne? Můžeme to zkontrolovat následovně:

[[email protected] ~]# ssh [email protected]
Last login: Thu Jan 17 17:00:57 2019 from bezafari-c1
[[email protected] ~]# exit
logout
Connection to 192.168.100.120 closed.
[[email protected] ~]#

Krok 4. Konfigurace Ansible serveru pro správu ansible klienta.

Inventarizaci našeho serveru ansible a klienta ansible můžete provést pomocí souboru hostitele serveru ansible. Hostitelský soubor lze nalézt v této cestě na ansible serveru /etc/ansible/host:

[[email protected] ~]# nano /etc/ansible/hosts
[test-servers]
192.168.13.33
192.168.100.120

Krok 5. Spravujte klienta ansible ze serveru ansible.

Zkontrolujte připojení testovacích serverů nebo ansible klientů pomocí příkazu ping:

[[email protected] ~]# ansible -m ping 'test-servers'
192.168.13.33 | SUCCESS => {
"changed": false,
"ping": "pong"
}
192.168.100.120 | SUCCESS => {
"changed": false,
"ping": "pong"
}
[[email protected] ~]#

Můžeme zkontrolovat dostupnost našeho klienta ansible ze serveru ansible:

[[email protected] ~]# ansible -m command -a "uptime" 'test-servers'
192.168.100.120 | CHANGED | rc=0 >>
16:17:35 up 20 min, 3 users, load average: 0.09, 0.16, 0.29

192.168.13.33 | CHANGED | rc=0 >>
16:17:35 up 22 min, 4 users, load average: 0.18, 0.29, 0.55

[[email protected] ~]#

Přesměrování výstupu příkazu do souboru. Jako níže:

[[email protected] ~]# ansible -m command -a "df -Th" 'test-servers' > /tmp/command-output.txt
[[email protected] ~]# cat /tmp/command-output.txt
192.168.13.33 | CHANGED | rc=0 >>
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 13G 5.0G 8.0G 39% /
devtmpfs devtmpfs 482M 0 482M 0% /dev
tmpfs tmpfs 497M 212K 497M 1% /dev/shm
tmpfs tmpfs 497M 7.1M 490M 2% /run
tmpfs tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 158M 340M 32% /boot
tmpfs tmpfs 100M 16K 100M 1% /run/user/0
192.168.100.120 | CHANGED | rc=0 >>
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 13G 3.9G 9.1G 30% /
devtmpfs devtmpfs 906M 0 906M 0% /dev
tmpfs tmpfs 921M 84K 920M 1% /dev/shm
tmpfs tmpfs 921M 8.7M 912M 1% /run
tmpfs tmpfs 921M 0 921M 0% /sys/fs/cgroup
/dev/sda1 xfs 497M 157M 341M 32% /boot
tmpfs tmpfs 185M 20K 184M 1% /run/user/42
tmpfs tmpfs 185M 0 185M 0% /run/user/0
[[email protected] ~]#

To je vše, co potřebujete k instalaci Ansible na Ubuntu 18.04. Doufám, že vám tento rychlý tip pomůže. Pokud máte dotazy nebo návrhy, neváhejte zanechat komentář níže.


Ubuntu
  1. Jak nainstalovat Ansible na Ubuntu Server 21.04

  2. Jak nainstalovat Ansible na Ubuntu 18.04 LTS

  3. Jak nainstalovat R na Ubuntu 16.04

  1. Jak nainstalovat R na Ubuntu 20.04

  2. Jak nainstalovat Go na Ubuntu 18.04

  3. Jak nainstalovat R na Ubuntu 18.04

  1. Jak nainstalovat Ansible AWX na Ubuntu 20.04 LTS

  2. Jak nainstalovat Ansible na Ubuntu 20.04 LTS / 21.04

  3. Jak nainstalovat Ansible na Ubuntu