|
... |
A tecnologia de contêineres que foi popularizada pelo Docker e pelo Kubernetes, alterou a forma como muitas equipes de desenvolvimento e operações testam e implantam seus aplicativos.
Os contêineres ajudam as empresas a se modernizar, facilitando o dimensionamento e a implantação de aplicativos, criando um impacto positivo nos custos de TI. No entanto, isso também introduz desafios mais complexos, pois os contêineres e a orquestração deles criam um ecossistema de infraestrutura totalmente novo.
A execução de ambientes em contêiner exige que as equipes repensem e adaptem suas estratégias de monitoramento para levar em consideração todas as novas camadas introduzidas nesse ecossistema.
No final das contas, as equipes de desenvolvimento são responsáveis por entregar um software de alta qualidade que ofereça uma ótima experiência ao cliente, que não quer ser afetado por quaisquer alterações em suas plataformas, ferramentas, linguagens ou frameworks.
Os clientes não se importam se você estiver usando máquinas virtuais, um cluster multi-nuvem ou qualquer outra ferramenta. Eles só querem as aplicações e serviços que você fornece para ser confiável, disponível e velozes. Ferramentas como Docker e Kubernetes são úteis apenas na medida em que tornam isso possível.
É por isso que o New Relic é otimizado para monitorar aplicativos mesmo em ambientes com contêineres.
-- Docker de Monitoramento --
O New Relic coleta automaticamente as métricas para contêineres do Docker em execução nos hosts que possuem o agente instalado neles. Depois de implantar o agente de Infraestrutura, o New Relic pode monitorar automaticamente os processos em execução dentro de contêineres em um host.
Mas isso é apenas o começo do que você pode fazer. O New Relic permite filtrar para ver todos os processos em execução dentro de um contêiner usando um atributo.
A partir daí, você pode clicar em “Filtrar Processos” e “contidos” e, em seguida, selecionar “true” para ver todos os processos em execução nos seus contêineres.
Além disso, você pode ver qual contêiner está executando o processo para identificar a CPU, a memória usada por esse processo no contêiner. Como a imagem do contêiner é uma chave exclusiva para diferenciar entre contêineres.
Você também pode agrupar aplicativos por imagem do contêiner para ver todos os processos em execução em um contêiner específico.
-- Monitorando contêineres no Kubernetes --
Conforme observado, em um ambiente que usa ferramentas de orquestração como o Kubernetes, seus contêineres geralmente fazem isso. Eles estarão em um host durante uma implantação e depois migrarão para um conjunto diferente de hosts durante outra implantação.
Você precisa de alguma maneira de saber onde essas coisas estão realmente sendo executadas a qualquer momento e de se certificar de que está monitorando e reunindo os conjuntos certos de dados.
No Kubernetes, você define a quantidade de CPU e memória que o contêiner precisa para funcionar corretamente. Como os contêineres consomem recursos de CPU, memória e rede, é importante acompanhar o quanto coisas como consumo de CPU e memória chegam aos limites que você configurou.
A integração do Kubernetes do New Relic usa essas informações para fornecer um instantâneo da utilização de recursos de seus contêineres.
Monitorar os recursos do sistema ajuda a garantir que seus clusters e aplicativos permaneçam saudáveis. Se você não tiver capacidade suficiente para atender aos requisitos mínimos de recursos de todos os seus contêineres, deverá aumentar a capacidade de seus nós ou adicionar mais nós para distribuir a carga de trabalho.
Um contêiner se aproximando de seu limite de memória: Se isso acontecer com frequência para contêineres na mesma implantação, isso significa que o limite não está configurado corretamente ou que há um problema com o aplicativo.
Um contêiner excede sua solicitação de memória: esse contêiner estará entre os primeiros a serem despejados se o nó ficar sem memória.
Um contêiner excede seus limites de CPU: isso pode afetar o desempenho, pois o Kubernetes pode limitar a quantidade de CPU que o aplicativo pode acessar. O New Relic informa automaticamente quando o uso da CPU se aproxima ou excede o limite.
Também é importante monitorar os reinícios do contêiner. Se não houver recursos suficientes disponíveis ou se um cluster não estiver configurado corretamente, os contêineres poderão começar a reinicializar continuamente, ficando presos no que é chamado de ” bloqueio de falha “. Você pode ver as reinicializações de contêiner no painel Kubernetes do New Relic, avisando que precisa para resolver o problema.
-- Veja dentro de seus contêineres --
Para entender completamente o que está acontecendo em seu ambiente, você precisa ver todas as camadas em seu ambiente dinâmico, inclusive dentro de seus contêineres. Isso significa holística, centrada em aplicativos e monitoramento de infraestrutura centrada.
A plataforma New Relic foi projetada para fornecer informações sobre todas as camadas da pilha de contêineres, desde aplicativos até serviços, infraestrutura e experiência do cliente. Usar o New Relic para aproveitar o poder da orquestração de contêineres é essencial para que as empresas de software modernas se movimentem com mais rapidez e confiança.
Veja mais em: http://www.ibristec.com.br/