Skip to content

ySodre/ansible-expressapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projeto - Instalação da aplicação Web Allsafe Express

O objetivo desse projeto é fazer o deploy de uma aplicação web que faz consultas ao servido de banco de dados de maneira automatizada com o ansible.

image

Conhecimentos utilizados

  • Ansible
  • Estrutura de arquivos Ansible
  • Código reutilizável
  • Apache2
  • Banco de dados
  • Par de chaves pública e privada
  • Vagrant

Configuração

1 - Utilizei o vagrant para provisionar as instâncias do projeto: controle (ansible), web e db.

2 - Configuração da máquina controle

3 - Gerar par de chaves para os servidor WEB e DB e importar para os servidores, por padrão o usuário e senha das máquinas provisionadas pelo vagrant é: vagrant.

  • #ssh-keygen
  • #ssh-copy-id vagrant@ip_db
  • #ssh-copy-id vagrant@ip_web
4 - Editar o arquivo hosts dentro do diretorio do ansible_expressapp, alterando o IP dos servidores e o caminho da sua chave privada gerada.

Testar comunicação com os servidores

  • #ansible -i hosts all -m ping

Você deverá ver o seguinte retorno.

image

Executar o playbook implementação

Nesse projeto existe apenas uma váriável de ambiente que é o IP do banco de dados então no momento da execução é necessário passar a váriavel informando qual o IP do servidor de banco de dados.

  • #ansible-playbook -i hosts -e "db_ip=ip_db" playbook.yml

Ao finalizar você deverá ver o resultado das tarefas sem erros

image

Configuração DNS

Como estamos trabalhando com IPs privados, será necessário editar o arquivo hosts da sua máquina e criar o apontamento necessário.

Exemplo em windows. Caminho: C:\Windows\System32\drivers\etc\hosts

image

Exemplo em Linux. Caminho /etc/hosts

image

Resultado

O resultado esperado é que ao digitar express.asf.com abra o website da aplicação e além disso na guia de backups precisa aparecer dois backups, validando a comunicação com o banco de dados.

image

image

Releases

No releases published

Packages

No packages published

Languages