网络自动化运维教程 课件 项目7、8 使用Telemetry实时监控CPU和内存使用率、使用RESTCONF协议配置网络_第1页
网络自动化运维教程 课件 项目7、8 使用Telemetry实时监控CPU和内存使用率、使用RESTCONF协议配置网络_第2页
网络自动化运维教程 课件 项目7、8 使用Telemetry实时监控CPU和内存使用率、使用RESTCONF协议配置网络_第3页
网络自动化运维教程 课件 项目7、8 使用Telemetry实时监控CPU和内存使用率、使用RESTCONF协议配置网络_第4页
网络自动化运维教程 课件 项目7、8 使用Telemetry实时监控CPU和内存使用率、使用RESTCONF协议配置网络_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目7使用Telemetry实时监控CPU和内存使用率项目7使用Telemetry实时监控CPU和内存使用率7.1Telemetry概述7.2Telemetry技术原理7.3任务实施7.1Telemetry概述Telemetry也叫NetworkTelemetry(网络遥测技术),是一项远程的从物理设备或虚拟设备上高速采集数据的技术。设备通过推模式(PushMode)周期性的主动向采集器上送设备的接口流量统计、CPU或内存数据等信息,相对传统拉模式(PullMode)的一问一答式交互,提供了更实时更高速的数据采集功能。1Telemetry简介7.1Telemetry概述Telemetry采用推模式工作,YANG模型定义结构,精度可以达到亚秒级。2Telemetry技术特点7.1Telemetry概述Telemetry技术采用推模式及时获取丰富的监控数据,可以实现网络故障的快速定位,提供统一的数据流格式,简化采集器分析监测数据的难度,从而解决传统网络运维问题。采集数据的精度高,且类型十分丰富,可以充分反映网络状况。在复杂的网络中,能够快速地定位故障,达到秒级,甚至亚秒级的故障定位速度。仅需配置一次订阅,设备就可以持续上报数据,减轻了设备处理查询请求的压力3Telemetry技术优势7.1Telemetry概述4Telemetry网络模型Telemetry网络模型分广义和狭义两种:广义Telemetry:包括采集器、分析器、控制器和设备共同构成的一个自闭环系统。狭义Telemetry:指设备采样数据上送给采集器的功能。广义Telemetry网络模型项目7使用Telemetry实时监控CPU和内存使用率7.1Telemetry概述7.2Telemetry技术原理7.3任务实施7.2Telemetry技术原理狭义的Telemetry框架可以分为四个模块:数据源、数据生成、数据订阅和数据推送。1Telemetry框架7.2Telemetry技术原理Telemetry数据源定义了可被获取的数据。Telemetry采用YANG模型定义设备可获取数据源。支持各类YANG模型,包括Huawei-YANG、IETF-YANG和OpenConfig-YANG2Telemetry数据源7.2Telemetry技术原理Telemetry数据订阅定义了数据发送端和数据获取端交互关系。3Telemetry数据订阅7.2Telemetry技术原理当用户想长时间、周期性地监控某个端口的端口流量趋势时,可以配置Telemetry静态订阅功能。4Telemetry静态订阅7.2Telemetry技术原理5Telemetry动态订阅当用户对某些接口产生兴趣,想监控一段时间时,可以配置Telemetry动态订阅功能。在不感兴趣时,断开连接即可,订阅会自动取消且不会配置恢复,从而避免对设备造成长期负载,也简化了用户和设备的交互。7.2Telemetry技术原理6采样数据设备侧将采样数据按照编码格式进行编码,并且使用传输协议进行数据传输。设备侧采样数据主要包括如下3个方面的内容。原始数据:Telemetry采样的原始数据可来自网络设备的转发平面、控制平面和管理平面,目前支持采集设备的接口流量统计、CPU或内存数据等。数据模型:Telemetry基于YANG模型采集数据。YANG用于设计可以作为各种传输协议操作的配置数据模型、状态数据模型、RPC模型和通知机制等。HUAWEI-YANG为测试特性,不能用于商用场景。性能指标:Telemetry技术目前支持在特定的采样传感器路径下采集指定的数据。7.2Telemetry技术原理7采样路径用户通过采样路径来描述自己需要采集的数据。设备上的数据已经通过YANG模型描述说明,基于YANG模型和它的子树路径可以构成采样路径。例如采集CPU数据的路径为huawei-debug:debug/cpu-infos/cpu-info。冒号之前的huawei-ifm表示YANG模型名称,后续的debug/...表示YANG模型内的节点名称,各层节点名称通过正斜线衔接在一起。7.2Telemetry技术原理8采样周期采样周期是指周期性地主动向采集器上送设备的接口流量统计、CPU或内存数据等。用户配置静态订阅的采样周期时,期望设备在这个采样周期内能将所有对象的数据都采集出来。采样周期的准确性受采样实例数、采样数据源的周期和CPU繁忙程度等因素影响。7.2Telemetry技术原理9GPB编码在设备和采集器之间传输数据时,需要对数据进行编码,当前支持2种编码格式即Google协议缓冲(GoogleProtocolBuffer,GPB)编码格式和JSON编码格式。采用GPB编码格式传输的数据比采用其他编码格式(JSON或XML)传输的数据具有更强的信息负载能力,保证了Telemetry业务的数据吞吐能力,同时降低了CPU使用率和带宽。GPB编码格式,是一种与语言无关、平台无关、可扩展性好的用于通信协议、数据存储的序列化结构数据格式。gRPC协议用GPB编码格式承载数据,GPB编码格式的文件扩展名为.proto。GPB是一种灵活、高效、自动序列化结构数据的机制。GPB与XML、JSON类似,但不同的是,它采用二进制编码,性能好、效率高。7.2Telemetry技术原理10Proto文件(1)Proto文件用于定义GPB编码的编码规则。Telemetry利用GPB编码格式(文件扩展名为.proto)提供一种灵活、高效、自动序列化结构数据的机制,GPB属于二进制编码格式,性能好、效率高。GPB通过.proto文件描述编码使用的字典。采集器可以利用Protoc工具软件根据.proto文件自动生成代码,然后用户基于自动生成的代码进行二次开发,对获取到的Telemetry数据进行解析,从而实现与设备的数据对接。7.2Telemetry技术原理10Proto文件(2)华为CE12800V200R005C10SPC800的Proto文件V200R005C10SPC800-Proto.tar。该压缩文件中包含该设备的公共Proto文件和业务数据Proto文件。(1)公共proto文件to。采集器作为客户端向设备发起RPC请求,订阅采样数据,用于Telemetry动态订阅。(2)公共proto文件to。设备作为客户端主动向采集器发起RPC请求,推送数据,用于Telemetry静态订阅。(3)公共proto文件to。设备采样业务数据之后,用Telemetry头进行封装,方便对接。(4)业务proto文件to。如to、to等设备采集业务数据之后,按文件进行GPB编码,网管按业务数据Proto文件解码。7.2Telemetry技术原理11gRPC协议Telemetry通过gRPC协议将经过编码格式封装的数据上报给采集器进行存储。gRPC协议是Google发布的开源RPC框架,是基于HTTP/2协议的、高性能的、通用的软件框架。通信双方都基于该框架进行二次开发,从而使得通信双方聚焦在业务,无须关注由gRPC软件框架实现的底层通信。7.2Telemetry技术原理12gRPC网络架构gRPC协议栈具有如下五层:TCP传输层:TCP提供面向连接的、可靠的数据链路。TLS(TransportLayerSecurity,传输层安全)传输层:该层是可选的,设备和采集器可以基于TLS协议实现安全通信。HTTP2.0应用层:gRPC承载在HTTP2.0协议上,利用了该协议的头部压缩、多路复用、流量控制等增强特性。gRPC层:定义了RPC的协议交互格式。公共RPC方法定义在公共proto文件中,例如to。数据模型层:用于承载编码后的业务数据。业务数据的编码格式包括:GPB,XML,JSON等。7.2Telemetry技术原理13gRPC网络架构gRPC采用客户端/服务器模型,使用HTTP/2协议传输报文。设备支持gRPC服务器或gRPC客户端7.2Telemetry技术原理13gRPC网络架构gRPC采用客户端/服务器模型,使用HTTP/2协议传输报文。设备支持gRPC服务器或gRPC客户端项目7使用Telemetry实时监控CPU和内存使用率7.1Telemetry概述7.2Telemetry技术原理7.3任务实施7.3任务实施设备SZ_CE1与采集器建立gRPC连接,要求当SZ_CE1的CPU使用率超过40%时,上送数据给采集器;当SZ_CE1的系统内存使用率超过50%时,上送数据给采集器。运维工程师需要完成的任务如下。(1)配置SSH密码登录。(2)配置目标采集器。(3)配置采样路径和过滤条件。(4)配置订阅。(5)安装grpcio-tools。(6)创建PyCharm项目。(7)编译Proto文件。(8)编写服务端Python脚本。(9)运行Python脚本验证结果。项目8使用RESTCONF协议配置网络项目8使用RESTCONF协议配置网络8.1HTTP协议原理8.2RESTCONF协议8.3任务实施8.1HTTP协议原理1HTTP协议–原理HTTP基于客户端/服务端(C/S)的架构模型。HTTP请求及响应有如下五个步骤:HTTP客户端通常是浏览器,Web服务器可以是Apache服务器,IIS服务器(InternetInformationServices)等

