
Eu tenho dois servidores. O servidor A está executando Elasticsearch e Logstash. O servidor B está executando o filebeat e também é o servidor que contém todos os logs que estou tentando analisar.
O servidor A está protegido por um firewall, pode acessar a Internet, mas não há possibilidade de permitir tráfego de entrada.
O servidor B está na AWS e sob meu controle para tráfego de entrada e saída.
Existe alguma maneira de obter dados do servidor B para o logstash do servidor A? O Filebeat da maneira usual teria que ser capaz de enviar dados para o logstash, mas isso não é possível no meu cenário.
Responder1
Com o Filebeat (ou qualquer outro Beat) em B, suas opções estão limitadas a:
- Elasticsearch – não é viável aqui.
- Redis – Algumas possibilidades.
- Kafka – Possibilidades semelhantes.
Se A puder ligar para os espaços de rede de B, você poderá fazer com que o Filebeat de B deposite logs no Redis (ou Elasticache Redis) ou Kafka (ou AWS Managed Kafka Services), onde o Logstash em A pode se conectar ao Redis ou Kafka.
Para quem se preocupa com a segurança, o Redis agora tem a capacidade de oferecer suporte à autenticação e ao TLS na conexão. Nas versões 6.xe posteriores, especialmente nas variedades AWS, o Redis tem suporte real para ACL.