Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
Vous pouvez utiliser notre processus d'installation guidé pour installer l'agent de monitoring du flux réseau 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 :
Possibilité de lancer un nouveau conteneur via ligne de commande
Si vous utilisez Linux pour installer l'agent en tant que service, vous aurez 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)
Vous devez configurer les périphériques sources pour envoyer des données de flux à l'hôte exécutant l'agent monitoring du réseau. Voici comment configurer l’exportation du flux réseau sur certains appareils (cette liste n’est pas exhaustive) :
monitoring du flux réseau prend en charge les quatre principaux types de données de flux réseau et leurs dérivés. Lors de l'exécution de l'agent, vous pouvez spécifier le type majeur que vous souhaitez monitorer à l'aide de l'option -nf.source .
Conseil
La collection de modèles NetFlow v5, NetFlow v9, sFlow et IPFIX peut être gérée à l'aide de -nf.source.=auto sur un seul agent. Cette option est activée par défaut lors de l'utilisation de l'argument nr1.flow au moment de l'exécution.
Type de flux réseau
Activé avec auto?
-nf.source valeur
AppFlow
✓
auto | netflow5
Argus
✓
auto | netflow5
Cisco ASA
asa
Cisco NBAR
nbar
cflowd
✓
auto | netflow5
IPFIX
✓
auto | ipfix
J-Flow
✓
auto | netflow5
NetFlow v5
✓
auto | netflow5
NetFlow v9
✓
auto | netflow9
NetStream
✓
auto | netflow5
Palo Alto Networks
pan
Flux RF
✓
auto | netflow5
sFlow
✓
auto | sflow
Quand faut-il dimensionner la collecte de flux réseau ?
Lors de la planification de votre stratégie de collecte des flux réseau à grande échelle, les éléments suivants doivent être pris en compte :
L'agent ktranslate ne peut effectuer qu'une seule tâche à la fois. Un agent exécutant une collecte SNMP ne peut pas également écouter les flux réseau.
L'agent ktranslate ne peut écouter les flux réseau entrants que sur un seul port d'écoute à la fois (par défaut : 9995). Si vous souhaitez que plusieurs ports soient ouverts, chacun nécessite un agent dédié, en utilisant l'option de configuration -nf.port lors de l'exécution pour modifier le port.
La configuration par défaut -nf.source=auto permet au conteneur d'écouter plusieurs types de flux standard. Si vous devez analyser d'autres types de données de flux comme les modèles Cisco ASA, Cisco NBAR ou Palo Alto Networks, chacun nécessitera son propre agent.
New Relic recommande 1 CPU pour 2 000 flux par seconde (120 000 flux par minute). Déterminer s'il faut faire évoluer horizontalement plusieurs agents pour répartir la charge ou faire évoluer verticalement quelques agents plus grands pour consolider la gestion est une question de préférence personnelle.
Configurer monitoringdes données de flux réseau
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.
Examinez vos données de flux réseau dans l'interface utilisateur New Relic .
Avant de lire l'article sur l'installation manuelle de l'agent de flux réseau, pensez à utiliser notre processus d'installation guidée pour éviter les erreurs :
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)
$
dockercp$id:/etc/ktranslate/snmp-base.yaml .
$
dockerrm-v$id
Modifiez le fichier snmp-base.yaml et ajoutez vos périphériques de flux réseau dans la clé de dictionnaire devices avec la structure suivante :
devices:
# This key and the corresponding 'device_name'
# need to be unique for each device
flow_device1:
device_name: flow_device1
device_ip: x.x.x.x/yy
flow_only:true
# Optional user tags
user_tags:
owning_team: net_eng
environment: production
Important
Si vous monitoring déjà des périphériques de données SNMP qui enverront également des flux réseau, vous souhaiterez vous assurer que la valeur de device_name est identique pour les deux fichiers configuration afin de garantir que la télémétrie du flux est attribuée à 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\
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)
$
podmancp$id:/etc/ktranslate/snmp-base.yaml .
$
podmanrm-v$id
Modifiez le fichier snmp-base.yaml et ajoutez vos périphériques de flux réseau dans la clé de dictionnaire devices avec la structure suivante :
devices:
# This key and the corresponding 'device_name'
# need to be unique for each device
flow_device1:
device_name: flow_device1
device_ip: x.x.x.x/yy
flow_only:true
# Optional user tags
user_tags:
owning_team: net_eng
environment: production
Important
Si vous monitoring déjà des périphériques de données SNMP qui enverront également des flux réseau, vous souhaiterez vous assurer que la valeur de device_name est identique pour les deux fichiers configuration afin de garantir que la télémétrie du flux est attribuée à la bonne entité dans l'interface utilisateur de New Relic.
Exécutez ktranslate pour écouter les flux réseau avec la commande :
bash
$
podman run -d--name ktranslate-$CONTAINER_SERVICE\
# Use this field to create a unique value for `tags.container_service` inside of New Relic
>
-service_name=$CONTAINER_SERVICE\
>
-flow_only=true \
>
nr1.flow
Conseil
Les conteneurs Podman sans racine ne peuvent pas se lier aux ports inférieurs à 1024. Si vos flux réseau sont envoyés sur un port inférieur à 1024 au lieu de la valeur par défaut (9995), vous devrez créer une règle iptables pour gérer la redirection de paquets avec la commande :
Si vous n'avez pas de fichier de configuration snmp-base.yaml existant, créez-en un avec :
bash
$
cd ~
$
touch snmp-base.yaml
Modifiez le fichier snmp-base.yaml et ajoutez vos périphériques de flux réseau dans la clé de dictionnaire devices avec la structure suivante :
devices:
# This key and the corresponding 'device_name'
# need to be unique for each device
flow_device1:
device_name: flow_device1
device_ip: x.x.x.x/yy
flow_only:true
# Optional user tags
user_tags:
owning_team: net_eng
environment: production
Redémarrez le service ktranslate pour appliquer vos modifications au fichier snmp-base.yaml :
bash
$
sudo systemctl restart ktranslate
Examinez vos données de flux réseau dans l'interface utilisateur New Relic .
Trouvez et utilisez vos métriques
Tous les logs de flux réseau exportés depuis le conteneur ktranslate utilisent l'espace de nommage KFlow , via l'API d'événement New Relic. Actuellement, voici les champs par défaut renseignés à partir de cette intégration :
Attribut
Type
Description
application
Chaîne
La classe du programme générant le trafic dans cet enregistrement de flux. Ceci est dérivé de la valeur numérique la plus basse entre l4_dst_port et l4_src_port. Les exemples courants incluent http, ssh et ftp.
device_name
Chaîne
Le nom d’affichage du dispositif d’échantillonnage pour cet enregistrement de flux.
dst_addr
Chaîne
L'adresse IP cible pour cet enregistrement de flux.
dst_as
Numérique
La cible [Autonomous System Number](https://www.iana.org/assignments/ (comme-numéros/comme-numéros.xhtml) pour cet enregistrement de flux.
L'uplet cible IP:Port pour cet enregistrement de flux. Il s’agit d’une combinaison de dst_addr et l4_dst_port.
dst_geo
Chaîne
Le pays cible de cet enregistrement de flux, s'il est connu.
in_bytes
Numérique
Le nombre d'octets transférés pour les enregistrements de flux entrants.
in_pkts
Numérique
Le nombre de paquets transférés pour les enregistrements de flux entrants.
input_port
Numérique
If_Index valeur pour l'interface à la source de cet enregistrement de flux.
l4_dst_port
Numérique
Le port cible pour cet enregistrement de flux.
l4_src_port
Numérique
Le port source de cet enregistrement de flux.
output_port
Numérique
If_Index valeur pour l'interface à la destination de cet enregistrement de flux.
protocol
Chaîne
Le nom d'affichage du protocole utilisé dans cet enregistrement de flux, dérivé du [numeric IANA protocol number](https://www.iana.org/assignments/ protocol-numbers/protocol-numbers.xhtml).
provider
Chaîne
Cet attribut est utilisé pour identifier de manière unique différentes sources de données de ktranslate. Le log de flux réseau aura toujours la valeur kentik-flow-device.
sample_rate
Numérique
Taux d'échantillonnage appliqué soit par la configuration du périphérique d'échantillonnage, soit par l'argument sample_rate dans ktranslate.
src_addr
Chaîne
L'adresse IP source de cet enregistrement de flux.
src_as
Numérique
La source [Autonomous System Number](https://www.iana.org/assignments/ as-numbers/as-numbers.xhtml) pour cet enregistrement de flux.