思科模型驱动遥测(Cisco Model Driven Telemetry)的参考資料笔记
首先
这是初学者在组合OSS进行环境搭建时参考的资料笔记。
本次主要总结了在Cisco IOS XE上的操作方法,但IOS-XR和NX-OS也支持,而Telemetry本身也支持其他供应商的产品。
仅供参考,个人将其有用程度分为三个级别(并非评判文章好坏,而是以后自己会再次阅读的标准,请不要介意)。
★★★:必读 ★★:推荐阅读 ★:供您参考
1. Model Driven Programmability的概述
(1) ★★ DevNet 学習ラボ – 引言模型驅動的可編程性
该实验室简明概述了模型驱动的可编程性概念,并清楚地介绍了如何使用NETCONF和RESTCONF。
在NETCONF部分,我们将进行向终端直接发送XML或使用名为ncclient的基于Python的客户端工具进行操作的练习。在RESTCONF部分,我们将通过Postman进行各种CRUD(创建/读取/更新/删除)操作的练习。
如果你稍微接触过Python,但对于模型驱动是什么还不太清楚的人,我认为你应该先从这里开始学习。
2. Model Driven Telemetry 概述(思科资料)

(2) ★★★ CLUS2019 – 在IOS XE上进行应用托管和基于模型的遥测
这不仅是关于IOS XE遥测的资料,同时也是关于应用托管的参考资料。
(顺便说一句,此外还介绍了Catalyst9300、SD-Access、无线技术、IOS XE可编程性、DNA授权和SD-WAN的书籍贡献,非常有用。)



Cisco的各个型号和版本的支持情况也被整理在一起。
(4)★ DevNet学习实验室- IOS-XR流式遥测
在IOS-XR中学习遥测的概述,自己使用Python或C++制作遥测器并进行部署的实践操作。难度较高。
3. Model Driven Telemetry的简介(其他资料)
(1) ★★ Telemetry入门
内容简洁明了。
(2) ★★ 重新考虑由网络创造的价值 ②:备受瞩目的遥测技术—前篇—
(3) ★★ 重新考虑由网络创造的价值 ②:备受瞩目的遥测技术—后篇—
记载了遥测技术的背景、解释以及Netone遥测技术PoC的概要。
4. 实施基于模型驱动的遥测(网络设备端)。
(1) ★★ 可编程配置指南,思科IOS XE直布罗陀16.10.x
在模型驱动的遥测章节中,包括概述和IOS XE的遥测配置方法以及确认命令的说明。
需要注意的是,在使用遥测时,netconf-yang配置是必需的。
※具体的配置示例将在另一篇文章中介绍。
5. 实现模型驱动的遥测的示例
由于组合工具种类繁多,这是个让我个人难以理解的因素,因此我整理了具体的实施示例和使用工具。
(1) ★★★ 使用ncc来尝试IOX XE的模型驱动遥测
使用CiscoDevnet提供的ncc,示例如何通过CLI获取性能信息。由于不涉及Datastore或Dashboard,这是一个简单的例子,对于初学者来说,这是一个很好的起点。
-
- NW Device: Cisco IOS XE
-
- Encoding: XML
-
- Protocol: NETCONF
- Collector: Python (DevNet ncc)
(2) ★ 实时遥测快速入门指南
-
- NW Device: Cisco IOS XE
-
- Encoding: XML
-
- Protocol: NETCONF
-
- Collector: Kafka
- Data Transfer/Datastore/Dashboard: Logstash/Elasticsearch/Kibana (Elastic Stack)
(3) ★★ 附带篇:使用OSS工具创建的遥测入门指南 – 前篇 –
(4) ★★ 附带篇:使用OSS工具创建的遥测入门指南 – 后篇 –
以下为构建步骤的模式。
-
- NW Device: Cisco IOS-XRv、Juniper vMX、Arista vEOS
-
- Encoding: GPB (Cisco)、JSON (Arista)
-
- Protocol: gRPC
-
- Collector: pipeline (Cisco)、ockafka (Arista)
-
- Collector (分散メッセージングシステム): Kafka (Docker)
- Data Transfer/Datastore/Dashboard: Logstash/Elasticsearch/Kibana (Elastic Stack)
(5)★★ bigmuddy-network-telemetry-stacks
由于该工具集能够一键部署,因此可轻松快速地进行试用。该工具集适用于各种不同的情景,并且似乎也支持最近引入的IOS XE的KV-GBP/gRPC。请参考链接:https://github.com/cisco/bigmuddy-network-telemetry-pipeline/issues/16
(6) ★ 通过 Nexus9000v 进行遥测的设置步骤如下。
-
- NW Device: Cisco NX-OS
-
- Encoding: GPB
-
- Protocol: gRPC
-
- Collector: DME (Data Management Engine) Docker Hub / dockercisco/telemetryreceiver
Datastore/Dashboard: Elasticsearch/Kibana
(7) 通过Cisco的Pipeline来尝试使用Telemetry的建立步骤。
-
- NW Device: Cisco IOS-XR
-
- Encoding: KV-GPB
-
- Protocol: TCP
-
- Collector: Pipeline ※Ciscoが公開している
- Datastore/Dashboard: InfluxDB/Grafana
(8) ★★ 了解InfluxDB基础
这是(7)的后续文章。详细解释了InfluxDB的概要以及Influx Query Language(类似于InfluxDB的SQL查询语言)等内容。
(9) ★★★ 试用Telegraf的cisco_telemetry_mdt插件
以下是构建步骤的模式。作为工具集而言,这是目前的最佳模式吗?
-
- NW Device: Cisco IOS XE
-
- Encoding: KV-GPB
-
- Protocol: gRPC
-
- Collector: Telegraf
- Datastore/Dashboard: InfluxDB/Grafana (Telegrafと合わせてTIG Stack)
结束
由于我是个初学者,可能会有误解或考虑不全的地方。如果有任何指正意见,请在评论中告诉我,我将不胜感激。