Documentação da infraestrutura: mudanças entre as edições

m
 
(13 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
Esta página pode ser desmembrada em subpáginas. Por hora consolidar e revisar.
= Infraestrutura do Instituto AddressForAll =
= Infraestrutura do Instituto AddressForAll =


Linha 95: Linha 97:
|  
|  
| [https://github.com/OSGeo/gdal/pkgs/container/gdal/128539391?tag=latest containerized]
| [https://github.com/OSGeo/gdal/pkgs/container/gdal/128539391?tag=latest containerized]
|
|-
|`du -sh * | sort -hr | head -n10` ou ncdu v2
| ncdu
| v2
| v2
| v2
|
|
|}
|}


== Servidores de trabalho ==
=== Backup de uma base ===
... apesar do controle de versões por git, se houver alguma confusão, a implementação oficial é aquela que estiver rodando no servidor de produção. Vale o dump, por exemplo <code>pg_dump --schema-only -f dl05_dump_test.sql dl05</code>. Ver [[osmc:Metodologia/Algoritmo SQL|dump AFAcodes]] e [[sup:Wiki-backup]].
 
=== Produção ===
Atualmente, 2024, a máquina Digital Ocean <code>addressforall</code> (IP 165.227.5.135) é o servidor de produção do AFAcodes e o servidor-old de AddressForAll. Nele podemos conferir:
* porta padrão 5432 e versão do PostgreSQL: pelo comando <code>pg_lsclusters</code> temos a porta padrão apontando para versão 14, cluster "main"    usuário postgres, pasta <code>/var/lib/postgresql/14/main</code>  e logs em <code>/var/log/postgresql/postgresql-14-main.log</code>. Demais não deviam estar ocupando espaço, poderiam ser removidos.
 
=== Teste e ingestão ===
... descrever subdomínios e situação .. e máquinas DEV de teste e ingestão...
 
Se o seu servidor DEV está com PostgreSQL v16 na porta padrão 5432, convém pelo menos deixar instalado um PG de versão 14. Em geral a instalação Ubuntu PostgreSQL oferece o seguinte resultado default para <code>pg_lsclusters</code>:
<pre>
14  main    5433 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log
16  main    5432 online postgres /var/lib/postgresql/16/main /var/log/postgresql/postgresql-16-main.log
</pre>
 
Para chamar usando URI na forma <code>postgres[ql]://[username[:password]@][host[:port],]/database</code> temos as seguintes situações típicas:
 
* Para chamar o padrão, <code>psql postgresql://postgres@localhost/base</code><br/> ou <code>psql postgres://localhost/dl05s_main</code> ou <code>psql dl05s_main</code>
* Para chamar a v14, <code>psql postgresql://postgres@localhost:5433/base</code>
 
= Servidores de trabalho =
Para trabalhos de ingestão (ETL) podem ser usadas as máquinas de produção (ainda DigitalOcean) e a remota i7.
Para trabalhos de ingestão (ETL) podem ser usadas as máquinas de produção (ainda DigitalOcean) e a remota i7.


=== Acesso via tailscale ===
== Acesso via tailscale ==
...
 
'''Windows:'''
 
Faça download na url <nowiki>https://tailscale.com/download/windows</nowiki>
 
Instale o tailscale e no icone perto do relógio, clique nele e depois no conect
 
passe a Url para Carlos Rebollo. Seria bom agendar uma hora para falar sobre a VPN e acesso ao servidor.
 
 
 
'''Linux''':
Executar os comandos como root
 
curl -fsSL <nowiki>https://tailscale.com/install.sh</nowiki> | sh
 
 
tailscale up
 
 
irá gerar uma url
 
 
enviar para Carlos Rebollo. Seria bom agendar uma hora para falar sobre a VPN e acesso ao servidor.


== Ambiente de trabalho local ==
= Ambiente de trabalho local =


Documentação em construção.
Documentação em construção.


 
== Máquina virtual Ubuntu 22.04 ==
=== Máquina virtual Ubuntu 22.04 ===


Utilizamos KVM e imagem cloud do Ubuntu 22.04 num hospedeiro Debian 12.Etapa opcional se já estiver rodando um Ubuntu 22.04.
Utilizamos KVM e imagem cloud do Ubuntu 22.04 num hospedeiro Debian 12.Etapa opcional se já estiver rodando um Ubuntu 22.04.


==== Exemplo de instalação no hospedeiro ====
=== Instalação no hospedeiro ===
 
Exemplo (adaptar à situação local e o valor de $USER).
<syntaxhighlight lang="sh">
<syntaxhighlight lang="sh">
sudo apt install libvirt-daemon-system qemu-system-x86 qemu-utils virtinst --no-install-recommends
sudo apt install libvirt-daemon-system qemu-system-x86 qemu-utils virtinst --no-install-recommends
sudo apt install dnsmasq virt-manager virt-viewer gir1.2-spiceclientgtk-3.0 --no-install-recommends
sudo apt install dnsmasq virt-manager virt-viewer gir1.2-spiceclientgtk-3.0 --no-install-recommends
sudo adduser $USER libvirt</syntaxhighlight>
sudo adduser $USER libvirt
</syntaxhighlight>


==== Criação da VM ====
=== Criação da VM ===


<syntaxhighlight lang="sh"># diretórios para imagens
<syntaxhighlight lang="sh"># diretórios para imagens
Linha 200: Linha 253:
ssh ipdamaquina</syntaxhighlight>
ssh ipdamaquina</syntaxhighlight>


=== Software suficiente para realizar a maior parte das ingestões ===
== Software suficiente para realizar a maior parte das ingestões ==


<syntaxhighlight lang="sh">sudo apt-get update
<syntaxhighlight lang="sh">sudo apt-get update
Linha 222: Linha 275:
# opcionais
# opcionais
#sudo apt-get install -y bash-completion tmux silversearcher-ag --no-install-recommends</syntaxhighlight>
#sudo apt-get install -y bash-completion tmux silversearcher-ag --no-install-recommends</syntaxhighlight>
=== Configuração do banco de dados ===
== Configuração do banco de dados ==


No arquivo <code>/etc/postgresql/14/main/pg_hba.conf</code>
No arquivo <code>/etc/postgresql/14/main/pg_hba.conf</code>
Linha 248: Linha 301:
cat /etc/postgresql/14/main/pg_hba.conf</syntaxhighlight>
cat /etc/postgresql/14/main/pg_hba.conf</syntaxhighlight>


=== Criar diretórios, grupos ===
== Criar diretórios, grupos ==


<syntaxhighlight lang="sh"># cria grupo
<syntaxhighlight lang="sh"># cria grupo
Linha 272: Linha 325:
sudo chmod -R o-x /tmp/{sandbox,pg_io}</syntaxhighlight>
sudo chmod -R o-x /tmp/{sandbox,pg_io}</syntaxhighlight>


=== Clonar repositórios ===
== Clonar repositórios ==


<syntaxhighlight lang="sh">for repo in \
<syntaxhighlight lang="sh">for repo in \
Linha 331: Linha 384:
     fi
     fi
done</syntaxhighlight>
done</syntaxhighlight>
=== Ajustar permissões ===
== Ajustar permissões ==


<syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src
<syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src
Linha 337: Linha 390:
popd</syntaxhighlight>
popd</syntaxhighlight>


=== Criar e popular bases ===
== Criar e popular bases ==


<syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src
<syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src
Linha 379: Linha 432:
</syntaxhighlight>
</syntaxhighlight>


=== Exemplo de ingestão ===
== Exemplo de ingestão ==


<syntaxhighlight lang="sh"># semente makefile
<syntaxhighlight lang="sh"># semente makefile
Linha 392: Linha 445:


...
...
----
= Ver também =
...
[[Categoria:Suporte]]
[[Categoria:Suporte]]
2 384

edições