Implantar Extrator de Dados
Implantação do Extrator de Dados
Extrator de Dados
Visão Geral
O Monitor SETEC utiliza um agente de coleta de dados, denominado DataExtractor, o qual consome as informações diretamente da base de dados disponível, independentemente de ser base com dados estruturados ou não. Dessa forma, cabe a cada Instituição implementar o formato de consulta às suas bases de dados e registrar a fonte e o formato no agente de extração, que realiza de forma automática a sincronização na aplicação central. Nesta seção são descritos os passos necessários para a correta implantação e utilização da ferramenta DataExtractor. O primeiro passo consiste em subir o container contendo o DataExtractor e acessa a área de gestão local do DataExtractor. O passo 2 é feita a configuração de variáveis, sejam de redes ou institucionais, cadastrados na aplicação central, enquanto no passo 3, deverão ser configuradas os provedores de dados que serão usados para fornecer os valores das variáveis importadas. Em seguida, no passo 4, para cada variável cadastrada, é feito o processo de configuração de extração de dados, para que seja possível realizar a extração e sua validação, descrito no passo 5. Por fim, para fins de acompanhamento do processo de extração, é possível consultar os logs dos procedimentos.
Instalação do Container do DataExtractor
Para que seja possível realizar a implantação do container, é necessário que a instituição tenha solicitado as credenciais de acesso ao repositório que contém os scripts de implantação. Ao acessar o repositório a instituição tem acesso ao passo-a-passo técnico necessário para realizar a implantação/configuração do DataExtractor. O procedimento para solicitação de acesso está descrito na seção Solicitação de Acesso. A instituição deverá implantar dois ambientes, um de produção e outro de homologação, conforme descrito anteriormente.
Os requisitos mínimos do ambiente de implantação são os seguintes:
- Máquina virtual com no mínimo 2 vCPU, 4GB de Memória RAM e 60GB de disco;
- Docker (20.10.8 ou superior);
- Docker Compose (1.28.2 ou superior);
- Curl;
- Git;
- Python (3.7 ou superior).
note
Importante: As portas 80, 443 e 4567/TCP deverão estar liberadas para internet, apenas para saída.
A área de Tecnologia da Informação deverá preparar a infraestrutura necessária, conforme citado anteriormente. Com base nas informações repassadas através do e-mail de orientações enviado pela equipe do projeto, a área deverá clonar o repositório e seguir as orientações descritas a seguir.
Instação do Docker
Ubuntu Server 20 x64 LTS
sudo apt update
sudo apt install apt-transport-https ca-certificates curl git-core python-dev gnupg software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
sudo apt update
apt-cache policy docker-ce
sudo apt install docker-ce
sudo systemctl status docker
Debian 10 x64 (Buster)
sudo apt update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
lsb-release \
git-core
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
Instalação do Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
Instalação da Ferramenta
Passo 1 - Clonar o repositório na VM onde o DataExtractor será instalado. Substituir <TOKEN_EMAIL> pelo token de acesso ao GitLab enviado para a instituição
git clone https://<TOKEN_EMAIL>@gitlab.ifrn.edu.br/farol-setec/deploys/dataextractor.git
Passo 2 - Copiar o conteúdo do arquivo .env_example
para o arquivo .env
.
Atenção: O arquivo .env_example está oculto por padrão.
cp .env_example .env
Passo 3 - Abrir o arquivo .env
e alterar as seguintes variáveis de ambiente, de acordo com as informações do ambiente da instituição.
note
Importante: O conteúdo das variáveis LAMBDA_BASE_URL
e LAMBDA_API_KEY
serão enviadas no e-mail de orientação. A variável de ambiente HOSTNAME
deve ser substituída pela entrada do domínio registrada em sua instituição, como por exemplo dataextractor.ifsp.edu.br, devendo ser criada no DNS da instituição. Caso deseje rodar localmente, edite o arquivo /etc/hosts para que a entrada aponte para 127.0.0.1.
# Arquivo .env de Exemplo
HOSTNAME=dataextractor.ifrn.edu.br
LAMBDA_BASE_URL='<conforme informado no e-mail>'
LAMBDA_API_KEY='<conforme informado no e-mail>'
Passo 4 - Efetuar build e deploy da solução.
./deploy.sh
Passo 5 - Criar um usuário com permissões de Administrador .
docker-compose exec web python manage.py createsuperuser --username <username> --email <email>
Passo 6 - Acessar a aplicação em seu navegador a partir do endereço definido na variável HOSTNAME
e se autenticar na ferramenta com as credenciais usadas no Passo 5.
caution
Atenção: Cada instituição só pode ter uma instância em funcionamento (produção) e uma versão de teste (homologação) do extrator de dados conectadas à aplicação central. Caso você deseje ativar uma nova instância para a sua instituição, é necessário solicitar a desativação da instância anterior, através do sistema de suporte. Para obter suporte, clique aqui.