Hoje irei falar sobre uma ferramenta muito bacana que a Cisco possui (na verdade, adquiriu a empresa) chamada ThousandEyes. Achei bacana escrever sobre essa ferramenta pois ela é uma solução "nova"que tem a ideia de MUDAR o jogo do Network Admin que precisa de uma visão mais detalhada da internet, ainda mais nesse momento que estamos vivendo de Multi-Cloud!
Pega o seu café bem forte e vem comigo!
"Mil Zoio"
Mas afinal, o que é ThousandEyes? Bom, ThousandEyes (ou, mil zoio pros íntimos rs ) é uma ferramenta SaaS (Software as a Service) criada pela própria ThousandEyes(e adquirida pela Cisco) com a proposta de ser uma ferramenta de Internet Analytics e Observability voltada para redes. Com ela, conseguimos ter vários insights da nossa rede/aplicação, desde o caminho (path) BGP para alcança-la, como a experiência da aplicação (waterfalls da ferramentas do administrador do seu browser por exemplo).
Conseguem imaginar o poder que essa ferramenta tem? Agora podemos nao só saber como nossa rede/aplicação está, mas também conseguimos saber como está a experiência do usuário final sem ter que precisar perguntar nenhuma informação a ele! Mas, como isso funciona?
Agents ThousandEyes
A ThousandEyes trabalha com o conceito de Agents. E o que sao esses agents? Sao os devices que irao realizar as coletas e irao envia-las para a nuvem da ThousandEyes (pois lembrem-se, o ThousandEyes é um SaaS!). Nos possuímos 3 "sabores"de agents conforme abaixo:
Cloud Agent: Devices sobre responsabilidade da ThousandEyes localizados em mais de 200 cidades ao redor do mundo e estão conectados a ISPs Tier 1, 2 e 3, provedores de serviços de banda larga e data centers regionais dos principais provedores de nuvem.A lista completa de todos pode ser vista aqui .
Enterprise Agent: Device que fica dentro da nossa infraestrutura e que é de nossa responsabilidade que ficará responsável de enviar as probes(realizar os testes) e envia-los para a nuvem da ThousandEyes (esse device pode ser um servidor virtual com a OVA da ThousandEyes,um container dentro de determinados switches como por exemplo Catalysts 9000 ou Bare metal).
EndpointAgent: App que você instala no navegador do usuário final e fornece visibilidade em tempo real da experiência de cada usuário como por exemplo SaaS e aplicativos hospedados internamente, saúde da sua wireless, WAN, conectividade com a Internet etc. Abaixo está a "carinha"desse endpoint agent monitorando a experiência de um usuário final
Agora que sabemos quais são os "nossos olhos", vamos entender quais testes podemos fazer.
ThousandEyes Test Layers
ThousandEyes possui diferentes tests que são divididos por "camadas" conforme abaixo.
Routing Layer - BGP Test
Test BGP para monitorar como os Cloud Agents alcançam o seu prefixo IP, funcionando de forma muito similar a um "Looking Glass". Esse test ajuda a resolver os seguintes problemas:
Visibilidade de todo o caminho BGP de varios pontos de vista
Histórico do "antes/depois"de atualizacoes BGP
Alertas de BGP Leaks e Outages
Você pode ver um test BGP nesse link .
Network Layer - Agent-to server/Agent-to-Agent
Tests de rede entre Agents ou de um Agent para um servidor. para ter a visão de rede sobre como está a "saúde da rede"de todo o caminho. Os tests de network tem a proposta de:
Medir o desempenho da rede ao acessar o servidor remoto de destino de agentes atribuídos para teste.
Entender as mudanças no caminho da rede entre a origem e o destino.
Identifique a degradação e perda de pacotes ao longo do caminho da rede.
Aqui é possível ver exemplos de teste de agent-to-agent e agent-to-server
Network Layer - DNS Server/Trace e SEC
Tests de DNS para monitorar a saúde do seu servidor DNS e do seu domínio. O test DNS tem a proposta de:
Alerta sobre mapeamento de registro DNS incorreto.
Medir o desempenho e a disponibilidade do servidor de nomes DNS.
Monitorar o desempenho da rede entre agentes e servidores de destino.
Comparar os resultados e o desempenho do DNS em todo o mundo.
Aqui, podemos ver alguns exemplos de tests DNS como o DNS Server e o DNS Trace
Web Layer - HTTP Server/PageLoad and Transaction
O Test da camada Web é o que testa a aplicação. Nele, conseguimos saber como estamos alcançando a aplicação (adicionamos a URL ou IP da nossa aplicação no Target url) e outros parâmetros como:
DNS: a parte do domínio do URL de destino de teste é resolvida para um endereço IP.
Connect: Um handshake TCP de 3 vias é executado.
SSL (opcional): os mecanismos de segurança são negociados.
Send: uma solicitação HTTP é enviada.
Receive: uma resposta HTTP é aguardada e recebida
HTTP: o código de resposta HTTP é validado.
Esse test pode ser visto aqui
OBS: Note que nesse test, também possuímos as camadas de "Network" e "Routing", Isso ocorre pois a ThousandEyes trabalha com a ideia de que esses testes sao "pre reqs"para conseguirmos rodar os tests da camada HTTP. Ou seja, ao criar esse test para a aplicação https://thousandeyes.okta.com, eu estou testando nao só como a aplicacao está funcionando, mas todo o caminho de rede e BGP do ip que responde por essa aplicação,e o melhor, ela nao cobra a mais por isso!
Os test de "Page Load"são testes para verificamos qual o tempo que estamos levando para conseguir abrir a aplicação (ou seja, como está sendo nossa experiência para aquela aplicação). Já o Transaction Test é usado para simularmos um usuário logando em nossa aplicação. Por exemplo, você possui um portal da empresa e quer que de tempos em tempos algum usuário logue para você garantir que a aplicação esta ok (porque não adianta nada o servidor estar funcionando, mas ao logar dentro da aplicação ela não retornar nada), com o transaction test você consegue testar isso. Ao adicionarmos um usuário e senha dentro do test, de tempo em tempo o ThousandEyes irá simular esse login como se fosse um usuário real.
Veja um exemplo de Page load Test e Transaction test.
Espero que esse artigo tenha deixado você curioso sobre o quão poderosa e fantástica essa ferramenta é, e como conseguimos ter uma visão que dificilmente se tem (e quando se tem, não com essa granularidade de detalhes) e como ela será um forte aliado ao Network Admin. Para mais detalhes, sugiro que vão no site da ThousandEyes e se aventurem por lá pois eles possuem muito material explicando no detalhe cada um dos tests e com demos para você entender como ela funciona, fora que ela disponibiliza um demo-trial de 15 dias!
Let's routing!
Very helpful. And aside from that, ThousandEyes detects issues, packet loss, and delayed routing to help ISPs and businesses maintain internet connectivity. ThousandEyes can identify ISP or cloud provider network congestion that delays downloads, buffers, or disrupts video calls. https://www.tp-link.com/ph/blog/1775/selecting-the-best-internet-service-for-your-home-the-ultimate-guide/
Artigo show PH!