SEI@MJ
Situação encontrada
Problemas detectados Indisponibilidade diária no serviço Servidores sem padronização e desatualizados Servidores sem monitoração efetiva Servidores sem gerenciamento de configuração Lentidão, erros, problemas de acesso Documentação pobre e desatualizada Problemas diversos e intermitentes de autenticação Ambiente antigo
Sentimento do cliente Baixa confiabilidade do cliente no ambiente Baixa confiabilidade do cliente na ferramenta Insatisfação de usuários com ambiente Insatisfação de usuários com operação e suporte Falta de clareza sobre os problemas Ambiente antigo
Problemas de infraestrutura Não havia HA no balanceamento Não havia HA no banco de dados Só havia um backend PHP Só havia um backend SQL Sistema operacional em instalação default Serviços em instalação default Não havia backup de todos os componentes Configurações de rede fora do padrão e inadequadas Ambiente antigo
Problemas de segurança Acesso root indiscriminado Senha de root pública Acesso ao MYSQL público Sem registro de acesso Acesso aos servidores sem controle Firewalls desligadas nos servidores linux Pessoas fora da operação acessando Ambiente antigo
Problemas detectados no SEI 2.5 Relatório com filtro TODOS Relatório com longos períodos Memória limitada em hardcode Erros de código Erros no webservice Querys com erro Querys lentas Ambiente antigo
Ambiente Novo
Foi criado um novo Cluster VMWARE 6 para acolher o sistema SEI utilizando servidores DELL R910. Ambiente novo
Percona Replica Load Balancer/NGINX/HA APACHE HTTPD PHP / MEMCACHED Puppet Mcollective ActiveMQ Zabbix Mirror Apache SOLR Jod Converter NFSv4 GIT
Load Balancer (HA) SOLR Web1 Web2 Web3 JODC Percona (SYNC) NFSv4
Evoluções
Evoluções Arquitetura Ambiente com alta disponibilidade nos LBs Ambiente com carga distribuída nos backends PHP Ambiente com tuning em sistema operacional Ambiente padronizado, controlado e monitorado Ambiente com configurações de redes adequados Ambiente novo
Evoluções de serviços Configuração de servidores revisada Problemas nas configurações sanados Tuning em cada serviço de acordo com HW da VM Serviços com versões atualizadas e recentes Configuração do OS focada nos serviço Ambiente novo
Evoluções Segurança Acesso root foi desativado Portas default de acesso SSH foram modificadas Usuários locais são gerenciados pelo Puppet Privilégios de usuários (sudoers) são gerenciados pelo Puppet Todos os sistemas operacionais estão atualizados Acesso a rede de servidores controlado pela Firewall Checkpoint Acesso com controle em nível de usuário e não mais por IPs Ambiente novo
Evoluções Deploy Novo processo de deploy utilizando GIT Controle de versões em cada Backend Ambiente novo
Componentes
Balanceadores Sistema Operacional CentOS 7 Utilização de NGINX como LB e RP Utilização de Keepalived para HA nos lb Tuning no kernel linux (rede, processos e memória) Tuning no os linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
Backends PHP Sistema Operacional CentOS 6 Backends rodando Apache HTTPD 2.2.15 Backends rodando PHP 5.3.3 (devido a limitação do sei) Tuning no kernel linux (rede, processos e memória) Tuning no os linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
Backend MySQL Sistema Operacional CentOS 7 Backends rodando Percona 5.6 Réplica da base de produção em um ambiente standby Backup sendo realizado via XTRABACKUP Tuning no kernel linux (rede, processos e memória) Tuning no os linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
NFSv4 Sistema Operacional CentOS 7 Servidor NFSv4 compartilhado diretório com backends PHP Cada Backend PHP monta um diretório deste servidor Tuning no kernel linux (rede, processos e memória) Tuning no os linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
JOD Converter Sistema Operacional CentOS 7 Tuning na JVM do JOD para uso de Large Pages Melhorias nos scripts de inicialização do JODConverter Tuning no kernel linux (rede, processos, hugepages, memória) Tuning no OS linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
Apache SOLR Sistema Operacional CentOS 7 Tuning na JVM do SOLR para uso de Large Pages Melhorias nos scripts de inicialização do SOLR Reconfiguração da estrutura de índices do SOLR Tuning na configuração de indexação do SOLR Tuning no kernel linux (rede, processos, hugepages, memória) Tuning no OS linux (limits) Gerenciamento de serviços e arquivos através do Puppet Monitoramento dos serviços através do Zabbix Ambiente cadastrado nas políticas diárias de backup Ambiente novo
GIT Sistema Operacional CentOS 7 Servidor GIT para abrir o código do SEI Gerenciamento do código dos backends Deploy centralizado nos repos GIT Atualizações nos backends com um simples git pull Ambiente cadastrado nas políticas diárias de backup Ambiente novo
MIRROR Sistema Operacional CentOS 7 Servidor com espelho de pacotes de CentOS Espelho de pacotes Zabbix Espelho de pacotes Puppet Espelho de pacotes Percona Ambiente SEI faz atualização a partir do Mirror Sistema Operacional CentOS 7 Ambiente novo
Puppet/Mcollective Gerenciamento de infraestrutura Padronização e compliance de sistema operacional Infraestrutura como código Garantia de integridade de ambiente Controle de mudanças Agilidade nas mudanças Orquestração Ambiente novo
Zabbix Monitoramento efetivo do ambiente Monitoramento do ponto de vista do negócio Monitoramento do ponto de vista da infraestrutura Ambiente novo
Resultados Obtidos
Resultados obtidos Recuperação da imagem do SEI Aumento na disponibilidade do ambiente Aumento na performance do sistema Usuários satisfeitos com o novo ambiente Usuários satisfeitos com a TI Ambiente estabilizado e seguro