Tabla de contenido
Neste artigo vamos analisar o que é Ansible e como utilizá-lo, começando com uma breve introdução.
Introdução ao Ansible
Ansible é uma ferramenta de automatização de configuração de código aberto para a gestão de sistemas e aplicações. Foi concebido para simplificar a configuração do sistema, a implantação de aplicações e a gestão de infra-estruturas. Funciona numa máquina controladora e comunica com sistemas remotos via SSH. Isto significa que não é necessário instalar qualquer software nos sistemas remotos para que o Ansible os possa gerir.
O Ansible é uma ferramenta de automação de configuração muito útil para administradores de sistemas. Pode ajudar a poupar tempo, automatizando tarefas repetitivas e enfadonhas. A possibilidade pode também ajudar a assegurar que os sistemas sejam configurados de forma consistente. Isto é especialmente útil na gestão de muitos sistemas.
Instalação de Ansible
Instalação de Ansible no CentOS
Ansible pode ser instalado no CentOS usando o gestor de pacotes de yum. Primeiro, actualizar a lista de pacotes disponíveis:
$ sudo yum update
A seguir, instale o pacote possível:
$ sudo yum install ansible
Uma vez concluída a instalação, verificar a versão Ansible:
$ ansible --version
Instalação Possível em Ubuntu
Tal como no CentOs, o Ansible pode ser instalado no Ubuntu utilizando o gestor de pacotes apt. Primeiro, actualize a lista de pacotes disponíveis:
$ sudo apt update
A seguir, instale o pacote possível:
$ sudo apt install ansible
Uma vez concluída a instalação, verificar a versão Ansible:
$ ansible --version
Instalando o Ansible on Arch Linux
Tal como nas duas distribuições anteriores, o Ansible pode ser instalado no Arch Linux utilizando o gestor de pacotes nativo, neste caso o pacman.
Primeiro, actualizar a lista de pacotes disponíveis:
$ sudo pacman -Syu
A seguir, instale o pacote possível:
$ sudo pacman -S ansible
Uma vez concluída a instalação, verificar a versão Ansible:
$ ansible --version
Configurar de Ansible
Uma vez instalado o Ansible, este deve ser configurado para comunicar com sistemas remotos. Isto é feito através da edição do ficheiro de configuração possível, encontrado em /etc/ansible/ansible.cfg.
Neste ficheiro, há várias opções que podem ser configuradas. Por exemplo, pode especificar o directório do inventário, o directório de funções, o directório de modelos, etc.
Também se pode especificar o utilizador a ser utilizado para se ligar aos sistemas remotos. Isto é feito através da edição da opção Remote_user no ficheiro de configuração.
Usando Ansible
Uma vez configurado, o Ansible pode ser utilizado para automatizar tarefas em sistemas remotos. Isto é feito escrevendo roteiros em YAML, que são conhecidos como playbooks.
Um livro de jogo é um conjunto de tarefas a serem executadas num sistema remoto. Estas tarefas podem incluir a instalação de pacotes, configuração de serviços, criação de utilizadores, etc.
Abaixo está um exemplo de um livro de jogo possível para instalar o Apache num sistema remoto:
--- - hosts: all become: true tasks: - name: Install Apache yum: name: httpd state: present
Neste exemplo, o livro de jogo será executado em todos os sistemas remotos (anfitriões: todos). O utilizador a ser utilizado para se ligar aos sistemas remotos será aquele especificado no ficheiro de configuração possível (tornar-se: verdadeiro).
A tarefa a ser executada nos sistemas remotos é a instalação do Apache (nome: Instalar Apache). Esta tarefa será executada utilizando o gestor de pacotes yum (yum:). O pacote a ser instalado é httpd (nome: httpd) e o estado desejado está presente (estado: presente).
Conclusão
Ansible é uma ferramenta útil de automatização de configuração de código aberto para administradores de sistemas. Pode ajudar a poupar tempo, automatizando tarefas repetitivas e enfadonhas. Pode ser instalado no CentOS, Ubuntu, Arch e outras distribuições usando o gestor de pacotes apropriado. Uma vez instalado, deve ser configurado para comunicar com sistemas remotos. É possível automatizar tarefas em sistemas rcemote através da escrita de scripts YAML, conhecidos como playbooks.