O que é o WebSphere Health Management?

Publicados: 2015-02-14

Aprenda sobre Health Management no IBM WebSphere Application Server e como criar as políticas de saúde.

O que é Gestão em Saúde?

O Health Management faz parte do ambiente WebSphere Virtual Enterprise , que é integrado ao WebSphere Application Server 8.5.

O WebSphere 8.5 é integrado às políticas operacionais , que aproveitam as Políticas de Funcionamento.

O Health Management é uma abordagem orientada por políticas para monitorar o uso do servidor de aplicativos corporativos WebSphere e capaz de responder às áreas problemáticas antes que a interrupção ocorra.

A Gestão em Saúde tem dois elementos:

  1. controlador de saúde
  2. políticas de saúde

O que é o modo de reação?

As políticas de integridade incluem a condição de integridade que você deseja monitorar em seu ambiente. Ele reage quando seus requisitos definidos não são atendidos.

Existem dois modos de reação.

  1. Modo automático : o sistema agirá quando a violação da política de integridade for detectada.

Por exemplo, se você configurar para monitorar o uso de memória e desejar reiniciar a JVM quando o uso da mensagem for de 85%, o sistema reiniciará a JVM de destino quando o tamanho de heap da JVM atingir 85%.

  1. Modo supervisionado : o sistema criará uma tarefa de tempo de execução quando a violação da política de integridade for detectada. Isso requer intervenção manual para que o administrador do WebSphere aprove ou negue a ação da tarefa de tempo de execução.

O que é Condições de Saúde?

Condição de integridade é o objeto ou as métricas que você deseja monitorar seu ambiente.

oito condições de funcionamento predefinidas disponíveis no WebSphere 8.5. Você tem a opção de criar uma condição de integridade personalizada.

  • Condição baseada em idade – essa condição monitorará a JVM definida e agirá quando atingir um limite de idade configurado.

Ex:

Você pode configurar essa condição para reiniciar a JVM se estiver em execução por 15 dias. O valor aceitável para esta situação é em Dias ou Horas, conforme mostrado abaixo.

condição baseada na idade

  • Condição de tempo limite de solicitação excessivo – essa condição entrará em ação quando a porcentagem de tempo limite de solicitação exceder o valor definido. O valor aceitável é em porcentagem, conforme mostrado abaixo.

Excessivo-request-timeout

  • Condição de tempo de resposta excessivo – isso monitorará o tempo que leva para uma solicitação ser concluída e agir se o tempo exceder o limite definido.

Ex:

Você pode configurar essa condição para fazer um dump de encadeamento quando o tempo de resposta de uma solicitação for de um minuto. O valor aceitável está em milissegundos, segundos e minutos, conforme mostrado abaixo.

tempo de resposta excessivo

  • Condição de memória: uso excessivo de memória – monitora o uso de memória da JVM e age se exceder o valor limite.

Ex:

Você pode configurar essa condição para fazer dump de heap da JVM e reiniciar a JVM quando o uso da memória exceder o limite. O valor aceitável para o tamanho de heap da JVM está em porcentagem e período incorreto em segundos e minutos, conforme mostrado abaixo.

uso de condição de memória

  • Condição de memória: vazamento de memória – isso procurará vazamentos de memória na JVM e tomará medidas.

vazamento de condição de memória

Isso tem três níveis de detecção.

  1. Rápido (alarmes falsos)
  2. Padrão (alguns alarmes falsos)
  3. Lento (menos alarmes falsos)
  • Condição de dreno de tempestade – monitore a queda significativa no tempo médio de resposta e execute ações como gerar dump de encadeamento e reiniciar a JVM.

tempestade-política de saúde

Isso tem dois níveis de detecção.

  1. Padrão (alguns alarmes falsos)
  2. Lento (menos alarmes falsos)
  • Condição de carga de trabalho - essa condição detectará uma vez que uma JVM tenha atendido a um número configurado de solicitações.