客户端与服务器建立TCP连接。客户端发送HTTP请求。请求报文由请求行、请求头部、空行和请求数据四部分组成。服务器接受请求并返回HTTP响应。响应报文由状态行、响应头部、空行和响应正文四部分组成。释放TCP连接。客户端浏览器解析响应报文并显示。客户端浏览器依次解析状态行、响应头部、响应正文并显示。如正文数据为HTML,客户端根据HTML的语法对其进行格式化,并在浏览器窗口中显示。8.1HTTP协议原理2HTTP协议–特点HTTP具有如下特点:

无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求后就断开连接。媒体独立:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器通过头部字段指定适合的MIMEType内容类型。无状态:无状态是指协议对于事务处理没有记忆能力,这样做利于更快地处理大量事务,确保协议的可伸缩性。。8.1HTTP协议原理3HTTP协议–客户端发送的报文客户端发送的HTTP请求消息包括由请求行、请求头部、空行和请求数据四个部分组成,下图给出了请求报文的一般格式。

8.1HTTP协议原理4HTTP协议–客户端请求报文请求行由请求方法字段、URI字段和HTTP协议版本字段3个字段组成。

请求方法:HTTP使用的请求方法,比如常见的GET/POST等。HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型。URI:URI是一个统一资源标识符,它标识了请求所针对的资源。协议版本:协议版本旨在允许发送方指示消息的格式和理解后续HTTP通信的能力。8.1HTTP协议原理5HTTP协议–客户端请求方法根据HTTP标准,HTTP请求可以使用多种请求方法。HTTP1.0定义了三种请求方法:GET、POST和HEAD方法。HTTP1.1新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE和CONNECT方法。

