Servidor de Produção: configurações e dicas do Mariani

De EAPn
Ir para navegação Ir para pesquisar

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