Vyhledávání na webu

Jak nainstalovat a nakonfigurovat nástroj 'Ansible' Automation Tool pro správu IT – část 1


Ansible je výkonný automatizační software s otevřeným zdrojovým kódem pro konfiguraci, správu a nasazení softwarových aplikací na uzlech bez jakýchkoli prostojů pouze pomocí SSH. Dnes většina nástrojů IT Automation běží jako agent ve vzdáleném hostiteli, ale k provedení této akce stačí na vzdálené uzly nainstalovat SSH připojení a Python (2.4 nebo novější).

Jak Ansible funguje?

Existuje mnoho podobných automatizačních nástrojů, jako je Puppet, Capistrano, Chef, Salt, Space Walk atd., ale Ansible se dělí na dva typy serverů: ovládání strojů a uzlů.

Řídicí stroj, kde je nainstalován Ansible a uzly jsou spravovány tímto řídicím strojem přes SSH. Umístění uzlů určuje ovládání stroje prostřednictvím jeho inventáře.

Řídící stroj (Ansible) nasazuje moduly do uzlů pomocí protokolu SSH a tyto moduly jsou dočasně uloženy na vzdálených uzlech a komunikují se strojem Ansible prostřednictvím připojení JSON přes standardní výstup.

Ansible je bez agenta, to znamená, že není potřeba žádná instalace agenta na vzdálené uzly, takže to znamená, že se pro Ansible nespouštějí žádní démoni na pozadí ani programy, když nespravuje žádné uzly.

Ansible dokáže zpracovat 100 uzlů z jednoho systému přes SSH připojení a celou operaci lze zpracovat a provést jediným příkazem „ansible“. Ale v některých případech, kdy je potřeba provést více příkazů pro nasazení, zde můžeme vytvořit příručky.

Playbooks je skupina příkazů, které mohou provádět více úkolů a každý playbook je ve formátu souboru YAML.

K čemu slouží Ansible

Ansible lze použít v IT infrastruktuře ke správě a nasazení softwarových aplikací do vzdálených uzlů. Řekněme například, že potřebujete nasadit jeden software nebo více softwaru do 100 uzlů jediným příkazem, zde přichází na řadu ansible, s pomocí Ansible můžete nasadit tolik aplikací do mnoha uzlů jediným příkazem, ale pro pochopení ansible skriptů musíte mít trochu programátorských znalostí.

Sestavili jsme sérii o Ansible s názvem „Příprava na nasazení vaší IT infrastruktury s Ansible IT Automation Tool“ v částech 1-4 a pokrývá následující témata.

V tomto článku vám ukážeme, jak nainstalovat 'Ansible' na systémy RHEL/CentOS 7/6, Fedora 21-19, Ubuntu 14.10-13.04 a Debian 7/6 a také si projdeme některé základy, jak spravovat server instalací balíčků, aplikací aktualizací a mnohem více od základních po profesionální.

Předpoklady

  1. Operační systém: RHEL/CentOS/Fedora a Ubuntu/Debian/Linux Mint
  2. Jinja2: Moderní, rychlý a snadno použitelný samostatný šablonový engine pro Python.
  3. PyYAML: YAML analyzátor a emitor pro programovací jazyk Python.
  4. parmiko: Nativní knihovna kanálu Python SSHv2.
  5. httplib2: Komplexní knihovna HTTP klienta.
  6. sshpass: Neinteraktivní ověřování heslem ssh.

Nastavení mého prostředí

Ovládací stroj – Ansible
Operating System :	Linux Mint 17.1 Rebecca
IP Address	 :	192.168.0.254
Host-name	 :	tecmint.instrcutor.com
User		 :	tecmint
Vzdálené uzly
Node 1: 192.168.0.112
Node 2: 192.168.0.113
Node 3: 192.168.0.114

Krok 1: Instalace řídicího stroje – Ansible

1. Před instalací „Ansible“ na server nejprve ověřte podrobnosti o serveru, jako je název hostitele a adresa IP. Přihlaste se na server jako uživatel root a spusťte níže uvedený příkaz, abyste potvrdili nastavení systému, které použijeme pro toto nastavení.

sudo ifconfig | grep inet

2. Jakmile potvrdíte nastavení systému, je čas nainstalovat do systému software „Ansible“.

Na Ubuntu/Debian/Linux Mint

Zde budeme v systému používat oficiální úložiště Ansible PPA, stačí spustit níže uvedené příkazy a přidat úložiště.

sudo apt-add-repository ppa:ansible/ansible -y
sudo apt-get update && sudo apt-get install ansible -y

Na RHEL/CentOS/Fedora

Bohužel neexistuje žádné oficiální úložiště Ansible pro klony založené na RedHat, ale můžeme nainstalovat Ansible povolením úložiště epel pod RHEL/CentOS 6, 7 a aktuálně podporovanými distribucemi fedora.

Uživatelé Fedory mohou přímo nainstalovat Ansible prostřednictvím výchozího úložiště, ale pokud používáte RHEL/CentOS 6, 7, musíte povolit EPEL repo.

Po konfiguraci úložiště epel můžete nainstalovat Ansible pomocí následujícího příkazu.

sudo yum install ansible -y

Po úspěšné instalaci můžete ověřit verzi provedením níže uvedeného příkazu.

ansible --version

Krok 2: Příprava klíčů SSH na vzdálené hostitele

4. Chcete-li provést jakékoli nasazení nebo správu z místního hostitele na vzdálený hostitel, musíme nejprve vytvořit a zkopírovat klíče ssh do vzdáleného hostitele. Na každém vzdáleném hostiteli bude uživatelský účet tecmint (ve vašem případě to může být jiný uživatel).

Nejprve vytvoříme klíč SSH pomocí níže uvedeného příkazu a zkopírujeme klíč na vzdálené hostitele.

ssh-keygen -t rsa -b 4096 -C "[email "

5. Po úspěšném vytvoření klíče SSH nyní zkopírujte vytvořený klíč na všechny tři vzdálené servery.

ssh-copy-id [email 
ssh-copy-id [email 
ssh-copy-id [email 

6. Po zkopírování všech klíčů SSH do vzdáleného hostitele nyní proveďte ověření klíčem ssh na všech vzdálených hostitelích, abyste zkontrolovali, zda autentizace funguje nebo ne.

ssh [email 
ssh [email 
ssh [email