Você pode usar nosso processo de instalação guiada para instalar o agente de monitoramento syslog ou instalar o agente manualmente. Este documento aborda os pré-requisitos para iniciar o processo de instalação e um passo a passo das opções de instalação.
Pré-requisitos
Antes de começar, você precisará se inscrever em uma conta New Relic. Se você optar por instalar o agente manualmente, também precisará de:
Um ID de conta New Relic.
Uma New Relic
.
Recomendamos utilizar um contêiner Docker para implantar o agente para coleta de mensagens syslog. Para usá-lo, você precisa de:
- Docker instalado em um host Linux
- Capacidade de lançar novos contêineres via linha de comando
Se você estiver usando um contêiner Podman para lançar o agente, você precisa:
- Podman instalado em um host Linux
- Capacidade de lançar novos contêineres via linha de comando
Se estiver usando Linux para instalar o agente como um serviço, você precisará de:
Acesso SSH ao host
Acesso para instalar/remover aplicativos e serviços
Um destes sistemas operacionais suportados:
- CentOS 8
- Debian 12 (leitor ávido)
- Debian 11 (alvo)
- Debian 10 (Buster)
- RedHat Enterprise Linux 9
- Ubuntu 20.04 (FocalLTS)
- Ubuntu 22.04 (Jammy LTS)
- Ubuntu 23.04 (Lunar)
Importante
Para receber mensagens syslog, o agente deve vincular-se ao UDP 514. Em uma instalação baseada em host, o comando a seguir será incluído durante o processo de instalação. Quando executado, o KTranslate será executado com privilégios elevados.
sudo setcap cap_net_bind_service=+ep /usr/bin/ktranslate
Importante
ktranslate
lida automaticamente com syslog nos seguintes formatos: RFC3164, RFC5424 e RFC6587. Quaisquer mensagens recebidas fora desses formatos serão descartadas, a menos que você configure o -syslog.format=NoFormat sinalizador em tempo de execução.
Você deve configurar os dispositivos de origem para enviar mensagens syslog ao host que executa o agente Monitoramento de rede. Veja como configurar a exportação de syslog de rede em alguns dispositivos (esta não é uma lista completa):
- Ponto de verificação - Gateway de segurança. Você deve entrar no ponto de verificação do usuário Center/PartnerMAP.
- Cisco-ASA
- Cisco-IOS
- Cisco-NX-OS
- F5 - BIG-IP
- Fortinet Fortigate
- Junípero - Junos
- Palo Alto - PAN-OS
Verifique os pré-requisitos de segurança de rede para syslog de rede.
Configure o monitoramento de syslog de rede no New Relic
Para a maioria dos casos de uso, recomendamos nossa instalação guiada para configurar o monitoramento de dados de fluxo de rede. Se sua configuração for mais avançada com configurações personalizadas, recomendamos a instalação manual.
Vá para one.newrelic.com > All capabilities > Add more data.
Role para baixo até ver Network e clique em Syslog.
Siga as etapas descritas no processo de instalação guiada. Você pode usar Docker ou Linux.
one.newrelic.com > All capabilities > Add more data > Network > Syslog para configurar o monitoramento de mensagens syslog.
Investigue as mensagens syslog do seu dispositivo na interface New Relic usando a seguinte consulta:
"plugin.type":"ktranslate-syslog"Aqui está um pequeno vídeo (2:56 minutos) mostrando como configurar o monitoramento de syslog de rede:
Antes de ler sobre a instalação manual do agente syslog, considere usar nosso processo de instalação guiada para evitar erros:
Em um host Linux com Docker instalado, faça download da imagem ktranslate executando um dos seguintes procedimentos:
- bash$docker pull kentik/ktranslate:v2
- bash$docker pull quay.io/kentik/ktranslate:v2
Copie o arquivo
snmp-base.yaml
para o diretório local$HOME
do seu usuário Docker e descarte o contêiner executando:bash$cd ~$id=$(docker create kentik/ktranslate:v2)$docker cp $id:/etc/ktranslate/snmp-base.yaml .$docker rm -v $idEdite o arquivo
snmp-base.yaml
e adicione seus dispositivos syslog dentro da chave do dicionáriodevices
com a seguinte estrutura:devices:# This key and the corresponding 'device_name'# need to be unique for each devicesyslog_device1:device_name: syslog_device1device_ip: x.x.x.x/yyping_only: true# Optional user tagsuser_tags:owning_team: net_engenvironment: productionImportante
Se você já estiver monitorando dispositivos de dados SNMP que também irão conectar mensagens syslog em rede, você vai querer garantir que o valor de
device_name
seja idêntico para ambos os arquivos de configuração para garantir que as mensagens syslog sejam atribuídas à entidade correta no New Relic interface.Execute
ktranslate
para escutar fluxos de rede com o comando:bash$docker run -d --name ktranslate-$CONTAINER_SERVICE --restart unless-stopped --pull=always -p 514:5143/udp \>-v `pwd`/snmp-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-dns=local \># Use this field to create a unique value for `tags.container_service` inside of New Relic>-service_name=$CONTAINER_SERVICE \>nr1.syslogDica
A porta padrão na qual o contêiner escuta mensagens syslog é
514/udp
. Se suas mensagens estiverem sendo enviadas por uma porta diferente, você precisará alterar o argumento-p 514:5143/udp
para-p $srcPort:5143/udp
.Investigue as mensagens syslog do seu dispositivo na interface New Relic usando a seguinte consulta:
"plugin.type":"ktranslate-syslog"
Em um host com o Podman instalado, faça download da imagem ktranslate executando o seguinte comando:
- bash$podman pull docker.io/kentik/ktranslate:v2
Copie o arquivo
snmp-base.yaml
para o diretório local$HOME
do seu usuário Podman e descarte o contêiner executando:bash$cd ~$id=$(podman create kentik/ktranslate:v2)$podman cp $id:/etc/ktranslate/snmp-base.yaml .$podman rm -v $idEdite o arquivo
snmp-base.yaml
e adicione seus dispositivos syslog dentro da chave do dicionáriodevices
com a seguinte estrutura:devices:# This key and the corresponding 'device_name'# need to be unique for each devicesyslog_device1:device_name: syslog_device1device_ip: x.x.x.x/yyping_only: true# Optional user tagsuser_tags:owning_team: net_engenvironment: productionImportante
Se você já estiver monitorando dispositivos de dados SNMP que também enviarão mensagens syslog de rede, você vai querer garantir que o valor de
device_name
seja idêntico para ambos os arquivos de configuração para garantir que as mensagens syslog sejam atribuídas à entidade correta no New Relic Interface .O contêiner Rootless Podman não consegue se vincular a portas abaixo de 1024. Para lidar com o redirecionamento de pacotes para suas mensagens syslog, você precisará criar uma regra
iptables
que destine a porta em que seus pacotes estão chegando no UDP ($scrPort
) com o comando:bash$sudo iptables -t nat -A PREROUTING -p udp --dport $scrPort -j REDIRECT --to-port 5143Execute
ktranslate
para escutar mensagens syslog com o comando:bash$podman run -d --name ktranslate-$CONTAINER_SERVICE --userns=keep-id --restart unless-stopped --pull=always --net=host \>-v `pwd`/snmp-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-dns=local \>-service_name=ktranslate-$CONTAINER_SERVICE \>nr1.syslogInvestigue as mensagens syslog do seu dispositivo na interface New Relic usando a seguinte consulta:
"plugin.type":"ktranslate-syslog"
- Dependendo do seu gerenciador de pacote, use um dos comandos abaixo para instalar
ktranslate
:
Yum:
bash$curl -s https://packagecloud.io/install/repositories/kentik/ktranslate/script.rpm.sh | sudo bash && \>sudo yum install ktranslateApt:
bash$curl -s https://packagecloud.io/install/repositories/kentik/ktranslate/script.deb.sh | sudo bash && \>sudo apt-get install ktranslate
Defina as variáveis de ambiente usadas por
ktranslate
:bash$sudo tee "/etc/default/ktranslate.env" > /dev/null <<'EOF'$NR_ACCOUNT_ID=$YOUR_NR_ACCOUNT_ID$NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY$KT_FLAGS="-snmp /etc/ktranslate/snmp-base.yaml \>-metrics=jchf \>-tee_logs=true \>-dns=local \>-service_name=$CONTAINER_SERVICE \>-syslog.source=0.0.0.0:514 \>nr1.syslog"$EOF$$# ensure /etc/default/ktranslate.env is owned by ktranslate user$sudo chown ktranslate:ktranslate /etc/default/ktranslate.env$$# Syslog binds to privileged port 514. Allow ktranslate to bind to this point with the following command$sudo setcap cap_net_bind_service=+ep /usr/bin/ktranslateSe você não tiver um arquivo de configuração
snmp-base.yaml
, crie um com:bash$cd ~$touch snmp-base.yamlEdite o arquivo
snmp-base.yaml
e adicione seus dispositivos syslog dentro da chave do dicionáriodevices
com a seguinte estrutura:devices:# This key and the corresponding 'device_name'# need to be unique for each devicesyslog_device1:device_name: syslog_device1device_ip: x.x.x.x/yyping_only: true# Optional user tagsuser_tags:owning_team: net_engenvironment: productionReinicie o serviço
ktranslate
para aplicar as alterações ao arquivosnmp-base.yaml
:bash$sudo systemctl restart ktranslateInvestigue as mensagens syslog do seu dispositivo na interface New Relic usando a seguinte consulta:
"plugin.type":"ktranslate-syslog"
Este documento ajudou você na instalação?
Qual é o próximo?
Você pode configurar algum agente adicional para complementar os dados do syslog da sua rede:
- Para obter melhor visibilidade do desempenho do seu dispositivo de rede, configure o monitoramento de dados SNMP.
- Para obter melhor visibilidade de como sua rede está sendo usada, configure o monitoramento de dados de fluxo de rede.