Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

调试 cRPD 应用程序

故障排除是解决问题的系统性方法。故障排除的目的是确定无法按预期运行的原因以及如何解决问题。

命令行界面

Junos OS 命令行界面 (CLI) 是控制和故障排除路由器硬件、Junos OS、路由协议和网络连接的主要工具。CLI 命令显示来自路由表的信息、特定于路由协议的信息以及源自 traceroute 公用事业的有关网络连接的信息。通过 CLI 支持并启用 RPD 追踪记录功能。跟踪日志文件是存储 /var/log 路径。

您可以使用以下 Junos CLI 命令对 cRPD 进行故障排除:

  • show task:在路由引擎上显示路由协议任务。

  • show task memory detail:显示路由引擎上路由协议任务的内存利用率。

  • show route:显示路由表中的活动条目。

  • show bfd:显示有关主动双向转发检测 (BFD) 会话的信息。

  • show bgp:显示有关所有路由实例的 BGP 摘要信息。

  • show (ospf | ospf3):显示所有路由实例的所有 OSPF 邻接方的标准信息。

  • show interfaces routing:执行路由器诊断。

  • show log:查看系统活动日志,并允许您监控和查看用于性能监控、故障排除和调试的信息。

  • show krt:监控 KRT 队列及其状态。

  • show programmable-rpd:列出连接到可编程路由协议进程 (prpd) 服务器的客户端。prpd 为程序路由系统提供公共 API,使用户能够直接访问 API 来自定义、创建和修改其网络行为。

  • ip monitor:监控到 Linux FIB 的路由以及接口事件和网络链路消息的安装。

  • tcpdump:捕获进出控制平面的网络流量。

  • netstat:监控插槽。

  • request support information:显示用于故障排除的支持信息。

故障处理

当 rpd 由于某个问题而崩溃时,rpd 进程会自动重新启动。要手动从故障中恢复,可以实施以下 CLI 命令层次结构来处理故障:

  • restart routing:重新启动 rpd。

  • clear bgp:清除 BGP 会话。

  • deactivate:停用 CLI 配置。

  • activate:激活 CLI 配置。

容器故障排除

当 cRPD 部署为 docker 容器时,您可以实施各种 docker 命令,以在容器级别监控和故障排除问题。

  • docker ps:列出活动容器及其状态。

  • docker stats:持续监控资源利用率。

  • docker logs:提取容器日志,以防容器意外终止。

  • docker stop:将 Docker 从当前状态阻止。

  • docker start:重新启动 Docker 容器。

验证 Docker

  1. 使用命令验证已安装的 docker version Docker 引擎版本。

    root@ubuntu-vm18:~# docker version

  2. 查看系统中的软硬件信息。

    root@ubuntu-vm18:~# uname -a

  3. 查看 ubuntu 版本。

    root@ubuntu-vm18:~# lsb_release -a

查看核心文件

目的

生成核心文件后,您可以在 /var/crash 中找到输出。生成的核心文件存储在托管 Docker 容器的系统上。

您还可以使用 ping 和 ping6 检查 shell 模式下的可访问性。

行动

列出核心文件:

  1. 从 CLI 环境退出以返回到主机unix shell。

    user@host> start shell

  2. 将目录更改为 /var/crash

    root@ubuntu-vm18$ cd /var/crash

    root@ubuntu-vm18$ ls -l

  3. 运行命令以识别核心文件的位置:

    root@ubuntu-vm18$ sysctl kernel.core_pattern

  4. 验证在崩溃时创建的任何核心文件。

配置 Syslog

系统日志默认启用,消息存储在存储在本地路由引擎上的 /var/log/消息 文件中。

要配置远程系统日志:

  1. 访问 cRPD Linux shell。
  2. 打开 /etc/rsyslog.conf 文件。
  3. 添加以下设施信息:

    *.* @<IP address>:<port>

    其中:<IP 地址>是远程系统日志服务器的 IP 地址。

  4. 保存文件。
  5. 使用以下命令重新启动系统日志:

    root@crpd1# service rsyslog restart

要查看日志消息:

  1. 您可以使用以下命令查看日志消息:

    root@crpd1> show log messages

显示混淆 ($9$) 或加密 ($8$) 密码的纯文本版本

您可以使用以下命令显示配置文件中存在的模糊处理 ($9$) 或加密 ($8$) 密码的纯文本版本:

root@crpd1> request system decrypt password

有关更多信息,请参阅 请求系统解密密码