方法描述GET请求指定的页面信息,服务端将返回具体内容数据。POST提交数据,例如提交表单。HEAD类似于GET请求,但是返回的响应中没有具体的内容,用于获取报头。PUT更新和修改数据。DELETE请求删除指定的页面。CONNECT用于HTTP代理。OPTIONS允许客户端查看服务器的性能。TRACE回显服务器收到的请求,主要用于测试或诊断。PATCH用来对已知资源进行局部更新。8.1HTTP协议原理6HTTP协议–客户端请求头部请求头部允许客户端向服务器传递关于请求的附加信息。这些字段充当请求修饰符,其语义相当于编程语言方法调用中的参数。

8.1HTTP协议原理7HTTP协议–客户端请求头部字段

8.1HTTP协议原理8HTTP协议–客户端请求数据空行:它的作用是通过一个空行,告诉服务器请求头部到此为止。请求数据:若方法字段是GET,则此项为空,没有数据。若方法字段是POST,则通常来说此处放置的是要提交的数据。

8.1HTTP协议原理8HTTP协议–客户端请求报文示例客户端向服务器发送含有用户名密码的请求消息,进行登录认证。

8.1HTTP协议原理10HTTP协议–服务端响应消息客户端向服务器发送含有用户名密码的请求消息,进行登录认证。

8.1HTTP协议原理11HTTP协议–服务端响应消息–状态行响应消息的第一行是状态行,由协议版本、状态码和原因短语组成,每个元素由空格字符分隔。

协议版本:协议版本旨在允许发送方指示消息的格式及其理解后续HTTP通信的能力。状态码:一个3位整数结果码,用于向客户端返回操作结果。原因短语:旨在对状态码进行简短的文本描述,帮助理解。8.1HTTP协议原理12HTTP协议–服务端响应消息–状态码HTTP状态码(HTTPStatusCode)是服务器响应状态的3位数字码,用于向客户端返回操作结果。

8.1HTTP协议原理13HTTP协议–服务端响应消息–响应头部响应头部允许服务器传递关于响应的附加信息,这些头部字段提供了关于服务器的相关信息以及URI所标识资源的信息。

8.1HTTP协议原理14HTTP协议–服务端响应消息–响应头部字段

8.1HTTP协议原理15HTTP协议–服务端响应报文示例

