Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Usar Ansible para Configurar um Servidor Web Local | Automatizando Infraestrutura em DevOps
Introdução ao DevOps

bookUsar Ansible para Configurar um Servidor Web Local

Você aprenderá como conectar-se a um servidor Ubuntu remoto e gerenciá-lo usando o Ansible. Vamos criar arquivos de configuração que permitem automatizar tarefas rotineiras. Como exemplo, atualizaremos o índice de pacotes e instalaremos o Git — o primeiro passo na preparação de um servidor para tarefas de desenvolvimento ou DevOps.

Note
Nota

Se você estiver usando Windows, execute esses comandos no wsl. Se estiver em macOS ou Linux, basta utilizar o terminal.

Instalando o Ansible

Antes de começar, certifique-se de que o Ansible está instalado em sua máquina:

sudo apt update
sudo apt install ansible -y

O primeiro comando, sudo apt update, atualiza a lista de pacotes do sistema para que ele reconheça as versões mais recentes dos softwares disponíveis. Em seguida, sudo apt install ansible -y instala o Ansible na sua máquina, confirmando automaticamente a instalação sem solicitar que você digite "yes".

Criando arquivos de configuração

Primeiro, é necessário definir uma lista de servidores aos quais o Ansible irá se conectar. Para isso, crie um arquivo de inventário chamado hosts.ini:

Cole o seguinte:

hosts.ini

hosts.ini

copy

[ubuntu_container] — o grupo de hosts que o Ansible irá gerenciar;

localhost — o endereço do host (neste caso, sua máquina local executando o contêiner Docker);

ansible_port=2222 — a porta SSH para a conexão;

ansible_user=root e ansible_password=root — credenciais para login via SSH;

ansible_connection=ssh — instrui o Ansible a usar SSH para executar comandos.

O arquivo hosts.ini informa ao Ansible onde se conectar e quais parâmetros utilizar. Sem ele, um playbook não consegue localizar o servidor ou executar tarefas.

Playbook setup.yml

Em seguida, crie o script de automação, ou playbook, setup.yml:

Cole o seguinte:

setup.yml

setup.yml

copy

O arquivo setup.yml define as tarefas que o Ansible deve executar no servidor.

  • name: Configure Ubuntu container — título do playbook;

  • hosts: ubuntu_container — grupo de hosts do hosts.ini;

  • become: true — executa comandos como superusuário (root);

  • tasks — lista de ações que serão executadas em ordem.

Neste exemplo, o índice de pacotes é atualizado e o Git é instalado.

Configuração do Ansible

Por fim, configure o próprio Ansible. O arquivo ansible.cfg personaliza o comportamento do Ansible. Crie o arquivo ansible.cfg:

Cole o seguinte:

ansible.cfg

ansible.cfg

copy

Neste caso, desabilitamos a verificação da chave de host SSH. Normalmente, o Ansible verifica a impressão digital do servidor para garantir uma conexão segura. Para este tutorial, isso simplifica o processo, já que estamos utilizando um container Docker temporário.

Testando a Conexão

Após criar todos os arquivos de configuração, é importante verificar se tudo está configurado corretamente. Isso garante que o Ansible consiga se conectar ao seu servidor Ubuntu remoto e executar as tarefas conforme esperado.

Ao executar este comando, o Ansible tenta se conectar ao seu contêiner Ubuntu via SSH usando as credenciais e a porta especificadas em hosts.ini. Se tudo estiver configurado corretamente, você verá:

Agora é hora de executar o playbook de fato, já que a verificação de conectividade foi bem-sucedida e você pode ter confiança de que tudo funcionará corretamente.

Quando este comando é executado, o Ansible irá conectar ao servidor Ubuntu remoto via SSH, elevar privilégios usando become: true e executar todas as tarefas sequencialmente. Neste exemplo, ele primeiro atualiza o índice de pacotes para que o sistema conheça as versões mais recentes dos softwares e, em seguida, instala o Git.

Após a conclusão do playbook, é possível verificar se o Git foi instalado no servidor Ubuntu. Primeiro, conecte-se ao servidor usando SSH:

Em seguida, verifique a versão do Git instalada:

Se tudo funcionou corretamente, você verá a versão do Git, confirmando que o playbook foi executado com sucesso.

1. Qual é a finalidade do arquivo hosts.ini no Ansible?

2. No playbook, por que se utiliza become: true?

question mark

Qual é a finalidade do arquivo hosts.ini no Ansible?

Select the correct answer

question mark

