01-gRPC命令
本章节下载: 01-gRPC命令 (388.90 KB)
目 录
1.1.2 grpc cpu-usage max-percent
1.3.1 destination-group (subscription view)
1.3.2 destination-group (telemetry view)
1.3.3 display telemetry sensor-path
1.3.11 json row-timestamp enable
1.3.15 sensor-group (subscription view)
1.3.16 sensor-group (telemetry view)
display grpc命令用来显示gRPC的相关信息。
【命令】
display grpc [ verbose ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
verbose:显示gRPC的详细信息。不指定该参数时,将显示gRPC的概要信息。
【举例】
# 显示gRPC的概要信息。
<Sysname> display grpc
gRPC status : Enabled
gRPC CPU usage max percent : 20
PKI domain : grpc
Current-time: 2020-05-20T04:12:48.119
------------Dial-in mode information------------
gRPC server port: 50052
gRPC server compression: None
Session idle-timeout: 10 minutes
Session count: 1
ID IP Address:Port UserName
1 192.1.11.254:53030 test
------------Dial-out mode information-----------
Sensor group count: 10
Sensor path count: 70
Destination group count: 5
Destination count: 4
Subscription count: 2
Connection ID: 1
IP address:Port: 192.1.1.254:11111
Encoding: JSON
Status: Connected
表1-1 display grpc命令显示信息描述表
字段 |
描述 |
gRPC status |
gRPC功能状态: · Enabled:表示gRPC功能处于开启状态 · Disabled:表示gRPC功能处于关闭状态 |
gRPC CPU usage max percent |
gRPC的CPU最大占用率,单位为百分比 未配置grpc cpu-usage max-percent命令时,本字段不显示 |
PKI domain |
设备和采集器建立gRPC连接时引用的PKI域 未配置grpc pki domain命令时,本字段显示为“--” |
Current-time |
系统当前时间 |
Dial-in mode information |
Dial-in模式相关信息 |
gRPC server port |
gRPC服务使用的端口号 |
gRPC server compression |
gRPC服务器使用的数据压缩方式: · GZIP:gzip压缩方式 · None:不压缩数据 |
Session idle-timeout |
gRPC会话超时时间,单位为分钟 |
Session count |
gRPC会话数量 |
ID |
gRPC会话ID |
IP Address:Port |
客户端的IP地址和端口号 |
UserName |
用户名 |
Dial-out mode information |
Dial-out模式相关信息 |
Sensor group count |
传感器组的数量 |
Sensor path count |
采样路径的数量 |
Destination group count |
目标组的数量 |
Destination count |
采集器的数量 |
Subscription count |
订阅的数量 |
Connection ID |
设备与采集器建立的连接的ID |
IP address:Port |
采集器的IP地址和端口号 |
Domain name:Port |
采集器的域名(以及第一个路由可达的IP地址,不存在该IP地址时显示为“--”)和端口号 |
Encoding |
订阅报文的编码方式 · JSON:对上送数据使用JSON编码格式 · GPB:对上送数据使用GPB编码格式 |
Status |
设备与采集器的连接通道状态,取值包括: · Init:通道正在初始化 · Idle:通道闲置 · Connecting:通道正在连接 · Connected:通道已连接 · Transient failure:通道暂时故障,正在尝试恢复 · Shutdown:通道因故障关闭 |
# 显示gRPC的详细信息。
<Sysname> display grpc verbose
gRPC status : Enabled
gRPC CPU usage max percent : 20
PKI domain : grpc
Current-time: 2020-05-20T04:12:44.346
------------Dial-in mode information------------
gRPC server port: 50052
gRPC server compression: None
Session idle-timeout: 10 minutes
Session count: 1
Session ID: 1
User name: test
Login time:2020-05-19 16:40:16 Idle time : 3 mins 41 s
Client IP address : 192.1.11.254:53030
Received RPCs : 39 Received erroneous RPCs : 6
Received subscription: 0 Sent notifications: 0
------------Dial-out mode information-----------
Sensor group count: 10
Sensor path count: 70
Destination group count: 5
Destination count: 4
Subscription count: 1
Subscription s
Subscription mode: non-gNMI
DSCP value: 0
Source-address or interface: Not configured
Telemetry data model: 2-layer
Encoding: GPB
Compression: None
TimeStamp: Common
Sensor group: s
Sampling interval: N/A
Sampling type Effective sampling interval Sensor path
...
destination-group: d
Start-time: 2020-05-20T03:38:05.833
IP:Port: 1.1.1.1:50051
VPN: N/A
Periodic sampling statistics:
Effective count: 272
Sent successfully: 0 Failed: 68
Event-triggered statistics:
Effective count: 0
Sent successfully: 0 Failed: 0
Queued packets/Queue size: 204/1000
Dropped: 0
Last error: Channel(Connecting)
...
表1-2 display grpc verbose命令显示信息描述表
字段 |
描述 |
gRPC status |
gRPC功能状态: · Enabled:表示gRPC功能处于开启状态 · Disabled:表示gRPC功能处于关闭状态 |
gRPC CPU usage max percent |
gRPC的CPU最大占用率,单位为百分比 未配置grpc cpu-usage max-percent命令时,本字段不显示 |
PKI domain |
设备和采集器建立gRPC连接时引用的PKI域 未配置grpc pki domain命令时,本字段显示为“--” |
Current-time |
系统当前时间 |
Dial-in mode information |
Dial-in模式相关信息 |
gRPC server port |
gRPC服务使用的端口号 |
gRPC server compression |
gRPC服务器使用的数据压缩方式: · GZIP:gzip压缩方式 · None:不压缩数据 |
Session idle-timeout |
gRPC会话超时时间,单位为分钟 |
Session count |
gRPC会话数量 |
Session ID |
gRPC会话ID |
User name |
用户名 |
Login time |
登录时间 |
Idle time |
gRPC会话达到超时前的剩余空闲时间,0表示不超时 |
Client IP address |
客户端的IP地址和端口号 |
Received RPCs |
设备接收到的gRPC请求报文数量 |
Received erroneous RPCs |
设备接收到的错误gRPC请求报文数量 |
Received subscription |
设备接收到的gRPC订阅请求报文数量 |
Sent notifications |
设备上报通知的数量 |
Dial-out mode information |
Dial-out模式相关信息 |
Sensor group count |
传感器组的数量 |
Sensor path count |
采样路径的数量 |
Destination group count |
目标组的数量 |
Destination count |
采集器的数量 |
Subscription count |
订阅的数量 |
Subscription |
订阅的名称 |
Subscription mode |
订阅类型,取值包括: · gNMI:gNMI模式的订阅 · non-gNMI :普通订阅 |
Push mode |
gNMI模式的订阅的采样数据推送模式,取值包括: · Condition-triggered:条件触发推送模式 · Periodic and Event-triggered:周期采样和事件触发采样推送模式 |
DSCP value |
设备发送订阅报文的DSCP优先级 |
Source-address or interface |
设备发送订阅报文的源地址或源接口 取值为Not configured时表示未配置源地址和源接口 |
Telemetry data model |
gRPC使用的Telemetry数据模型,取值包括: · 2-layer:二层Telemetry数据模型 · 3-layer:三层Telemetry数据模型 |
Encoding |
订阅报文的编码方式 · JSON:对上送数据使用JSON编码格式 · GPB:对上送数据使用GPB编码格式 |
Compression |
对订阅报文使用的数据压缩方式: · GZIP:gzip压缩方式 · None:不压缩数据 |
TimeStamp |
订阅报文的JSON格式业务数据的打时间戳方式,取值包括: · Common:按订阅报文打时间戳 · Row:按行打时间戳 |
Sensor group |
传感器组的名称 |
Sampling interval |
数据采样和推送周期 对于事件触发类型的采样路径,该字段的取值始终为0,表示设备不会周期进行数据采样 |
Sampling type |
采样路径的类型,取值包括: · Event-triggered:由事件触发采样 · Periodic:按固定周期采样 |
Effective sampling interval |
实际生效的数据采样和推送周期 |
Sensor path |
采样路径 |
Destination-group |
目标组的名称 |
Start-time |
gRPC连接建立的时间 |
IP:Port |
采集器(gRPC服务器)的IP地址和端口号 |
Domain name:Port |
采集器的域名(以及第一个路由可达的IP地址)和端口号 |
VPN |
采集器所属VPN实例的名称 N/A表示未指定VPN实例,采集器位于公网中 |
Periodic sampling statistics |
周期采样的信息统计 |
Event-triggered statistics |
事件触发采样的信息统计 |
Effective count |
有效采集次数,不包括采集到空报文的次数 |
Sent successfully |
发送成功的报文数量 |
Failed |
发送失败的报文数量 |
Queued packets/Queue size |
缓存待发送的报文数量/缓存队列大小 |
Dropped |
因缓存队列满而丢弃的报文数量 |
Last error |
最近一次的错误信息 · --:表示无错误信息 · VPN doesn’t exist:VPN不存在 · PKI failed:gRPC连接引用的PKI出错,例如其中的证书失效 · Channel (reason):gRPC通道告警,reason取值包括: ¡ Init:通道正在初始化 ¡ Idle:通道闲置 ¡ Connecting:通道正在连接 ¡ Transient failure:通道暂时故障,正在尝试恢复 ¡ Shutdown:通道因故障关闭 |
grpc cpu-usage max-percent命令用来配置gRPC的CPU最大占用率。
undo grpc cpu-usage max-percent命令用来恢复缺省情况。
【命令】
grpc cpu-usage max-percent percentage
undo grpc cpu-usage max-percent
【视图】
系统视图
【缺省情况】
gRPC没有CPU占用率的限制。
【缺省用户角色】
network-admin
【参数】
percentage:CPU最大占用率,取值范围为1~50,单位为百分比。
【使用指导】
gRPC功能在采样数据时可能会占用大量CPU资源,为避免影响其他业务运行,可以配置gRPC的CPU最大占用率,使gRPC的CPU占用率超过配置值时,设备中止采样,等CPU占用率降低后再继续采样。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置gRPC的CPU最大占用率为39%。
<Sysname> system-view
[Sysname] grpc cpu-usage max-percent 39
grpc data-model命令用来配置gRPC使用的Telemetry数据模型。
undo grpc data-model命令用来恢复缺省情况。
【命令】
grpc data-model { 2-layer | 3-layer }
undo grpc data-model
【缺省情况】
设备使用二层Telemetry数据模型上送数据。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
2-layer:使用二层Telemetry数据模型上送数据。
3-layer:使用三层Telemetry数据模型上送数据。
【使用指导】
本命令目前仅用于gRPC Dial-out模式。
设备使用二层Telemetry数据模型上送数据时,不支持对上送数据使用GPB编码格式(encoding gpb)。
关于Telemetry数据模型的介绍,请参见“Telemetry配置指导”中的“gRPC”。
【举例】
# 配置设备使用三层Telemetry数据模型上送数据。
<Sysname> system-view
[Sysname] grpc data-model 3-layer
【相关命令】
· encoding
grpc enable命令用来开启gRPC功能。
undo grpc enable命令用来关闭gRPC功能。
【命令】
grpc enable
undo grpc enable
【缺省情况】
gRPC功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
只有开启gRPC功能后,才能进行gRPC相关的配置。
如果关闭gRPC功能,所有gRPC相关配置都会被删除。
【举例】
# 开启gRPC功能。
<Sysname> system
[Sysname] grpc enable
grpc pki domain命令用来配置设备和采集器建立gRPC连接时引用的PKI域。
undo grpc pki domain命令用来恢复缺省情况。
【命令】
grpc pki domain domain-name
undo grpc pki domain
【缺省情况】
设备和采集器建立gRPC连接时不会引用PKI域。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
domain-name:PKI域名,为1~31个字符的字符串,不区分大小写。
【使用指导】
缺省情况下,设备和采集器建立的gRPC连接是非加密的。配置本命令引用PKI域后,设备和采集器会基于TLS(Transport Layer Security,传输层安全)协议进行通道加密和双向证书认证,从而提高gRPC通信的安全性。
指定的PKI域必须存在,并且PKI域中包含完整的证书和密钥。关于PKI的配置,请参见“安全配置指导”中的“PKI”。
指定PKI域后,gRPC功能将重启,与采集器的连接将短暂断开。Dial-in模式下,采集器需要重新发送连接请求才能继续访问;Dial-out模式下,设备会自动连接采集器。
【举例】
# 配置设备和采集器建立gRPC连接时引用的PKI域为grpc_test。
<Sysname> system-view
[Sysname] grpc pki domain grpc_test
grpc compression命令用来配置gRPC服务器的数据压缩方式。
undo grpc compression命令用来恢复缺省情况。
【命令】
grpc compression gzip
undo grpc compression
【缺省情况】
gRPC服务器不压缩数据。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
gzip:gzip(GNU Zip)无损压缩方式。
【使用指导】
通过配置gRPC服务器的数据压缩方式,可以在不影响数据完整性的情况下减少网络流量。
修改gRPC服务器的数据压缩方式后,gRPC服务将重启,正在访问的gRPC客户端将被断开,gRPC客户端需要重新发送连接请求才能继续访问。
【举例】
# 配置gRPC服务器的数据压缩方式为gzip。
<Sysname> system
[Sysname] grpc compression gzip
grpc idle-timeout命令用来配置gRPC会话超时时间。
undo grpc idle-timeout命令用来恢复缺省情况。
【命令】
grpc idle-timeout minutes
undo grpc idle-timeout
【缺省情况】
gRPC会话超时时间为5分钟。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
minutes:表示gRPC会话超时时间,取值范围为0~30,单位为分钟。0表示设备不会因为超时自动断开用户连接。
【使用指导】
用户登录后,如果在超时时间内设备和用户之间没有gRPC报文交互,则超时时间到达时设备会自动断开该用户的连接。
【举例】
# 配置gRPC会话超时时间为6分钟。
<Sysname> system
[Sysname] grpc idle-timeout 6
grpc log dial-in gnmi命令用来开启gRPC Dial-in模式的gNMI类操作日志功能。
undo grpc log dial-in gnmi命令用来关闭gRPC Dial-in模式的gNMI类操作日志功能。
【命令】
grpc log dial-in gnmi { all | { capabilities | get | set | subscribe }* }
undo grpc log dial-in gnmi { all | { capabilities | get | set | subscribe }* }
【缺省情况】
gRPC Dial-in模式的gNMI Set操作日志功能处于开启状态,其他gNMI类操作日志功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
all:表示输出所有gNMI类操作日志。
capabilities:表示输出gNMI Capabilities操作日志。
get:表示输出gNMI Get操作日志。
set:表示输出gNMI Set操作日志。
subscribe:表示输出gNMI Subscribe操作日志。
【使用指导】
为了管理员定位gRPC问题的需要,可以开启gRPC日志功能,以便记录设备对gRPC报文的处理信息。
设备生成的gRPC日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
多次执行本命令,最终生效的是多次配置的集合。
【举例】
# 配置设备输出gRPC Dial-in模式的gNMI Get操作日志。
<Sysname> system
[Sysname] grpc log dial-in gnmi get
grpc log dial-in rpc命令用来开启gRPC Dial-in模式的RPC(Remote Procedure Call,远程过程调用)类操作日志功能。
undo grpc log dial-in rpc命令用来关闭gRPC Dial-in模式的RPC类操作日志功能。
【命令】
grpc log dial-in rpc { all | { cli | get }* }
undo grpc log dial-in rpc { all | { cli | get }* }
【缺省情况】
gRPC Dial-in模式的RPC类操作日志功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
all:表示输出CLI操作和Get操作的日志。
cli:表示输出CLI操作日志。
get:表示输出Get操作日志。
【使用指导】
为了管理员定位gRPC问题的需要,可以开启gRPC日志功能,以便记录设备对gRPC报文的处理信息。
设备生成的gRPC日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
多次执行本命令,最终生效的是多次配置的集合。
【举例】
# 配置设备输出gRPC Dial-in模式的Get操作的日志。
<Sysname> system
[Sysname] grpc log dial-in rpc get
grpc port命令用来配置gRPC服务的端口号。
undo grpc port命令用来恢复缺省情况。
【命令】
grpc port port-number
undo grpc port
【缺省情况】
gRPC服务的端口号为50051。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
port-number:gRPC服务的端口号,取值范围为1~65535。
【使用指导】
修改端口号后,gRPC服务将重启,正在访问的客户端将被断开,客户端需要重新发送连接请求才能继续访问。
如果指定的端口号因端口被占用等原因无法用于gRPC服务,则系统使用修改前的端口号重启gRPC服务。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置gRPC服务的端口号为50052。
<Sysname> system
[Sysname] grpc port 50052
【相关命令】
· grpc enable
destination-group命令用来配置关联目标组。
undo destination-group命令用来删除关联目标组。
【命令】
destination-group group-name
undo destination-group group-name
【缺省情况】
未配置关联目标组。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
group-name:目标组的名称,为1~31个字符的字符串,区分大小写。
【使用指导】
本命令配置的目标组将会和同一订阅视图下的传感器组自动关联。
本命令指定的目标组需要先在Telemetry视图下使用destination-group命令创建。
同一目标组不支持同时在普通订阅和gNMI模式订阅中使用。
每个订阅可关联的目标组数量上限为5。
【举例】
# 在订阅A中配置关联目标组为collector1。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] destination-group collector1
【相关命令】
· destination-group (telemetry view)
destination-group命令用来创建目标组,并进入目标组视图。如果指定的目标组已经存在,则直接进入目标组视图。
undo destination-group命令用来删除目标组。
【命令】
destination-group group-name
undo destination-group group-name
【缺省情况】
不存在目标组。
【视图】
Telemetry视图
【缺省用户角色】
network-admin
【参数】
group-name:目标组的名称,为1~31个字符的字符串,区分大小写。
【使用指导】
建议系统中创建的目标组数量不超过5个,否则会影响系统性能。
通过destination-group (subscription view)命令将目标组关联到订阅后,如需删除该目标组,请先解除订阅关系。
【举例】
# 创建名为collector1的目标组。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] destination-group collector1
[Sysname-telemetry-destination-group-collector1]
【相关命令】
· destination-group (subscription view)
· subscription
display telemetry sensor-path命令用来显示有最小采样周期的采样路径信息。
【命令】
display telemetry sensor-path
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【使用指导】
传感器组中采样路径的实际采样周期为以下两个值的较大值:
· 该采样路径的最小采样周期(可通过本命令显示的Min Interval(ms)字段查看)。
· 配置sensor-group (subscription view)命令时,为该传感器组指定的sample-interval参数值。
执行本命令后,采样路径信息按照如下顺序显示:
· 业务模块定制了最小采样周期的周期采样类型的采样路径。
· 周期采样类型的采样路径的缺省最小采样周期,不列出具体路径名。
【举例】
# 显示采样路径信息。
<Sysname> display telemetry sensor-path
Sampling Type Min Interval(ms) Sensor Path
Periodic 5000 diagnostic/cpuhistory
Periodic 5000 diagnostic/memories
Periodic 5000 diagnostic/porcessescpuhistory
...
Periodic 1000 (default-interval paths)
表1-3 display telemetry sensor-path显示信息描述表
字段 |
描述 |
Sampling Type |
采样路径的类型,取值包括: · Periodic:按固定周期采样 · Event-triggered:由事件触发采样,本字段暂不支持 |
Min Interval(ms) |
采样路径的最小采样周期,单位为毫秒 |
Sensor Path |
采样路径名称 default-interval paths用来代表所有使用缺省最小采样周期的采样路径 |
【相关命令】
· sensor-group (subscription view)
domain-name命令用来往目标组中添加指定域名的IPv4采集器。
undo domain-name命令用来将指定域名的IPv4采集器从目标组中删除。
【命令】
domain-name domain-name [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
undo domain-name domain-name [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
【缺省情况】
目标组中没有IPv4采集器。
【视图】
目标组视图
【缺省用户角色】
network-admin
【参数】
domain-name:采集器的IPv4地址对应的域名,为1~253个字符的字符串,不区分大小写,字符串中可以包含字母、数字、“-”、“_”和“.”。
port port-number:采集器接收数据的端口号,取值范围为1~65535,缺省值为50051。本参数的值需要和采集器侧的配置一致,否则采集器接收不到相应数据。
vpn-instance vpn-instance-name:采集器所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。指定的VPN实例必须已经存在。如果未指定本参数,则表示采集器位于公网中。
tls:配置设备和本命令配置的采集器建立gRPC连接时使用TLS(Transport Layer Security,传输层安全)加密,该加密方式使用设备出厂自带的证书。缺省情况下,设备和采集器建立的gRPC连接是非加密的。
【使用指导】
当使用域名指定采集器时,需要配置DNS(Domain Name System,域名系统),将采集器的域名解析为IPv4地址,订阅报文才能上送给采集器。关于域名解析的配置,请参见“三层技术-IP业务配置指导”中的“域名解析”。
可在设备上通过display dns host命令查看域名解析信息。如果一个域名对应多个IP地址,则DNS解析该域名得到的第一个路由可达的IP地址将作为订阅报文的上送地址。
多次执行本命令可配置多个采集器。注意:
· 配置本命令时,只要域名、端口号、VPN实例中任意一个属性不同,则被设备视为不同的采集器。
· 对同一采集器多次执行本命令,但是指定或不指定tls参数时,最后一次执行的命令生效。
每个目标组支持配置的采集器数量上限为5。
用户可以在系统视图下通过grpc pki domain命令全局配置TLS加密,也可以在目标组视图下配置与指定采集器之间的TLS加密,且系统视图下的配置优先级较高。
通过destination-group (subscription view)命令将目标组关联到订阅后,如需修改该目标组中的采集器配置,请先解除订阅关系。
【举例】
# 在目标组collector1中配置域名为sample.com的IPv4采集器。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] destination-group collector1
[Sysname-telemetry-destination-group-collector1] domain-name sample.com
【相关命令】
· destination-group (subscription view)
· subscription
· display dns host(三层技术-IP业务命令参考/域名解析)
dscp命令用来配置设备发送的订阅报文的DSCP优先级。
undo dscp命令用来恢复缺省情况。
【命令】
dscp dscp-value
undo dscp
【缺省情况】
设备发送的订阅报文的DSCP优先级为0。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
dscp-value:订阅报文的DSCP优先级,取值范围为0~63。
【使用指导】
DSCP(Differentiated Services Code Point,差分服务编码点)携带在IPv4报文中的ToS字段或者IPv6报文中的Traffic Class字段,用来体现报文自身的优先等级,决定报文传输的优先程度。DSCP优先级的取值越大,报文的优先级越高。
在同一个订阅视图下多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置设备发送的订阅A的报文的DSCP优先级为12。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] dscp 12
encoding命令用来配置上送数据的编码格式。
undo encoding命令用来恢复缺省情况。
【命令】
encoding { gpb | json }
undo encoding
【缺省情况】
上送数据的编码格式为JSON。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
gpb:对上送数据使用GPB编码格式。仅当设备使用三层Telemetry数据模型时,可以对上送数据使用GPB编码格式。
json:对上送数据使用JSON编码格式。
【使用指导】
设备上支持订阅的数据均支持JSON编码格式,可能部分不支持GPB编码格式。当用户配置为GPB编码格式后,不支持GPB编码格式的数据不会上送。
gNMI模式的订阅不支持本功能。
【举例】
# 配置设备使用三层Telemetry数据模型,订阅A的上送数据的编码格式为GPB。
<Sysname> system-view
[Sysname] grpc data-model 3-layer
[Sysname] telemetry
[Sysname-telemetry] subscrption A
[Sysname-telemetry-subscription-A] encoding gpb
【相关命令】
· grpc data-model
grpc log dial-out命令用来开启gRPC Dial-out模式的日志功能。
undo grpc log dial-out命令用来关闭gRPC Dial-out模式的日志功能。
【命令】
grpc log dial-out { all | { event | sample }* }
undo grpc log dial-out { all | { event | sample }* }
【缺省情况】
gRPC Dial-out模式的日志功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
all:表示输出gRPC Dial-out模式的所有类型的日志。
event:表示输出事件触发采样的日志。
sample:表示输出固定周期采样的日志。
【使用指导】
为了管理员定位gRPC问题的需要,可以开启gRPC日志功能,以便记录设备对gRPC报文的处理信息。
设备生成的gRPC日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
gNMI模式的订阅不支持gRPC Dial-out模式的日志功能。
多次执行本命令,最终生效的是多次配置的集合。
【举例】
# 配置设备输出gRPC Dial-out模式的固定周期采样的日志。
<Sysname> system
[Sysname] grpc log dial-out sample
ipv4-address命令用来往目标组中添加IPv4采集器。
undo ipv4-address命令用来将IPv4采集器从目标组中删除。
【命令】
ipv4-address ipv4-address [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
undo ipv4-address ipv4-address [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
【缺省情况】
目标组中没有IPv4采集器。
【视图】
目标组视图
【缺省用户角色】
network-admin
【参数】
ipv4-address:采集器的IPv4地址。
port port-number:采集器接收数据的端口号,取值范围为1~65535,缺省值为50051。本参数的值需要和采集器侧的配置一致,否则采集器接收不到相应数据。
vpn-instance vpn-instance-name:采集器所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。指定的VPN实例必须已经存在。如果未指定本参数,则表示采集器位于公网中。
tls:配置设备和本命令配置的采集器建立gRPC连接时使用TLS加密,该加密方式使用设备出厂自带的证书。缺省情况下,设备和采集器建立的gRPC连接是非加密的。
【使用指导】
多次执行本命令可配置多个采集器。注意:
· 配置本命令时,只要IP地址、端口号、VPN实例中任意一个属性不同,则被设备视为不同的采集器。
· 对同一采集器多次执行本命令,但是指定或不指定tls参数时,最后一次执行的命令生效。
每个目标组支持配置的采集器数量上限为5。
用户可以在系统视图下通过grpc pki domain命令全局配置TLS加密,也可以在目标组视图下配置与指定采集器之间的TLS加密,且系统视图下的配置优先级较高。
通过destination-group (subscription view)命令将目标组关联到订阅后,如需修改该目标组中的采集器配置,请先解除订阅关系。
【举例】
# 在目标组collector1中配置IP地址为192.168.21.21的采集器。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] destination-group collector1
[Sysname-telemetry-destination-group-collector1] ipv4-address 192.168.21.21
【相关命令】
· destination-group (subscription view)
· subscription
ipv6-address命令用来往目标组中添加IPv6采集器。
undo ipv6-address命令用来将IPv6采集器从目标组中删除。
【命令】
ipv6-address ipv6-address [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
undo ipv6-address ipv6-address [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
【缺省情况】
目标组中没有IPv6采集器。
【视图】
目标组视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:采集器的IPv6地址。
port port-number:采集器接收数据的端口号,取值范围为1~65535,缺省值为50051。本参数的值需要和采集器侧的配置一致,否则采集器接收不到相应数据。
vpn-instance vpn-instance-name:采集器所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。指定的VPN实例必须已经存在。如果未指定本参数,则表示采集器位于公网中。
tls:配置设备和本命令配置的采集器建立gRPC连接时使用TLS加密,该加密方式使用设备出厂自带的证书。缺省情况下,设备和采集器建立的gRPC连接是非加密的。
【使用指导】
采集器的IPv6地址不能指定为IPv6链路本地地址。有关IPv6链路本地地址的介绍,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。
多次执行本命令可配置多个采集器。注意:
· 配置本命令时,只要IP地址、端口号、VPN实例中任意一个属性不同,则被设备视为不同的采集器。
· 对同一采集器多次执行本命令,但是指定或不指定tls参数时,最后一次执行的命令生效。
每个目标组支持配置的采集器数量上限为5。
用户可以在系统视图下通过grpc pki domain命令全局配置TLS加密,也可以在目标组视图下配置与指定采集器之间的TLS加密,且系统视图下的配置优先级较高。
通过destination-group (subscription view)命令将目标组关联到订阅后,如需修改该目标组中的采集器配置,请先解除订阅关系。
【举例】
# 在目标组collector1中配置IPv6地址为1::1的采集器。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] destination-group collector1
[Sysname-telemetry-destination-group-collector1] ipv6-address 1::1
【相关命令】
· destination-group (subscription view)
· subscription
ipv6 domain-name命令用来往目标组中添加指定域名的IPv6采集器。
undo ipv6 domain-name命令用来将指定域名的IPv6采集器从目标组中删除。
【命令】
ipv6 domain-name domain-name [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
undo ipv6 domain-name domain-name [ port port-number ] [ vpn-instance vpn-instance-name ] [ tls ]
【缺省情况】
目标组中没有IPv6采集器。
【视图】
目标组视图
【缺省用户角色】
network-admin
【参数】
domain-name:采集器的IPv6地址对应的域名,为1~253个字符的字符串,不区分大小写,字符串中可以包含字母、数字、“-”、“_”和“.”。
port port-number:采集器接收数据的端口号,取值范围为1~65535,缺省值为50051。本参数的值需要和采集器侧的配置一致,否则采集器接收不到相应数据。
vpn-instance vpn-instance-name:采集器所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。指定的VPN实例必须已经存在。如果未指定本参数,则表示采集器位于公网中。
tls:配置设备和本命令配置的采集器建立gRPC连接时使用TLS加密,该加密方式使用设备出厂自带的证书。缺省情况下,设备和采集器建立的gRPC连接是非加密的。
【使用指导】
当使用域名指定采集器时,需要配置DNS,将采集器的域名解析为IPv6地址,订阅报文才能上送给采集器。关于域名解析的配置,请参见“三层技术-IP业务配置指导”中的“域名解析”。
可在设备上通过display dns host命令查看域名解析信息。如果一个域名对应多个IP地址,则DNS解析该域名得到的第一个路由可达的IP地址将作为订阅报文的上送地址。
多次执行本命令可配置多个采集器。注意:
· 配置本命令时,只要域名、端口号、VPN实例中任意一个属性不同,则被设备视为不同的采集器。
· 对同一采集器多次执行本命令,但是指定或不指定tls参数时,最后一次执行的命令生效。
每个目标组支持配置的采集器数量上限为5。
用户可以在系统视图下通过grpc pki domain命令全局配置TLS加密,也可以在目标组视图下配置与指定采集器之间的TLS加密,且系统视图下的配置优先级较高。
通过destination-group (subscription view)命令将目标组关联到订阅后,如需修改该目标组中的采集器配置,请先解除订阅关系。
【举例】
# 在目标组collector1中配置域名为sample.com的IPv6采集器。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] destination-group collector1
[Sysname-telemetry-destination-group-collector1] ipv6 domain-name sample.com
【相关命令】
· destination-group (subscription view)
· subscription
· display dns host(三层技术-IP业务命令参考/域名解析)
json row-timestamp enable命令用来配置订阅报文的JSON格式业务数据按行打时间戳。
undo json row-timestamp enable命令用来恢复缺省情况。
【命令】
json row-timestamp enable
undo json row-timestamp enable
【缺省情况】
订阅报文的JSON格式业务数据按订阅报文打时间戳。
【视图】
订阅视图
【缺省用户角色】
network-admin
【使用指导】
订阅报文的JSON格式业务数据支持按订阅报文打时间戳,或按行打时间戳。以Device业务模块的某订阅报文为例:
· 缺省情况下,按订阅报文打时间戳,每次采样时只给业务数据打一个当前系统的时间戳:
{"Notification":
{"Timestamp":"1639405006926",
"Device":
{"PhysicalEntities":
{"Entity":
[
{"PhysicalIndex":1,
"Chassis":0,
"Slot":65535,
...
{"PhysicalIndex":2,
"Chassis":0,
"Slot":0,
...
· 按行打时间戳时,对每行数据进行采样时都打一个当前系统的时间戳:
{"row":
[{"Timestamp":"1639405006926",
"content":
{"Device":
{"PhysicalEntities":
{"Entity":
[{"PhysicalIndex":1,
"Chassis":0,
"Slot":65535,
...
{"Timestamp":"1639505007890",
"content":
{"Device":
{"PhysicalEntities":
{"Entity":
[{"PhysicalIndex":2,
"Chassis":0,
"Slot":0,
...
gNMI模式的订阅不支持本命令。
设备使用三层Telemetry数据模型时,不支持本命令。
【举例】
# 配置订阅报文的JSON格式业务数据按行打时间戳。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] json row-timestamp enable
protocol命令用来配置设备发送订阅报文的传输协议和数据压缩方式。
undo protocol命令用来恢复缺省情况。
【命令】
protocol grpc compression gzip
undo protocol
【缺省情况】
设备发送订阅报文的传输协议为gRPC,且不压缩数据。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
grpc:订阅报文的传输协议为gRPC。此时传输层使用TCP协议。
compression:对订阅报文进行数据压缩。
gzip:使用gzip无损压缩方式。
【使用指导】
目前,设备发送订阅报文的传输协议仅支持gRPC。
【举例】
# 配置设备发送订阅A的报文的传输协议为gRPC,并指定数据压缩方式为gzip。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] protocol grpc compression gzip
push-mode命令用来配置订阅的采样数据推送模式。
undo push-mode命令用来恢复缺省情况。
【命令】
push-mode condition-triggered
undo push-mode
【缺省情况】
订阅仅支持推送来自周期采样和事件触发采样类型的采样路径的数据。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
condition-triggered:表示条件触发推送模式。该模式下,订阅的传感器组根据一定频率检测采样路径,如果满足推送条件,则采集数据并上送给采集器。
【使用指导】
仅当订阅的传感器组中的采样路径类型为条件触发采样时,需要配置本命令。关于条件触发采样类型的采样路径以及相关的检测频率、推送条件,请联系H3C技术支持。
本命令仅支持在gNMI模式的订阅下配置。
【举例】
# 在gNMI模式的订阅A中配置采样数据的推送模式为条件触发推送模式。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A gnmi
[Sysname-telemetry-subscription-A] push-mode condition-triggered
【相关命令】
· subscription
sensor path命令用来配置采样路径。
undo sensor path命令用来删除采样路径。
【命令】
sensor path path [ selection-nodes node-list ]
undo sensor path path
【缺省情况】
未配置采样路径。
【视图】
传感器组视图
【缺省用户角色】
network-admin
【参数】
path:采样路径,为1~255个字符的字符串,不区分大小写,取值请以设备提示为准。
selection-nodes:表示只把指定节点的数据推送给采集器。如果未指定本参数,则将采样路径下所有节点的数据推送给采集器。
node-list:节点列表,表示多个节点的名称。表示方式为node-list = { node-name }&<1-24>。其中,node-name为节点名称,为字符串,取值请以设备提示为准;节点名称之间用空格分隔;&<1-24>表示前面的参数最多可以输入24次。关于节点的详细信息,请参见采样路径对应模块的NETCONF XML API手册的Columns章节。
【使用指导】
selection-nodes参数仅在普通传感器组视图下支持。
多次执行本命令可配置多个采样路径。多次执行本命令且指定的采样路径相同时,最后一次执行的命令生效。
设备支持配置的采样路径数量上限为128。
对于设备不支持的采样路径,系统将提示用户不支持。
通过sensor-group (subscription view)命令将传感器组关联到订阅后,如需修改该传感器组的采样路径配置,请先解除订阅关系。
【举例】
# 在普通传感器组test中配置采样路径为ifmgr/devicecapabilities。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] sensor-group test
[Sysname-telemetry-sensor-group-test] sensor path ifmgr/devicecapabilities
# 在普通传感器组test中配置采样路径为ifmgr/statistics,且只把该采样路径下InRate和OutRate节点的数据推送给采集器。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] sensor-group test
[Sysname-telemetry-sensor-group-test] sensor path ifmgr/statistics selection-nodes inrate outrate
【相关命令】
· sensor-group (subscription view)
· sensor-group (telemetry view)
· subscription
sensor-group命令用来配置关联传感器组。
undo sensor-group命令用来删除关联传感器组。
【命令】
sensor-group group-name [ sample-interval [ msec ] interval | suppress-time suppress-time ]
undo sensor-group group-name
【缺省情况】
未配置关联传感器组。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
group-name:传感器组的名称,为1~31个字符的字符串,区分大小写。
sample-interval:配置传感器组以固定的周期采样并推送数据。如果未指定该参数,则表示由事件触发数据采样,传感器组不进行周期采样。
msec:表示配置的周期为毫秒级。不指定该参数时,表示配置的周期为秒级。
interval:数据采样和推送周期。
· 未指定msec参数时,取值范围为1~86400,单位为秒。
· 指定msec参数时,取值范围为100~900,且为100的倍数,单位为毫秒。
suppress-time suppress-time:配置条件触发推送模式下的检测频率抑制时间。当采样数据满足推送条件并上送采集器后,在抑制时间内不会重复上报。suppress-time为抑制时间,取值范围为1~300,单位为秒,缺省值为60。
【使用指导】
本命令配置的传感器组将会和同一订阅视图下的目标组自动关联。
本命令指定的传感器组需要先在Telemetry视图下使用sensor-group命令创建。
对于gNMI模式的订阅,本命令仅支持指定gNMI模式的传感器组;对于普通订阅,本命令仅支持指定普通传感器组。
根据传感器组中的采样路径的类型,关联该传感器组的订阅的配置需要符合表1-4所示的条件,指定类型的采样路径才能生效。
传感器组的采样路径类型 |
订阅视图下是否配置push-mode condition-triggered |
订阅视图下sensor-group命令是否指定sample-interval参数 |
订阅视图下sensor-group命令是否允许指定suppress-time参数 |
周期采样 |
× |
√ |
× |
事件触发采样 |
× |
× |
× |
条件触发采样 |
√ |
× |
√ |
传感器组与订阅中的目标组关联后,如需修改该传感器组的sample-interval或suppress-time参数,请先解除订阅关系。
【举例】
# 在订阅A中配置关联传感器组为test,数据采样和推送周期为10秒。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] sensor-group test sample-interval 10
【相关命令】
· push-mode
· sensor path
· sensor-group (telemetry view)
sensor-group命令用来创建传感器组,并进入传感器组视图。如果指定的传感器组已经存在,则直接进入传感器组视图。
undo sensor-group命令用来删除传感器组。
【命令】
sensor-group group-name [ gnmi ]
undo sensor-group group-name
【缺省情况】
不存在传感器组。
【视图】
Telemetry视图
【缺省用户角色】
network-admin
【参数】
group-name:传感器组的名称,为1~31个字符的字符串,区分大小写。
gnmi:创建gNMI模式的传感器组。如果未指定本参数,则表示创建普通传感器组。
【使用指导】
通过本命令进入已经创建的gNMI模式的传感器组视图时,不需要携带gnmi关键字。
设备支持配置的传感器组数量上限为32。
通过sensor-group (subscription view)命令将传感器组关联到订阅后,如需删除该传感器组,请先解除订阅关系。
【举例】
# 创建名为test的普通传感器组。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] sensor-group test
[Sysname-telemetry-sensor-group-test]
【相关命令】
· sensor-group (subscription view)
· subscription
source-address命令用来配置设备发送订阅报文的源地址。
undo source-address命令用来恢复缺省情况。
【命令】
source-address { ipv4-address | interface interface-type interface-number | ipv6 ipv6-address }
undo source-address
【缺省情况】
设备使用路由出接口的主IP地址作为发送订阅报文的源IP地址。
【视图】
订阅视图
【缺省用户角色】
network-admin
【参数】
ipv4-address:设置设备发送订阅报文的源IPv4地址。
interface interface-type interface-number:设置设备发送订阅报文的源接口,interface-type interface-number表示接口类型和接口编号,目前仅支持LoopBack接口。此接口下配置的主IPv4地址即为发送报文的源地址。如果该接口没有配置主IPv4地址,则设备使用路由出接口的主IP地址作为发送订阅报文的源IP地址。
ipv6 ipv6-address:设置设备发送订阅报文的源IPv6地址。
【使用指导】
多次执行本命令,最新一次执行的命令生效。
当设备发送订阅报文的源地址发生变化时,设备将会重新连接gRPC服务器。
【举例】
# 配置设备发送订阅A的报文的源IPv4地址为169.254.1.1。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A] source-address 169.254.1.1
subscription命令用来创建订阅,并进入订阅视图。如果指定的订阅已经存在,则直接进入订阅视图。
undo subscription命令用来删除订阅。
【命令】
subscription subscription-name [ gnmi ]
undo subscription subscription-name
【缺省情况】
不存在订阅。
【视图】
Telemetry视图
【缺省用户角色】
network-admin
【参数】
subscription-name:订阅的名称,为1~31个字符的字符串,区分大小写。
gnmi:创建gNMI模式的订阅。如果未指定本参数,则表示创建普通订阅。
【使用指导】
通过本命令进入已经创建的gNMI模式的订阅视图时,不需要携带gnmi关键字。
设备支持配置的订阅数量上限为10。
【举例】
# 创建名为A的订阅。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry] subscription A
[Sysname-telemetry-subscription-A]
【相关命令】
· destination-group (subscription view)
· sensor-group (subscription view)
telemetry命令用来从系统视图进入Telemetry视图。
【命令】
telemetry
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
进入Telemetry视图后,可以配置Telemetry功能的相关参数。
【举例】
# 从系统视图进入Telemetry视图。
<Sysname> system-view
[Sysname] telemetry
[Sysname-telemetry]
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!