服务器向客户端返回响应消息,认证成功。8.1HTTP协议原理16HTTPS协议HTTP协议采用明文传输信息,存在信息窃听、信息篡改和信息劫持的风险。HTTPS具有身份验证、信息加密和完整性校验的功能,可以避免此类问题发生。HTTPS(HyperTextTransferProtocoloverSecureSocketLayer,安全超文本传输协议),是以安全为目标的HTTP通道。HTTPS在HTTP的基础下加入SSL/TLS层,是使用SSL/TLS加密的HTTP协议。8.1HTTP协议原理17HTTPS协议HTTP协议采用明文传输信息,存在信息窃听、信息篡改和信息劫持的风险。HTTPS具有身份验证、信息加密和完整性校验的功能,可以避免此类问题发生。HTTPS(HyperTextTransferProtocoloverSecureSocketLayer,安全超文本传输协议),是以安全为目标的HTTP通道。HTTPS在HTTP的基础下加入SSL/TLS层,是使用SSL/TLS加密的HTTP协议。项目8使用RESTCONF协议配置网络8.1HTTP协议原理8.2RESTCONF协议8.3任务实施8.2RESTCONF协议随着网络规模的增大、复杂性的增加,自动化运维的需求日益增加。NETCONF提供基于RPC机制的应用编程接口。但是NETCONF已无法满足网络发展中对设备编程接口提出的新要求,希望能够提供支持WEB应用访问和操作网络设备的标准化接口。RESTCONF是在融合NETCONF和HTTP协议的基础上发展而来的。RESTCONF以HTTP协议的方法提供了NETCONF协议的核心功能,编程接口符合IT业界流行的RESTful风格,为用户提供高效开发WEB化运维工具的能力。1RESTCONF介绍–背景8.2RESTCONF协议RESTCONF允许Web应用以一种模块化、可扩展的方式访问网络设备的配置数据、状态数据和事件通知。而NETCONG使用的NETCONFClient。2RESTCONF介绍–特点RESTCONF使用HTTP的方法对设备YANG定义的数据进行操作(增删改查)。设备NETCONF和RESTCONF可以共享的YANG文件。数据编码格式支持XML或者JSON。8.2RESTCONF协议RESTCONF基本网络架构如下图所示。RESTCONF基本网络架构中主要元素:RESTCONFClient:RESTCONFServer:3RESTCONF介绍–网络结构客户端利用RESTCONF协议对网络设备进行系统管理。客户端向服务器发送请求,可以实现创建、删除、修改或查询一个或多个数据。设备作为服务器端,服务器用于维护被管理设备的信息数据并响应客户端的请求,把数据返回给发送请求的客户端。服务器收到客户端的请求后会进行解析并处理请求,然后给客户端8.2RESTCONF协议RESTCONF使用YANG作为其建模语言。YANG是用来对RESTCONF协议中的配置数据和状态数据等进行建模的数据建模语言。RESTCONF客户端和服务器之间使用HTTPs协议进行通信。客户端必须和服务器成功建立一个安全的、面向连接的会话才能进行通信。客户端向服务器发送一个请求,服务器处理完用户请求后,给客户端发送一个回应消息。RESTCONF客户端发送的请求和服务器的回应消息可以使用XML或者JSON编码。4RESTCONF介绍–建模语言8.2RESTCONF协议5RESTCONF介绍–与NETCONF比较(1)RESTCONF与NETCONF比较比较项目NETCONF+YANGRESTCONF+YANG传输通道(协议)NETCONF传输层首选推荐SSH(SecureShell)协议,XML信息通过SSH协议承载。RESTCONF是基于HTTP协议访问设备资源。RESTCONF提供的编程接口符合IT业界流行的RESTful风格。报文格式采用XML编码。采用XML或JSON编码。操作特点NETCONF的操作复杂,例如:NETCONF支持增、删、改、查,支持多个配置数据库,也支持回滚等。NETCONF需要两阶段提交(即先提交参数,再commit参数)。RESTCONF的操作简单,例如:RESTCONF支持增、删、改、查操作,仅支持<running/>配置数据库。RESTCONF操作方法无需两阶段提交,操作直接生效。RESTCONF较于NETCONF,使用了不同的操作方法和数据编码。8.2RESTCONF协议5RESTCONF介绍–与NETCONF比较(2)RESTCONF较于NETCONF定义了配置数据库和增、删、改、查操作,这些操作可以用来访问配置数据库。NETCONF使用YANG语言定义了数据库内容、配置数据、状态数据、RPC操作等的语法语意。RESTCONF协议通过HTTP方法可以识别NETCONF中定义的增删改查操作,用于访问YANG定义的数据。8.2RESTCONF协议5RESTCONF介绍–操作方法比较(3)RESTCONF操作方法与NETCONF操作方法对应关系如下所示:RESTCONF操作方法与NETCONF协议方法RESTCONF+YANGNETCONF+YANGOPTIONSN/AHEAD<get-config>,<g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论