https://github.com/ysodre/ansible-expressapp
https://github.com/ysodre/ansible-expressapp
ansible-playbook ansible-roles database website
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/ysodre/ansible-expressapp
- Owner: ySodre
- Created: 2023-06-28T19:29:52.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-07-05T22:45:37.000Z (almost 3 years ago)
- Last Synced: 2025-03-16T19:17:30.694Z (over 1 year ago)
- Topics: ansible-playbook, ansible-roles, database, website
- Language: Ruby
- Homepage:
- Size: 25.4 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 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.

## 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
- #apt update -y
- #apt install git -y
- #apt install ansible -y
- #cd /opt
- #mkdir expressapp
- #cd expressapp
- #git clone https://github.com/ySodre/ansible-expressapp.git
- #cd ansible-expressapp
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.

## 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

## 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

Exemplo em Linux. Caminho /etc/hosts

## 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.

