Compartilhar via


Práticas recomendadas de monitoramento e diagnóstico para o Azure Service Fabric

O monitoramento e o diagnóstico são essenciais para desenvolver, testar e implantar cargas de trabalho em qualquer ambiente de nuvem. Por exemplo, você pode acompanhar como seus aplicativos são usados, as ações executadas pela plataforma Service Fabric, a utilização de recursos com contadores de desempenho e a integridade geral do cluster. Você pode usar essas informações para diagnosticar e corrigir problemas e evitar que eles ocorram no futuro.

Monitorização da aplicação

O monitoramento de aplicativos rastreia como os recursos e componentes do seu aplicativo estão sendo usados. Monitore seus aplicativos para garantir que os problemas que afetam seus usuários sejam detetados. O monitoramento de aplicativos é de responsabilidade de quem desenvolve o aplicativo e seus serviços, pois é exclusivo para a lógica de negócios do seu aplicativo. É recomendável configurar o monitoramento de aplicativos com o Application Insights, a ferramenta de monitoramento de aplicativos do Azure.

Monitorização de cluster

Um dos objetivos do Service Fabric é tornar os aplicativos resilientes a falhas de hardware. Esse objetivo é alcançado por meio da capacidade dos serviços de sistema da plataforma de detetar problemas de infraestrutura e fazer failover rápido de cargas de trabalho para outros nós no cluster. Mas e se os próprios serviços do sistema tiverem problemas? Ou se, ao tentar implantar ou mover uma carga de trabalho, as regras para a colocação de serviços forem violadas? O Service Fabric fornece diagnósticos para esses e outros problemas, para garantir que você esteja informado sobre como a plataforma do Service Fabric interage com seus aplicativos, serviços, contêineres e nós.

Para clusters do Windows, é recomendável configurar o monitoramento de cluster com os logs do Agente de Diagnóstico e do Azure Monitor.

Para clusters Linux, os logs do Azure Monitor também são a ferramenta recomendada para monitoramento de infraestrutura e plataforma do Azure. Os diagnósticos da plataforma Linux exigem configurações diferentes, conforme observado nos eventos de cluster Linux do Service Fabric no Syslog.

Monitorização das infraestruturas

Os logs do Azure Monitor são recomendados para monitorar eventos no nível do cluster. Depois de configurar o agente do Log Analytics com seu espaço de trabalho, conforme descrito no link anterior, você poderá coletar métricas de desempenho, como Utilização da CPU, contadores de desempenho do .NET, como utilização da CPU no nível do processo, contadores de desempenho do Service Fabric, como # de exceções de um serviço confiável, e métricas de contêiner, como Utilização da CPU. Você precisará gravar logs de contêiner em stdout ou stderr para que eles estejam disponíveis nos logs do Azure Monitor.

Cães de guarda

Geralmente, um cão de guarda é um serviço separado que monitora a integridade e a carga entre serviços, pings de pontos de extremidade e relata eventos de integridade inesperados no cluster. Isso pode ajudar a evitar erros que podem não ser detetados com base apenas no desempenho de um único serviço. Os vigilantes também são um bom lugar para hospedar código que executa ações corretivas que não exigem interação do usuário, como limpar arquivos de log no armazenamento em determinados intervalos de tempo. Se você quiser um serviço de vigilância SF de código aberto totalmente implementado que inclua um modelo de extensibilidade de cão de guarda fácil de usar e que seja executado em clusters Windows e Linux, consulte o projeto FabricObserver . O FabricObserver é um software pronto para produção. Incentivamos você a implantar o FabricObserver em seus clusters de teste e produção e estendê-lo para atender às suas necessidades, seja por meio de seu modelo de plug-in ou forjando-o e escrevendo seus próprios observadores integrados. O primeiro (plug-ins) é a abordagem recomendada.

Próximos passos