No playbook, por que se utiliza become: true?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 6

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 3.7

bookUsar Ansible para Configurar um Servidor Web Local

Deslize para mostrar o menu

Você aprenderá como conectar-se a um servidor Ubuntu remoto e gerenciá-lo usando o Ansible. Vamos criar arquivos de configuração que permitem automatizar tarefas rotineiras. Como exemplo, atualizaremos o índice de pacotes e instalaremos o Git — o primeiro passo na preparação de um servidor para tarefas de desenvolvimento ou DevOps.

Note
Nota

Se você estiver usando Windows, execute esses comandos no wsl. Se estiver em macOS ou Linux, basta utilizar o terminal.

Instalando o Ansible

Antes de começar, certifique-se de que o Ansible está instalado em sua máquina:

sudo apt update
sudo apt install ansible -y

O primeiro comando, sudo apt update, atualiza a lista de pacotes do sistema para que ele reconheça as versões mais recentes dos softwares disponíveis. Em seguida, sudo apt install ansible -y instala o Ansible na sua máquina, confirmando automaticamente a instalação sem solicitar que você digite "yes".

Criando arquivos de configuração

Primeiro, é necessário definir uma lista de servidores aos quais o Ansible irá se conectar. Para isso, crie um arquivo de inventário chamado hosts.ini:

Cole o seguinte:

hosts.ini

hosts.ini

copy

[ubuntu_container] — o grupo de hosts que o Ansible irá gerenciar;

localhost — o endereço do host (neste caso, sua máquina local executando o contêiner Docker);

ansible_port=2222 — a porta SSH para a conexão;

ansible_user=root e ansible_password=root — credenciais para login via SSH;

ansible_connection=ssh — instrui o Ansible a usar SSH para executar comandos.

O arquivo hosts.ini informa ao Ansible onde se conectar e quais parâmetros utilizar. Sem ele, um playbook não consegue localizar o servidor ou executar tarefas.

Playbook setup.yml

Em seguida, crie o script de automação, ou playbook, setup.yml:

Cole o seguinte:

setup.yml

setup.yml

copy

O arquivo setup.yml define as tarefas que o Ansible deve executar no servidor.

  • name: Configure Ubuntu container — título do playbook;

  • hosts: ubuntu_container — grupo de hosts do hosts.ini;

  • become: true — executa comandos como superusuário (root);

  • tasks — lista de ações que serão executadas em ordem.

Neste exemplo, o índice de pacotes é atualizado e o Git é instalado.

Configuração do Ansible

Por fim, configure o próprio Ansible. O arquivo ansible.cfg personaliza o comportamento do Ansible. Crie o arquivo ansible.cfg:

Cole o seguinte:

ansible.cfg

ansible.cfg

copy

Neste caso, desabilitamos a verificação da chave de host SSH. Normalmente, o Ansible verifica a impressão digital do servidor para garantir uma conexão segura. Para este tutorial, isso simplifica o processo, já que estamos utilizando um container Docker temporário.

Testando a Conexão

Após criar todos os arquivos de configuração, é importante verificar se tudo está configurado corretamente. Isso garante que o Ansible consiga se conectar ao seu servidor Ubuntu remoto e executar as tarefas conforme esperado.

Ao executar este comando, o Ansible tenta se conectar ao seu contêiner Ubuntu via SSH usando as credenciais e a porta especificadas em hosts.ini. Se tudo estiver configurado corretamente, você verá:

Agora é hora de executar o playbook de fato, já que a verificação de conectividade foi bem-sucedida e você pode ter confiança de que tudo funcionará corretamente.

Quando este comando é executado, o Ansible irá conectar ao servidor Ubuntu remoto via SSH, elevar privilégios usando become: true e executar todas as tarefas sequencialmente. Neste exemplo, ele primeiro atualiza o índice de pacotes para que o sistema conheça as versões mais recentes dos softwares e, em seguida, instala o Git.

Após a conclusão do playbook, é possível verificar se o Git foi instalado no servidor Ubuntu. Primeiro, conecte-se ao servidor usando SSH:

Em seguida, verifique a versão do Git instalada:

Se tudo funcionou corretamente, você verá a versão do Git, confirmando que o playbook foi executado com sucesso.

1. Qual é a finalidade do arquivo hosts.ini no Ansible?

2. No playbook, por que se utiliza become: true?

question mark

Qual é a finalidade do arquivo hosts.ini no Ansible?

Select the correct answer

question mark

No playbook, por que se utiliza become: true?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 6
some-alt