Ex:

Você pode configurar para reiniciar a JVM assim que ela atender a 2.000.000 solicitações.

carga de trabalho de condição de saúde

  • Condição de porcentagem de coleta de lixo – monitora a porcentagem de tempo gasto na coleta de lixo por um período definido e executa uma ação quando excede o limite. O valor aceitável é a porcentagem e o período de amostragem, conforme mostrado abaixo.

condição de saúde-gc

O que é Ação em Saúde?

Ação de integridade é a ação de política de integridade a ser executada assim que exceder o limite configurado.

sete ações de funcionamento predefinidas disponíveis no WebSphere 8.5.

ação de saúde

  • Reiniciar servidor - para reiniciar a JVM
  • Fazer dumps de encadeamento – para fazer dumps de encadeamento da JVM
  • Fazer dumps de heap da JVM – para fazer dumps de heap da JVM
  • Gere uma armadilha SNMP - gere uma armadilha SNMP para solução de problemas
  • Coloque o servidor no modo de manutenção - pare novas solicitações de clientes e atenda apenas a sessão ativa
  • Coloque o servidor no modo de manutenção e interrompa a afinidade - interrompa a sessão de ação nova e existente
  • Local fora do modo de manutenção – pronto para aceitar novas solicitações

Você tem a opção de criar uma ação de integridade personalizada.

Como Criar Políticas de Saúde?

As políticas de saúde podem ser criadas em quatro etapas fáceis.

  1. Defina as propriedades gerais da política de integridade - aqui para fornecer o nome da política e selecionar a condição de integridade
  2. Defina as propriedades da condição de integridade da política de integridade - aqui para fornecer o limite da condição de integridade escolhida e configurar as ações necessárias a serem tomadas quando a condição de integridade for violada
  3. Especifique os membros a serem monitorados - selecione JVM, Clusters, Clusters dinâmicos, roteadores sob demanda ou Célula como destino das políticas de integridade
  4. Confirme a criação da política de integridade - revise a configuração das políticas de integridade e confirme para criar

Vamos criar uma política de saúde da seguinte forma.

  • Faça login no console do WebSphere 8.5 ND DMGR
  • Clique em Políticas operacionais >> Políticas de saúde
  • Clique em Novo
  • Forneça o nome - Test_Policy
  • Selecione condição de integridade como condição de carga de trabalho (podemos testar essa condição rapidamente)
  • Clique em Avançar
  • Insira o total de solicitações como 1.000 para fins de teste
  • Selecione o modo de reação como Automático
  • Adicionar ação Reiniciar servidor e fazer dumps de thread

carga de trabalho de política de saúde

  • Clique em Avançar
  • Selecione Filtrar por como servidores/nós
  • Adicionar server1 como membro de destino
  • Clique em Avançar
  • Revise a configuração e clique em Concluir

saúde-política-resumo

Agora, vamos testar acessando o aplicativo em execução na JVM de destino (servidor1).

Uma vez que a JVM atende a solicitação 1000, ela deve fazer um dump de encadeamento e reiniciar. Você pode usar o JMeter para colocar a carga para que os testes possam ser feitos rapidamente.

O que é Controlador de Saúde?

O controlador de integridade controla as políticas de integridade e monitora o sistema. O monitoramento de integridade deve ser habilitado no Controlador de integridade para monitorar políticas.

O próprio controlador de integridade possui propriedades configuráveis, como a frequência com que deve ser executado e, às vezes, reiniciar o servidor.

Isso permite que você restrinja a reinicialização do servidor durante o horário de pico comercial.

O que é Meta da Política de Saúde?

A política de funcionamento ou o destino da ação podem ser JVMs, clusters, clusters dinâmicos, roteadores sob demanda ou células.

Espero que isso ajude a entender melhor. Se você estiver interessado em aprender DevOps, confira este curso fundamental.