Ansible é um software de automação poderoso e de código aberto para configurar, gerenciar e implantar aplicativos de software nos nós sem qualquer tempo de inatividade apenas usando SSH. Hoje, a maioria das ferramentas de automação de TI é executada como um agente no host remoto, mas o ansible só precisa de uma conexão SSH e Python (2.4 ou posterior) para ser instalado nos nós remotos para realizar sua ação.
Existem muitas ferramentas de automação semelhantes disponíveis, como Puppet, Capistrano, Chef, Salt, Space Walk etc, mas o Ansible pode ser categorizado em dois tipos de servidor: máquinas de controle e nós.
A máquina de controle, onde o Ansible está instalado e os nós são gerenciados por esta máquina de controle por SSH. A localização dos nós é especificada controlando a máquina por meio de seu inventário.
A máquina de controle (Ansible) implanta módulos para nós usando o protocolo SSH e esses módulos são armazenados temporariamente em nós remotos e se comunicar com a máquina Ansible por meio de uma conexão JSON sobre o padrão saída.
Ansible é sem agente, o que significa que não há necessidade de qualquer instalação de agente em nós remotos, o que significa não há daemons ou programas em segundo plano em execução para o Ansible, quando ele não está gerenciando nenhum nós.
O Ansible pode lidar com centenas de nós de um único sistema através de conexão SSH e toda a operação pode ser tratada e executada por um único comando 'ansible'. Mas, em alguns casos, onde você precisa executar vários comandos para uma implantação, aqui podemos construir manuais.
Os manuais são um conjunto de comandos que podem realizar várias tarefas e cada um deles está no formato de arquivo YAML.
Ansible pode ser usado na infraestrutura de TI para gerenciar e implantar aplicativos de software em nós remotos. Por exemplo, digamos que você precise implantar um único software ou vários softwares em centenas de nós por meio de um único comando, aqui o ansible entra em cena, com a ajuda de Ansible você pode implantar tantos aplicativos como muitos nós com um único comando, mas você deve ter um pouco de conhecimento de programação para compreender o ansible scripts.
Compilamos uma série sobre Ansible, título ‘Preparação para a implantação de sua infraestrutura de TI com a ferramenta Ansible IT Automation', Através das partes 1-4 e cobre os seguintes tópicos.
Parte 1: Como instalar e configurar o Ansible for IT Management no Linux
Parte 4: Gerenciando dados YAMAL criptografados com Ansible-Vault
Neste artigo, mostraremos como instalar o ‘Ansible’ nos sistemas RHEL / CentOS 7/6, Fedora 21-19, Ubuntu 14.10-13.04 e Debian 7/6 e também veremos alguns princípios básicos sobre como gerenciar um servidor instalando pacotes, aplicando atualizações e muito mais do básico ao profissional.
Sistema operacional: Linux Mint 17.1 Rebecca. Endereço IP: 192.168.0.254. Nome do host: tecmint.instrcutor.com. Usuário: tecmint.
Nó 1: 192.168.0.112. Nó 2: 192.168.0.113. Nó 3: 192.168.0.114.
1. Antes de instalar 'Ansible"No servidor, vamos primeiro verificar os detalhes do servidor, como nome do host e endereço IP. Faça login no servidor como usuário root e execute o comando abaixo para confirmar as configurações do sistema que iremos usar para esta configuração.
# sudo ifconfig | grep inet.
2. Depois de confirmar as configurações do sistema, é hora de instalar o software ‘Ansible’ no sistema.
Aqui, vamos usar o repositório Ansible PPA oficial no sistema, basta executar os comandos abaixo para adicionar o repositório.
$ sudo apt-add-repository ppa: ansible / ansible -y. $ sudo apt-get update && sudo apt-get install ansible -y.
Infelizmente, não há repositório Ansible oficial para clones baseados em RedHat, mas podemos instalar Ansible habilitando o repositório epel sob RHEL / CentOS 6, 7 e fedora atualmente compatível distribuições.
Os usuários do Fedora podem instalar diretamente o Ansible através do repositório padrão, mas se você estiver usando RHEL / CentOS 6, 7, você deve habilitar repo EPEL.
Depois de configurar o repositório epel, você pode instalar o Ansible usando o seguinte comando.
$ sudo yum install ansible -y.
Depois de instalado com sucesso, você pode verificar a versão executando o comando abaixo.
# ansible --version.
4. Para realizar qualquer implantação ou gerenciamento do host local para o host remoto, primeiro precisamos criar e copiar as chaves ssh para o host remoto. Em cada host remoto, haverá uma conta de usuário tecmint (no seu caso pode ser um usuário diferente).
Primeiro vamos criar uma chave SSH usando o comando abaixo e copiar a chave para hosts remotos.
# ssh-keygen -t rsa -b 4096 -C "[email protegido]"
5. Depois de criar a chave SSH com sucesso, agora copie a chave criada para todos os três servidores remotos.
# ssh-copy-id [email protegido] # ssh-copy-id [email protegido] # ssh-copy-id [email protegido]92.168.0.114.
6. Depois de copiar todas as chaves SSH para o host remoto, execute agora uma autenticação de chave ssh em todos os hosts remotos para verificar se a autenticação está funcionando ou não.
$ ssh [email protegido] $ ssh [email protegido] $ ssh [email protegido]