Sådan installeres og konfigureres Ansible Automation Tool til IT Management - Del 1


Ansible er en open source, kraftfuld automatiseringssoftware til konfiguration, styring og implementering af softwareapplikationer på knudepunkterne uden nedetid bare ved hjælp af SSH. I dag kører de fleste IT-automatiseringsværktøjer som agent i fjernhost, men ansible behøver bare en SSH-forbindelse og Python (2.4 eller nyere), der skal installeres på fjernknuderne for at udføre dens handling.

Der er mange lignende automatiseringsværktøjer tilgængelige som Puppet, Capistrano, Chef, Salt, Space Walk osv., Men Ansible kategoriseres i to typer servere: styring af maskiner og noder.

Den styrende maskine, hvor Ansible er installeret, og noder styres af denne styrende maskine over SSH. Placeringen af noder specificeres ved at kontrollere maskinen gennem dens beholdning.

Den styrende maskine (Ansible) distribuerer moduler til noder ved hjælp af SSH-protokol, og disse moduler gemmes midlertidigt på eksterne noder og kommunikerer med Ansible-maskinen via en JSON-forbindelse over standardoutputtet.

Ansible er agentfri, det betyder intet behov for agentinstallation på eksterne noder, så det betyder, at der ikke er nogen baggrundsdæmoner eller programmer, der udføres for Ansible, når det ikke administrerer nogen noder.

Ansible kan håndtere 100'ere noder fra et enkelt system via SSH-forbindelse, og hele operationen kan håndteres og udføres af en enkelt kommando 'ansible'. Men i nogle tilfælde, hvor du krævede at udføre flere kommandoer til en implementering, her kan vi bygge playbøger.

Playbooks er en række kommandoer, der kan udføre flere opgaver, og hver playbook er i YAML-filformat.

Ansible kan bruges i IT-infrastruktur til at styre og implementere softwareapplikationer til eksterne noder. Lad os for eksempel sige, at du har brug for at installere en enkelt software eller flere software til 100'ere af noder ved en enkelt kommando, her kommer ansible ind i billedet, ved hjælp af Ansible kan du distribuere så mange som applikationer til mange noder med en enkelt kommando, men du skal have lidt programmeringskendskab til at forstå de synlige scripts.

Vi har samlet en serie om Ansible, titlen 'Forberedelse til implementering af din IT-infrastruktur med Ansible IT Automation Tool' gennem afsnit 1-4 og dækker følgende emner.

I denne artikel vil vi vise dig, hvordan du installerer 'Ansible' på RHEL/CentOS 7/6, Fedora 21-19, Ubuntu 14.10-13.04 og Debian 7/6-systemer, og vi vil også gennemgå nogle grundlæggende oplysninger om, hvordan du styrer en server ved at installere pakker, anvende opdateringer og meget mere fra basic til pro.

  1. Operativsystem : RHEL/CentOS/Fedora og Ubuntu/Debian/Linux Mint
  2. Jinja2 : En moderne, hurtig og nem at bruge stand-alone skabelonmotor til Python.
  3. PyYAML : En YAML-parser og emitter til Python-programmeringssproget.
  4. parmiko : Et indbygget Python SSHv2-kanalbibliotek.
  5. httplib2 : Et omfattende HTTP-klientbibliotek.
  6. sshpass : En ikke-interaktiv ssh-adgangskodegodkendelse.

Operating System :	Linux Mint 17.1 Rebecca
IP Address	 :	192.168.0.254
Host-name	 :	tecmint.instrcutor.com
User		 :	tecmint
Node 1: 192.168.0.112
Node 2: 192.168.0.113
Node 3: 192.168.0.114

Trin 1: Installation af styremaskine - Ansible

1. Før vi installerer 'Ansible' på serveren, skal vi først kontrollere detaljerne på serveren som værtsnavn og IP-adresse. Log ind på serveren som en rootbruger, og udfør nedenstående kommando for at bekræfte systemindstillinger, som vi skal bruge til denne opsætning.

# sudo ifconfig | grep inet

2. Når du har bekræftet dine systemindstillinger, er det tid til at installere 'Ansible' software på systemet.

Her skal vi bruge det officielle Ansible PPA-arkiv på systemet, bare kør nedenstående kommandoer for at tilføje lageret.

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

Desværre er der ikke noget officielt Ansible-lager til RedHat-baserede kloner, men vi kan installere Ansible ved at aktivere epel-lager under RHEL/CentOS 6, 7 og i øjeblikket understøttede fedora-distributioner.

Fedora-brugere kan installere Ansible direkte via standardregisteret, men hvis du bruger RHEL/CentOS 6, 7, skal du aktivere EPEL repo.

Efter konfiguration af epel repository kan du installere Ansible ved hjælp af følgende kommando.

$ sudo yum install ansible -y

Efter installation med succes kan du kontrollere versionen ved at udføre kommandoen nedenfor.

# ansible --version

Trin 2: Forberedelse af SSH-nøgler til eksterne værter

4. For at udføre enhver implementering eller styring fra localhost til remote host skal vi først oprette og kopiere ssh-nøglerne til den eksterne host. I hver fjernhost vil der være en brugerkonto tecmint (i dit tilfælde kan være en anden bruger).

Lad os først oprette en SSH-nøgle ved hjælp af kommandoen nedenfor og kopiere nøglen til eksterne værter.

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

5. Efter oprettelse af SSH-nøgle med succes, skal du nu kopiere den oprettede nøgle til alle tre fjernservere.

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

6. Efter at have kopieret alle SSH-nøgler til ekstern vært, skal du nu udføre en ssh-nøgleauthentificering på alle eksterne værter for at kontrollere, om godkendelse fungerer eller ej.

$ ssh [email 
$ ssh [email 
$ ssh [email