Servidor de Produção: configurações e dicas do Mariani
Ambiente de Produção - processos.ufsc.br // acessos: ssh bonita@processos.ufsc.br // ssh m.f.galimberti@processos.ufsc.brsudo
Segue descrição inicial de diversos elementos.
Os scripts de backup e sincronização estão na pasta ~bonita/scripts do servidor de produção. Estão também disponíveis via git em: https://codigos.ufsc.br/100000000319551/sincronizacao-bonita.git
Há diversas informações de configurações de serviço em ~/bonita/configuracoes do servidor de produção, também disponiveis via git em: https://codigos.ufsc.br/100000000319551/configuracao-bonita.git
Duas interfaces IP:
- 150.162.57.5 - processos.ufsc.br
utilizado pelo bonita (<bonita_dir>): Tomcat em /opt/BonitaCommunity-2022
- 150.162.57.7
utilizado pelo Nginx - ver virtual hosts em /etc/nginx/sites-enabled
- dashboard.processos.ufsc.br - proxy pass para o Metabase
- documentacao.processos.ufsc.br - armazena a documentação dos processos (gerado pelo Bizagi)
- pdf.processos.ufsc.br (melhor do que no Tomcat) - gerador de PDF via webservices
- processos.inf.ufsc.br - redirecionamento do endereço original para o novo (processos.ufsc.br)
- wiki.processos.ufsc.br - acesso à Wiki
- ws.processos.ufsc.br - proxy pass para ws.ufsc.br/rest
- utilizado nos processos para acesso a WS da UFSC
- redirecionador para não precisar ficar configurando autenticação em cada processo individualmente
- ws.homologacao.ufsc.br/rest
- mesmo uso do ws.processos.ufsc.br, mas para testes
Certificados do domínio *.processos.ufsc.br:
- solicitação ao Alexandre :: atualizar arquivo anualmente armazenado em: /etc/ssl/certs_2022/
- atualizar, utilizados em:
- Bonita: <bonita_dir>/server/conf/server.xml
- Nginx: /etc/nginx/ssl.conf (referenciado nos vários virtual hosts)
Bonita (Tomcat) - /opt/BonitaCommunity-2022
- instruções para configuração e execução em: <bonita_dir>/HOW_TO_CONFIGURE_AND_RUN.txt
- executado com permissões do usuário "bonita"
- ./start-bonita.sh
- script para subir o serviço
- modificado com a inclusão de "/usr/bin/authbind" para possibilitar subir o serviço com usuário bonita nas portas 80 e 443 (portas privilegiadas)
- configuração do authbind em /etc/authbind/byport/
- comando "diff start-bonita.sh start-bonita.orig" para ver configurações particulares
- ./stop-bonita.sh
- serviço sobe automaticamente ao reiniciar o servidor
- configuração: /etc/systemd/system/bonita.service
- o Bonita pode também ser baixado e levantado via comandos (via sudo):
- service bonita stop
- service bonita start
- configurações
- <bonita_dir>/server/conf/server.xml - configurações de IP, portas e certificados
- comando "diff server.xml server.xml.orig" para ver configurações particulares
- <bonita_dir>/server/conf/web.xml - configuração para acesso exclusivo via https
- comando "diff web.xml web.xml.orig" para ver configurações particulares
- <bonita_dir>/setup/database.properties - configurações das bases de dados para Mysql
- comando "diff database.properties database.properties.orig" para ver configurações particulares
- Mais informações na sessão III de <bonita_dir>/HOW_TO_CONFIGURE_AND_RUN.txt
- baixar e aplicar configurações do Bonita que estão na base de dados para arquivos:
- <bonita_dir>/setup/setup.sh pull (para baixar as configurações em <bonita_dir>/setup/platform_conf/current)
- ajustar as configurações em <bonita_dir>/setup/platform_conf/current
- <bonita_dir>/setup/setup.sh push (para aplicar as configurações de <bonita_dir>/setup/platform_conf/current)
- reiniciar Bonita: service bonita restart
- Mais informações na sessão IV de <bonita_dir>/HOW_TO_CONFIGURE_AND_RUN.txt
- Páginas alteradas: objetivo de fazer o Bonita rodar como está na UFSC.
- <bonita_dir>/server/webapps/ROOT/index.jsp
- para redirecionar direto para a página do Bonita
- inclusão dos parâmetros de URL "exec" e "doc" para permitir referência direta à pagina do processo e da documentação, respectivamente
Ex: https://processos.ufsc.br?exec=P01
https://processos.ufsc.br?doc=P01
- comando "diff index.jsp index.jsp.orig" para ver configurações particulares
- <bonita_dir>/server/webapps/ROOT/index.html
- redireciona para index.jsp já com parâmetros de URL
- <bonita_dir>/server/webapps/bonita/index.jsp
- faz a "mágica" de redirecionar direto para o processo ou para a documentação a partir dos parâmetros "exec" e "doc"
- <bonita_dir>/server/webapps/bonita/login_admin.jsp
- cópia do login.jsp original para possibilitar acesso de usuários de administração via formulário de autenticação do próprio bonita
- <bonita_dir>/server/webapps/bonita/login.jsp
- Conteúdo completamente reescrito
- Tela inicial para quem chega no site sem estar autenticado ou sem parâmetros de redirecionamento
- Redireciona para o CAS/UFSC quando passado um "instantiationForm", ou seja, quando o usuário é direcionado para execução de um processo em particular
Backup
- script ~/bonita/scripts/backup
- pasta do Bonita: /opt/BonitaCommunity-2022 via tar.gz
- pasta de scripts: ~bonita/scripts via tar.gz
- pasta de wwww (Nginx): /var/www via tar.gz
- das bases de dados do Bonita (db e dbm) via mysqldump
- excecutado toda madrugada as 6:30
- comando "crontab -l" para ver
30 6 * * * /home/bonita/scripts/backup.sh
- dados de backup armazenados em /nfs/backup
- pasta montada via NFS de "dev2" (configurada na dev2 usando o export do ZFS) (150.162.57.8:/dados/backup)
- montagem via autofs na processos (/etc/auto.nfs)
- rotaciona diariamente e guarda os dados do 1º dia de cada mês
Sincronização de dados de bases da UFSC com o Bonita (manutenção da organization);
- script ~/bonita/scripts/sincroniza.php
- excecutado toda madrugada as 5:30
- comando "crontab -l" para ver
30 5 * * * /usr/bin/php /home/bonita/scripts/sincroniza.php producao
- diversas configurações, situações especiais de usuários, etc. em:
~bonita/scritps/config.php