FRRouting / frr

The FRRouting Protocol Suite
https://frrouting.org/
Other
3.39k stars 1.26k forks source link

Error messages when rebooting frr 9.1 with default configuration of bgp #15494

Closed anfedotov closed 8 months ago

anfedotov commented 9 months ago

Description

When running systemctl restart frr.service and default configuration bgp, I get an error messages in syslog and journald.

If string log syslog informational is deleted from default config, messages will be not appear. Help me please to understand why these error messages are appear.

Version

FRRouting 9.1 (Core-router) on Linux(6.1.0-17-amd64).
Copyright 1996-2005 Kunihiro Ishiguro, et al.
configured with:
    '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--libexecdir=${prefix}/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--localstatedir=/var/run/frr' '--sbindir=/usr/lib/frr' '--sysconfdir=/etc/frr' '--with-vtysh-pager=/usr/bin/pager' '--libdir=/usr/lib/x86_64-linux-gnu/frr' '--with-moduledir=/usr/lib/x86_64-linux-gnu/frr/modules' '--disable-dependency-tracking' '--enable-rpki' '--disable-scripting' '--enable-pim6d' '--with-libpam' '--enable-doc' '--enable-doc-html' '--enable-snmp' '--enable-fpm' '--disable-protobuf' '--disable-zeromq' '--enable-ospfapi' '--enable-bgp-vnc' '--enable-multipath=256' '--enable-user=frr' '--enable-group=frr' '--enable-vty-group=frrvty' '--enable-configfile-mask=0640' '--enable-logfile-mask=0640' 'build_alias=x86_64-linux-gnu' 'PYTHON=python3'
Core-router#

How to reproduce

When running systemctl restart frr.service or systemctl stop frr.service and default configuration bgp

Expected behavior

no error messages in during shutdown frr.service with default configuration bgp

Actual behavior

When running systemctl restart frr.service and default configuration bgp, I get an error messages in syslog and journald:

root@Core-router:~# journalctl -u frr.service
...
Mar 06 00:57:01 Core-router systemd[1]: Stopping frr.service - FRRouting...
Mar 06 00:57:01 Core-router watchfrr[3159]: [NG1AJ-FP2TQ] Terminating on signal
...
Mar 06 00:57:01 Core-router mgmtd[3174]: [X3G8F-PM93W] BE-adapter: mgmt_msg_read: got EOF/disconnect
Mar 06 00:57:01 Core-router zebra[3169]: [N5M5Y-J5BPG][EC 4043309121] Client 'static' (session id 0) encountered an error and is shutting down.
Mar 06 00:57:01 Core-router zebra[3169]: [KQB7H-NPVW9] ../zebra/zebra_ptm.c:1333 failed to find process pid registration
....

Additional context

I have following versions and configs:

Core-router# sh run
Building configuration...

Current configuration:
!
frr version 9.1
frr defaults traditional
hostname Core-router
log syslog informational
service integrated-vtysh-config
!
end
Core-router#
...
root@Core-router:~# uname -a
Linux Core-router 6.1.0-17-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) x86_64 GNU/Linux
root@Core-router:~# dpkg -l | grep "liby\|frr"
ii  frr                           9.1-0~deb12u1                  amd64        FRRouting suite of internet protocols (BGP, OSPF, IS-IS, ...)
ii  frr-pythontools               9.1-0~deb12u1                  all          FRRouting suite - Python tools
ii  libyang2:amd64                2.1.128+b1+sterra1             amd64        parser toolkit for IETF YANG data modeling - runtime

Checklist

ton31337 commented 9 months ago

Are you able to start the daemons without systemd? Like running first /usr/lib/frr/mgmtd and see if you have any other issues?

anfedotov commented 9 months ago

Thanks for your answer. If start deamons without systemd, error messages will be not appear.

root@Hub1:~# /usr/lib/frr/mgmtd -d
root@Hub1:~# /usr/lib/frr/zebra -d
root@Hub1:~# /usr/lib/frr/bgpd -d
....
root@Hub1:~# pkill zebra
root@Hub1:~# pkill bgpd
root@Hub1:~# pkill mgmtd

But if start => stop watchfrr.sh (/usr/lib/frr/watchfrr.sh start usr/lib/frr/watchfrr.sh stop), errors messages will appear int the journalctl.

ton31337 commented 8 months ago

Can you show show logging? It would tell the logging level and explain why you see those logs. Syslog is disabled in your case, that's why you don't see error/warning/etc. messages until log syslog ... is not enabled.