SUR CETTE PAGE
Journalisation, SNMP et télémétrie
Apprenez à activer la journalisation système, SNMP et la télémétrie sur n’importe lequel de vos routeurs MX204, MX301, MX304, MX10004 ou MX10008.
Journalisation système (Syslog)
Vous pouvez configurer la journalisation du système (syslog) pour maintenir la stabilité, la sécurité et les performances du réseau. La configuration Syslog permet aux administrateurs réseau de surveiller, de dépanner et d’auditer les activités de l’appareil.
Pour configurer syslog localement sur un commutateur :
set system syslog file system log any notice set system syslog file system log authorization info
Pour configurer un serveur syslog distant (envoi de journaux à un serveur syslog externe) :
set system syslog host 192.168.1.1/24 any notice
Pour configurer le syslog distant tout en définissant l’interface source :
set system syslog host 192.168.1.1/24 source-address 192.168.1.10
SNMP
Le protocole SNMP (Simple Network Management Protocol) permet de surveiller les périphériques réseau tels que les commutateurs, routeurs et autres périphériques IP à partir d’un seul hôte de gestion. Par défaut, ce protocole n’est activé sur aucun routeur MX Series. Cependant, le système d’exploitation exécuté sur ces routeurs, Junos OS Evolved, prend en charge SNMPv1, SNMPv2c et SNMPv3.
Pour activer SNMP, vous devez ajouter les instructions de configuration au niveau de la hiérarchie [modifier]. La configuration minimale pour SNMP est d’activer l’interrogation SNMP.
set snmp community public authorization read-only
Pour configurer l’identité SNMP de base :
set snmp contact "Network Operation Center" set snmp location "California Office - Server Room" set snmp description "Internet Edge Router"
Pour limiter les requêtes SNMP aux ports de gestion approuvés :
set snmp community public clients 192.168.1.100
Pour configurer les interruptions SNMP :
set snmp trap-group NMS targets 192.168.1.100
Pour vérifier si SNMP est exécuté après la configuration :
show snmp statistics
OU
show snmp mib
Télémétrie
Junos Telemetry est la solution de télémétrie de Juniper, développée pour diffuser des données de télémétrie à partir d’un équipement Junos. Les appareils Junos peuvent utiliser l’infrastructure de télémétrie pour diffuser des données réseau en temps réel, telles que les schémas de trafic, l’état des appareils, les taux d’erreur et d’autres mesures qui fournissent des informations sur l’intégrité et le comportement du réseau. Pour plus d’informations, reportez-vous à la section Présentation de la télémétrie Junos. Pour configurer gRPC et vérifier la diffusion en continu de télémétrie, consultez Présentation de l’authentification et de l’autorisation pour les services basés sur gRPC.
Suivez les étapes ci-dessous pour configurer et vérifier la diffusion de la télémétrie en continu sur un équipement Junos à l’aide de gNMI. Configurer l’authentification mutuelle (bidirectionnelle) pour les services gRPC, assurez-vous que vous disposez d’un équipement exécutant Junos et d’une machine Linux ou d’une machine virtuelle pouvant atteindre l’un des ports de trafic de l’équipement Junos.
Lorsque l’authentification mutuelle est configurée :
-
Le serveur fournit son certificat de clé publique lorsque le canal est établi.
-
Le client utilise le certificat d’AC racine du serveur pour authentifier le serveur.
-
Le client fournit également son certificat lorsqu’il se connecte au serveur, et le serveur valide le certificat. Si la validation du certificat réussit, le client est autorisé à passer des appels.
-
Obtenez des certificats X.509 (paires d’autorité de certification racine du serveur et de clés du serveur). Exécutez les commandes suivantes :
user@nms:~$ openssl genrsa -out server.key 4096 user@nms:~$ openssl req -new -x509 -sha256 -key serverRootCA.key -out serverRootCA.crt -days 3650 -subj "/C=US/ST=CA/L=Sunnyvale/O=Juniper/CN=serverRootCA" user@nms:~$ openssl genrsa -out server.key 4096 user@nms:~$ openssl req -new -key server.key -out server.csr -sha256 -subj "/C=US/ST=CA/L=Sunnyvale/O=Juniper/OU=serverRootCAOrg/CN=vJunosEvolved" user@nms:~$ openssl x509 -req -in server.csr -CA serverRootCA.crt -CAkey serverRootCA.key -CAcreateserial -out server.crt -days 365 -extfile server_ssl_cert_ext.cnf
Remarque :Le certificat du serveur gRPC doit définir soit le nom d’hôte du serveur dans le champ Common Name (CN) (le nom d’hôte dans l’exemple de commande ci-dessus utilise vJunosEvolved comme nom d’hôte du serveur), soit il doit définir l’adresse IP du serveur dans le champ Subject Alternative Name (subjectAltName ou SAN) IP Address
du fichier. L’application cliente doit utiliser la même valeur pour établir la connexion au serveur. Si le certificat définit le champ Adresse IP SubjectAltName, le champ Nom commun est ignoré lors de l’authentification.server_ssl_cert_ext.cnfLe
contenu du fichier est :server_ssl_cert_ext.cnfuser@nms:~$ cat server_ssl_cert_ext.cnf #### include -extfile server_ssl_cert_ext.cnf in command to include extensions file #### openssl.cnf extensions = v3_sign [v3_sign] subjectAltName=IP:172.25.11.11
Exécutez les commandes suivantes :
user@nms:~$ openssl genrsa -out clientRootCA.key 4096 user@nms:~$ openssl req -new -x509 -sha256 -key clientRootCA.key -out clientRootCA.crt -days 3650 -subj "/C=US/ST=CA/L=Sunnyvale/O=Juniper/CN=clientRootCA" user@nms:~$ openssl genrsa -out client.key 4096 user@nms:~$ openssl req -new -key client.key -out client.csr -sha256 -subj "/C=US/ST=CA/L=Sunnyvale/O=Juniper/OU=serverRootCAOrg/CN= client-desktop" user@nms:~$ openssl x509 -req -in client.csr -CA clientRootCA.crt -CAkey clientRootCA.key -CAcreateserial -out client.crt -days 365 -extfile server_ssl_cert_ext.cnf
-
Pour activer le service gRPC, exécutez les commandes suivantes :
set system services http servers server grpc-server port 32767 set system services http servers server grpc-server grpc gnoi set system services http servers server grpc-server grpc gnmi set system services http servers server grpc-server tls local-certificate grpc-server
Pour configurer l’authentification mutuelle au lieu de l’authentification serveur uniquement, exécutez les commandes suivantes au niveau de la
edit system services extension-service request-response grpc sslhiérarchie :set system services extension-service request-response grpc ssl port 32767 set system services extension-service request-response grpc ssl local-certificate grpc-server
Pour configurer l’authentification du client gRPC directement dans la configuration du périphérique réseau, exécutez les commandes suivantes :
set system services extension-service request-response grpc ssl mutual-authentication certificate-authority grpc-client-CA set system services extension-service request-response grpc ssl mutual-authentication client-certificate-request require-certificate-and-verify set system services extension-service request-response grpc ssl hot-reloading set system services extension-service request-response grpc ssl use-pki set system services extension-service traceoptions file jsd set system services extension-service traceoptions flag all set security pki ca-profile grpc-client-CA ca-identity clientRootCA set security pki traceoptions file size 10m set security pki traceoptions file files 3
-
Copiez les certificats que vous avez générés sur le client sur le serveur gRPC, exécutez les commandes suivantes :
user@nms:~$ scp -O server.crt lab@172.25.11.11:/var/home/lab user@nms:~$ scp -O server.key lab@172.25.11.11:/var/home/lab user@nms:~$ scp -O clientRootCA.crt lab@172.25.11.11:/var/home/lab
-
Chargez le certificat sur le serveur, exécutez les commandes suivantes :
user@host> request security pki local-certificate load certificate-id grpc-server filename /var/home/lab/server.crt key /var/home/lab/server.key user@host> request security pki ca-certificate load ca-profile grpc-client-CA filename /var/home/lab/client.crt
-
Configurez le compte d’utilisateur pour les services gRPC, exécutez les commandes suivantes :
user@host# set system login user gnoi-user class super-user user@host# set system login user gnoi-user authentication plain-text-password user@host# set system login user gnoi-user full-name "gNOI client"
-
Sélectionnez le chemin du capteur en identifiant les informations que vous souhaitez recevoir de l’appareil. Les informations que vous souhaitez diffuser via Junos télémétrie sont spécifiées à l’aide d’un chemin de capteur télémétrie.
Le chemin d’un capteur de télémétrie est le chemin hiérarchique (défini à l’aide de YANG) vers les données opérationnelles ou les métriques à surveiller. Utilisez l’explorateur de modèles de données Junos YANG de Juniper Networks pour afficher tous les chemins de capteurs pris en charge, leurs feuilles correspondantes et les plates-formes d’appareils qui les prennent en charge.
Par exemple, le chemin du capteur suivant transmet des informations sur l’état administratif et opérationnel des interfaces sur l’équipement :
/junos/system/linecard/interface
-
Téléchargez et installez le client gNMI une fois que vous avez identifié ce que vous souhaitez surveiller, téléchargez, installez et configurez le client gNMI pour tester la diffusion en continu de la télémétrie sur votre appareil. Les équipements Junos prennent en charge différents types d’abonnement, consultez Types d’abonnement pour identifier le type d’abonnement et le mode d’abonnement pour votre réseau. Dans cet exemple, nous avons sélectionné « stream » comme type d’abonnement et « sample » comme mode.
-
Testez la diffusion de la télémétrie en continu sur votre ordinateur Linux, à partir de l’invite de commande, abonnez-vous aux données de télémétrie à l’aide du client gNMI. Exécutez la commande suivante :
gnmic sub -a <device_ip>:<gnmi_port> -u <username> -p <password> --format json subscribe --path <sensor path> --mode stream --stream-mode sample --sample-interval <seconds>Par exemple :
root@controller:~$ gnmic sub -a 172.25.11.11:32767 -u gnoi-user -p gnoi123 --tls-ca serverRootCA.crt --tls-cert client.crt --tls-key client.key --format json subscribe --path /junos/system/linecard/interface --mode stream --stream-mode sample --sample-interval 10sOù :
format- Spécifie le format de sortie utilisé par le client gNMI pour afficher les données de télémétrie. Le format json présente les données de télémétrie en JSON. Les options disponibles incluent JSON, BYTES, PROTO, ASCII et JSON_IETF.sub- Appelle le RPC d’abonnement gNMI pour établir un abonnement de télémétrie avec l’appareilpath -Est le chemin du capteur YANG pour diffuser les données de télémétriemode -Définit le mode d’abonnement. Le mode flux établit un abonnement continu qui envoie des mises à jour de télémétrie au fil du temps.stream-mode -Spécifie le comportement de diffusion en continu pour un abonnement de flux. Le mode exemple envoie des mises à jour à intervalles réguliers.sample-interval-Définit l’intervalle d’échantillonnage pour les abonnements en mode flux lorsque l’exemple en mode flux est configuré.
-
Vérifiez que les données de télémétrie sont bien reçues sur le collecteur. Une sortie réussie confirme que la connexion gNMI est établie et que les données de télémétrie sont transmises par l’appareil.
Exemple de sortie de télémétrie gNMI (format JSON)
{ "source": "172.25.11.11:32767", "subscription-name": "default-1782391912", "timestamp": 1782391912042548677, "time": "2026-06-25T05:51:52.042548677-07:00", "prefix": "interfaces/interface[name=et-0/0/0]", "updates": [ { "Path": "name", "values": { "name": "et-0/0/0" } }, { "Path": "state/hardware-port", "values": { "state/hardware-port": "FPC0:PIC0:PORT0" } }, { "Path": "state/transceiver", "values": { "state/transceiver": "FPC0:PIC0:PORT0:Xcvr0" } }, { "Path": "state/physical-channel", "values": { "state/physical-channel": { "element": [ { "Value": { "JsonVal": "MA==" } }, { "Value": { "JsonVal": "MQ==" } }, { "Value": { "JsonVal": "Mg==" } }, { "Value": { "JsonVal": "Mw==" } } ] } } }, { "Path": "name", "values": { "name": "et-0/0/1" } }, { "Path": "state/hardware-port", "values": { "state/hardware-port": "FPC0:PIC0:PORT1" } }, { "Path": "state/transceiver", "values": { "state/transceiver": "FPC0:PIC0:PORT1:Xcvr0" } }, { "Path": "state/physical-channel", "values": { "state/physical-channel": { "element": [ { "Value": { "JsonVal": "MA==" } }, { "Value": { "JsonVal": "MQ==" } }, { "Value": { "JsonVal": "Mg==" } }, { "Value": { "JsonVal": "Mw==" } } ] } } }, … truncatedLa réception de données de télémétrie en continu indique que le flux de télémétrie gNMI fonctionne correctement sur les équipements Junos.
-
Implémenter sur un collecteur OpenSource ou tiers. Maintenant que vous avez vérifié que votre configuration de télémétrie fonctionne, vous pouvez installer l’un des nombreux collecteurs OpenSource ou tiers disponibles. L’installation et la configuration de ces collecteurs dépassent le cadre de ce guide.
Pour plus d’informations sur la télémétrie Junos, consultez le Guide de l’utilisateur de la télémétrie Junos.