Vous pouvez utiliser notre processus d'installation guidé pour installer syslog l'agent de monitoring, ou installer l'agent manuellement. Ce document couvre les prérequis pour démarrer ce processus d'installation et une procédure étape par étape de vos options d'installation.
Prérequis
Avant de pouvoir commencer, vous devez créer un compte New Relic. Si vous choisissez d'installer l'agent manuellement, vous avez également besoin de :
- Un identifiant de compte New Relic.
- Une New Relic .
Nous vous recommandons d'utiliser un conteneur Docker pour déployer l'agent de collecte des messages syslog . Pour l'utiliser, vous avez besoin de :
- Docker installé sur un hôte Linux
- Possibilité de lancer un nouveau conteneur via ligne de commande
Si vous utilisez un conteneur Podman pour lancer l'agent, vous avez besoin de :
- Podman installé sur un hôte Linux
- Possibilité de lancer un nouveau conteneur via ligne de commande
Si vous utilisez Linux pour installer l’agent en tant que service, vous avez besoin de :
Accès SSH à l'hôte
Accès pour installer/supprimer des applications et des services
L'un de ces systèmes d'exploitation pris en charge :
- CentOS 8
- Debian 12 (Bookworm)
- Debian 11 (Bullseye)
- Debian 10 (Buster)
- RedHat Enterprise Linux 9
- Ubuntu 20.04 (Focal LTS)
- Ubuntu 22.04 (Jammy LTS)
- Ubuntu 23.04 (lunaire)
Important
Pour recevoir des messages syslog, l'agent doit se lier à UDP 514. Dans une installation basée sur l'hôte, la commande suivante sera incluse pendant le processus d'installation. Une fois exécuté, KTranslate sera exécuté avec des privilèges élevés.
bash$sudo setcap cap_net_bind_service=+ep /usr/bin/ktranslate
Important
ktranslate
gère automatiquement syslog dans les formats suivants : RFC3164, RFC5424 et RFC6587. Tous les messages reçus en dehors de ces formats seront rejetés, sauf si vous configurez l'indicateur -syslog.format=NoFormat
au moment de l'exécution.
Vous devez configurer les périphériques sources pour envoyer des messages syslog à l'hôte exécutant l'agent monitoring du réseau. Voici comment configurer l'exportation syslog réseau sur certains appareils (il ne s'agit pas d'une liste exhaustive) :
- Checkpoint - Security Gateway. Vous devez vous connecter au point de contrôle Centre utilisateur/PartnerMAP.
- Cisco-ASA
- Cisco - IOS
- Cisco - Système d'exploitation NX
- F5 - BIG-IP
- Fortinet Fortigate
- Genévrier - Junos
- Palo Alto - PAN-OS
Vérifiez les prérequis de sécurité réseau pour le réseau syslog.
Configurer du réseau syslog monitoring dans New Relic
Pour la plupart des cas d'utilisation, nous recommandons notre guide d'installation pour configurer monitoring des données de flux réseau. Si votre configuration est plus avancée avec des configurations personnalisées, nous vous recommandons de l'installer manuellement.
Allez à one.newrelic.com > All capabilities > Add more data.
Faites défiler vers le bas jusqu’à ce que vous voyiez Network et cliquez sur Syslog.
Suivez les étapes décrites dans le processus d’installation guidée. Vous pouvez utiliser Docker ou Linux.
one.newrelic.com > All capabilities > Add more data > Network > Syslog pour configurer syslog des messages monitoring.
Examinez les messages syslog de votre appareil dans l'interface utilisateur New Relic , à l'aide de la requête suivante :
"plugin.type":"ktranslate-syslog"Voici une courte vidéo (2:56 minutes) montrant comment configurer du syslog monitoring réseau :
Avant de lire l'article sur l'installation manuelle de l'agent syslog , pensez à utiliser notre processus d'installation guidé pour éviter les erreurs :
Sur un hôte Linux avec Docker installé, téléchargez l’image ktranslate en exécutant l’une des opérations suivantes :
- Centre Docker:bash$docker pull kentik/ktranslate:v2
- Quay.io:bash$docker pull quay.io/kentik/ktranslate:v2
- Centre Docker:
Copiez le fichier
snmp-base.yaml
dans le répertoire local$HOME
de votre utilisateur Docker et supprimez le conteneur en exécutant :bash$cd ~$id=$(docker create kentik/ktranslate:v2)$docker cp $id:/etc/ktranslate/snmp-base.yaml .$docker rm -v $idModifiez le fichier
snmp-base.yaml
et ajoutez vos périphériques syslog dans la clé de dictionnairedevices
avec la structure suivante :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: productionImportant
Si vous monitoring déjà des périphériques de données SNMP qui mettront également en réseau des messages syslog , vous souhaiterez vous assurer que la valeur de
device_name
est identique pour les deux fichiers configuration afin de garantir que les messages syslog sont attribués à la bonne entité dans l'interface utilisateur de New Relic.Exécutez
ktranslate
pour écouter les flux réseau avec la commande :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.syslogConseil
Le port par défaut sur lequel le conteneur écoute les messages syslog est
514/udp
. Si vos messages sont envoyés via un port différent, vous devrez modifier l'argument-p 514:5143/udp
en-p $srcPort:5143/udp
.Examinez les messages syslog de votre appareil dans l'interface utilisateur New Relic , à l'aide de la requête suivante :
"plugin.type":"ktranslate-syslog"
Sur un hôte sur lequel Podman est installé, téléchargez l'image ktranslate en exécutant la commande suivante :
- Centre Docker:bash$podman pull docker.io/kentik/ktranslate:v2
- Centre Docker:
Copiez le fichier
snmp-base.yaml
dans le répertoire local$HOME
de votre utilisateur Podman et supprimez le conteneur en exécutant :bash$cd ~$id=$(podman create kentik/ktranslate:v2)$podman cp $id:/etc/ktranslate/snmp-base.yaml .$podman rm -v $idModifiez le fichier
snmp-base.yaml
et ajoutez vos périphériques syslog dans la clé de dictionnairedevices
avec la structure suivante :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: productionImportant
Si vous monitoring déjà des périphériques de données SNMP qui enverront également des messages syslog réseau, vous souhaiterez vous assurer que la valeur de
device_name
est identique pour les deux fichiers configuration afin de garantir que les messages syslog sont attribués à la bonne entité dans l'interface utilisateur de New Relic.Les conteneurs Podman sans racine ne peuvent pas se lier aux ports inférieurs à 1024. Pour gérer la redirection de paquets pour vos messages syslog, vous devez créer une règle
iptables
qui cible le port sur lequel vos paquets arrivent UDP ($scrPort
) avec la commande :bash$sudo iptables -t nat -A PREROUTING -p udp --dport $scrPort -j REDIRECT --to-port 5143Exécutez
ktranslate
pour écouter les messages syslog avec la commande :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.syslogExaminez les messages syslog de votre appareil dans l'interface utilisateur New Relic , à l'aide de la requête suivante :
"plugin.type":"ktranslate-syslog"
- En fonction de votre gestionnaire de paquets, utilisez l'une des commandes ci-dessous pour installer
ktranslate
:
- Yum:bash$curl -s https://packagecloud.io/install/repositories/kentik/ktranslate/script.rpm.sh | sudo bash && \>sudo yum install ktranslate
- Apt:bash$curl -s https://packagecloud.io/install/repositories/kentik/ktranslate/script.deb.sh | sudo bash && \>sudo apt-get install ktranslate
Définir les variables d’environnement utilisées par
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/ktranslateSi vous n'avez pas de fichier de configuration
snmp-base.yaml
existant, créez-en un avec :bash$cd ~$touch snmp-base.yamlModifiez le fichier
snmp-base.yaml
et ajoutez vos périphériques syslog dans la clé de dictionnairedevices
avec la structure suivante :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: productionRedémarrez le service
ktranslate
pour appliquer vos modifications au fichiersnmp-base.yaml
:bash$sudo systemctl restart ktranslateExaminez les messages syslog de votre appareil dans l'interface utilisateur New Relic , à l'aide de la requête suivante :
"plugin.type":"ktranslate-syslog"
Ce document vous a-t-il aidé lors de votre installation ?
Quelle est la prochaine étape ?
Vous pouvez configurer des agents supplémentaires pour compléter les données syslog de votre réseau :
Pour obtenir une meilleure visibilité sur les performances de votre périphérique réseau, configurez le monitoring des données SNMP.
Pour obtenir une meilleure visibilité sur la façon dont votre réseau est utilisé, configurez le monitoring des données de flux réseau.