《2022年技术盛宴-数据中心自动化运维技术探索之NETCONF.docx》由会员分享,可在线阅读,更多相关《2022年技术盛宴-数据中心自动化运维技术探索之NETCONF.docx(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品学习资源技术盛宴 | 数据中心自动化运维技术探究之NETCONF数据中心交换机实现运维自动化,零配置上线技术ZAM 只是完成了交换机预先可知的固定配置, 主要是一些基本的互通以及登录相关配置;将来的业务是变化的, 所以详细的 与 业 务 相 关 的 配 置 仍 需 要 根 据 具 体 需 求 配 置 或 更 新 ; NETCONF Network Configuration Protocols,网络配置协议协议供应了业务配置部署自动化的解决方案;那么 NETCONF是如何显现的?为什么需要开发NETCONF ?NETCONF能干什么? 进展趋势又是怎样的?本文将针对以上几个问题,对数据中心
2、运维自动化技术进行一些介绍 和探讨;SNMP的问题要谈 NETCONF ,SNMP是无法绕过去的; SNMP Simple Network Management Protocol,简洁网络治理协议最早由IETF 在 20 世纪 80 岁月晚期 1980s 开发,自产生之日起, SNMP就被用来监控 如告警、 性能治理 网络设备, 大多数专业的网络设备都有 SNMPagent代理,这些代理被激活和配置后用于和SNMP治理 NMS Network Management System,网络治理系统通信;一套完整的 SNMP系统主要包括治理信息库MIB 、治理信息结构 SMI 及 SNMP报文协议;M
3、IBMIB ,治理信息库,汇总储备着资源与OID 的唯独对应关系, NMS依据查询的资源在MIB中找到对应的 OID ,通过 SNMP查询报文将读取的OID信息发送至网络设备,网络设备依据 OID 查询对应的资源信息,最终封装为SNMP响应报文发送给 NMS ;欢迎下载精品学习资源如图一所示,查询资源OID 即;图一 : MIB 树形层次结构SMISMI ,治理信息结构,是SNMP中定义被治理的网络实体即网络设备中特定数据的语言;定义了数据类型、对象模型,以及写入和修改治理信息的规章等内容;SNMP报文SNMP规定了 5 种协议数据单元 PDU SNMP报文,用来在治理进程和代理之间的信息交换
4、;如图二所示:.get-request,用于从代理进程处提取一个或多个参数值;.get-next-request,用于从代理进程处提取紧跟当前参数值的下一个参数值;欢迎下载精品学习资源.set-request,用于设置代理进程的一个或多个参数值;.get-response,用于代理向治理进程返回的一个或多个参数值;.trap ,代理进程主动发出的报文,通知治理进程有某些大事发生;图二: SNMP五种报文操作从 SNMP协议设计中可以看出,尽管具有一些配置的功能,但 SNMP本身并不是面对配置的协议,也不适合开发用于配置的客户端应用;大量的运维实践也证明,SNMP更多是作为网络设备状态监控的工具
5、,而在配置治理层面,SNMP仍不具备成为一个成熟工具 的才能;而且即便在网络设备监控层面,SNMP也仍存在着其他的问题,比方:性能差,效率低;基于 UDP 协议传输,牢靠性较差,只能依靠本身机制保证牢靠性,影响性能;私有 MIB 导致多厂家设备统一治理难度大;欢迎下载精品学习资源正是由于 SNMP的各种不足和缺陷,才导致了NETCONF的产生;NETCONF的由来在 2001 、2002年, IAB Internet Architecture Board,互联网架构委员会 ,组织了几次关于网络治理的专题工作会议,将网管以及协议开发者组织起来针对当时的主流网管协议 SNMP 、CLI 等存在的问
6、题进行了争论,会议结果最终形成了RFC 3535 ;在这份文档中,针对当时网络治理中存在的问题,提出了14 项需求,其中最关键的几项有:易用性;明确区安排置数据、描述操作状态的数据和统计数据;面对服务和网络的配置治理,而不是单个设备的治理;配置数据的导入导出脱离原始人员操作;基于文本进行配置;标准化数据模型等等;针对 RFC 3535中排列的需求, 2003 年成立了 NETCONF工作组, NETCONF的设计遵循 RFC 3535 ;2006年 NETCONF核心 RFC 4741 发布, 2021年更新版的 RFC 6241发布废止 RFC 4741 ;NETCONF简介NETCONF协
7、议,顾名思义是安装、编辑和删除网络设备配置的标准协议;从上文 NETCONF由来也可看出, NETCONF主要解决的问题之一就是网络设备的配置治理、下发、更换等问题; NETCONF如何来实现对网络设备配置的治理,我们先来看下NETCONF的欢迎下载精品学习资源架构设计;NETCONF架构NETCONF使用 C/S 结构,面对连接,协议报文使用XML 格式;图三: NETCONF协议架构从图三中可以看出NETCONF协议内部分为 4 层,由下至上分别是安全传输层,消息层,操作层和内容层;.安全传输层NETCONF所具备的一大优势在于从协议层面就规定其传输层必需使用带有安全加密的通信协议, 如
8、SSH ,TLS 等;比照其他明文传输协议,NETCONF协议层面就对数据安全性做了保证;由于NETCONF协议规定必需要支持SSH ,所以目前SSH是欢迎下载精品学习资源NETCONF 使用最广泛的传输层协议;.消息层消息层供应了一种简洁的、不依靠于传输协议的 RPC 和通告封装机制;client 采纳 元素封装操作恳求信息, 并通过一个安全的、 面对连接的会话将恳求发送给服务器,而服务器将采纳 元素封装 RPC 恳求的响应信息即操作层和内容层的内容 ,然后将此响应信息发送给恳求者;另外,服务器可以采纳 元素向客户端通告大事;.操作层操作层是承载在消息层上的详细操作内容,这些详细操作仅能承载
9、在 和 消息上, 消息无操作层内容;NETCONF 协议规定了 9 种简洁的 RPC 操作,如表一所示:基本操作说明猎取配置数据或状态数据;猎取配置数据;修改配置数据包括合并、替换、创建、删除等操作;用一个完整数据库替换目标数据库;欢迎下载精品学习资源删除数据库, 库不能被删除;锁定设备配置数据库,独占数据库修改权限,以免多用户操作情形发生;取消设备配置数据库锁定,只能取消本用户的锁定;恳求正常中止 NETCONF会话;强制中止 NETCONF会话,需治理员权限;表一: RPC 基本操作除了以上 9 种基本操作, NETCONF也支持用户自定义RPC 操作,这里不做绽开描述;.内容层内容层主要
10、用来描述网络治理所涉及的配置数据和通知数据等;但是NETCONF并没有对于内容层的数据结构模型做标准化定义,那如何来描述内容层的相关数据呢,2006 年,在 NETCONF首个版本 RFC 4741发布的同时,一种特地为NETCONF预备的数据建模语言 YANG RFC 6020 也同时发布;目标是对NETCONF数据模型、操作进行建模,掩盖NETCONF协议的操作层和内容层;以下图即是一个 NETCONF的 RPC 报文中各层内容的示意;欢迎下载精品学习资源图四: NETCONF RPC报文例如NECONF操作那在这个架构下 NETCONF究竟是如何实现设备配置治理的?我们来看一次NETCO
11、NF交互的流程:图五: NETCONF交互流程示意欢迎下载精品学习资源在 Client和 Server建立 NETCONF会话后, 两端先通过 报文相互通知对端本端对于 NETCONF的支持才能, 即 Capability;同步完成后 Client端发起 RPC 操作,Server 端运行后将应答消息封装入回复给 Client端;对于设备配置,就是在Client 端发起 RPC 配置相关的操作;NETCONF定义的 9 项基本 RPC 操作中有 4 项与配置直接相关,包括;仍剩余 2项与配置权限相关, 2项会话关闭和1 项状态数据查询;从这里也能看出NETCONF对于配置治理的重视;可是这些好
12、像仍是没法表达NETCONF比 SNMP好在哪? SNMP 存在的问题如何解决的?这里不得不引出 NETCONF中另外一个重要的组成部分YANG ;YANGYANG Yet Another Next Generation,无法用中文给出恰当的翻译;从YANG 的标准文档 RFC 6020中,我们可以明确它的定位:A Data Modeling Language for the Network Configuration Protocol NETCONF ,NETCONF的数据建模语言;为什么要 YANG欢迎下载精品学习资源NETCONF需要对设备的配置 configuration和状态 sta
13、te 做操作,例如编辑配置,猎取状态,而NETCONF的内容层并没有定义标准化的数据模型;同时操作层除了定义 9 种基本的 RPC 操作,仍答应自定义RPC ,自定义的 RPC 和详细操作内容都需要进行建模, YANG 就是用来完成这个建模的;YANG 使用 modules 和 submodule 进行数据建模;一个 YANG module ,如图六所示,定义了具有垂直结构的数据, 这些数据可以被用做基于 NETCONF 的操作, 包括配置、状态数据的描述,仍有 RPC 操作等;它使得 NETCONF 的 Client 和 Server 之间能有完整的数据描述;图六: YANG module举
14、例怎么用 YANGYANG 建模得到的数据具备树形结构;其中每一个节点都有一个名字,都有一个值或者一些子节点; YANG 文件为这些节点, 以及节点之间的交互供应明确清楚的描述,即数据模型路径;欢迎下载精品学习资源网络设备对于 NETCONF的支持,就是在设备注册YANG 的数据模型路径,使设备能够依据 YANG 文件的数据模型路径猎取数据或者写入配置;那么对于运维人员来说只需拿到设备厂商的YANG 模型,依据 YANG 模型的要求将相关的配置或数据参数填入,即可通过NETCONF发起相关 RPC 操作,完成配置或数据读取任务;通过 YANG和 NETCONF ,就实现了基于可编程技术的网络配
15、置和治理,为自动化运维供应了基础;NETCONF与 SNMP比照介绍完 NETCONF ,我们再回头看下NETCONG与 SNMP的简洁比照:SNMPNETCONFData modelsDefined in MIBsDefined in YANGData modelingSMIYANGLanguageManagementSNMPNETCONFOperationsRPC ProtocolBERXMLSSHTransport StackUDPTCP欢迎下载精品学习资源表二: SNMP&NETCONF比照相比 SNMP , NETCONF具备以下优势:.简洁易用, YANG 模型简洁易学,可读性好,
16、且可直接映射到XML ;.清楚区安排置数据和状态数据,对于不同数据,储备在不同数据库中,相互区分明确;.可以统一治理整个网络全部设备,而不再是基于单台设备治理;.自动化的配置下发和数据收集,降低人工误操作几率;.标准化数据模型建模语言 ;.扩展性好,除了标准操作,仍可以自定义操作,实现特殊治理功能;.基于 SSH 协议,供应配置锁定等机制,数据安全性高;NETCONF问题NETCONF协议因其良好的易用性和扩展性,已经随着SDN 技术的逐步落地得到了越来越广泛的使用,主流设备厂商设备均可以支持NETCONF功能;但是这样是否就解决了网管运维面临的问题呢?答案明显是否认的;缘由在于:.各厂商设备
17、支持NETCONF基本都使用私有YANG模型, 不同厂商设备不能识别其他厂商 YANG 文件;.对于使用 NETCONF运维平台的使用者,需要学习熟识各厂商的NETCONF文档和YANG 文件;.NETCONF YANG Model整体的标准化进程非常缓慢;欢迎下载精品学习资源为明白决这些现实问题,业界的设备使用者们推出了另外一种标准化方案;OpenConfig为了屏蔽使用 NETCONF时不同厂商设备的差异,由Google发起, AT&T , British Telecom ,Facebook,Apple ,Microsoft等参加成立了OpenConfig工作组, 期望能创建一个与设备厂商
18、无关的开放模型,用于网络配置和策略; 目前国内很多互联网巨头公司也已经加入了 OpenConfig工作组;OpenConfig标准化OpenConfig的目的是基于实际案例的操作需求,使用YANG 语言编译一组中立的通用数据模型,以最终实现基于可编程技术的网络自动化运维;OpenConfig具备以下几个主要特点:沿用 NETCONF协议框架;使用 YANG 作为建模语言;不修改底层数据传输,只关注上层的数据表达和数据建模;也就是说 OpenConfig更多的是要成为一个建模的标准;OpenConfig本身是基于标准化的NETCONF协议框架和建模语言YANG 来开发,在YANG Model维度
19、进行标准化,相当对于YANG 模型做了标准,需要各厂家设备全部需要能够识别 OpenConfig YANG Model的 YANG 文件, 这样, 不同厂商的设备就可以通过统一模型的 YANG 文件来治理,不同的只是YANG 文件中填入的参数;通俗的懂得, OC OpenConfigYANG 就是期望做成一种类似公有的YANG 模型, 如图欢迎下载精品学习资源七所示;图七: OC YANG模型OpenConfig生态情形目前 OpenConfig仍不是一个官方标准组织,甚至仍不是一个正式的组织,很多的成员仍都是通过邮件邀请的;它由 Google提倡, Microsoft、AT&T 、英国电信等
20、都是它的拥护者,国内互联网巨头均已加入;OpenConfig目前仍没有发布标准RFC,但已经成为 NETCONF的下一个进展趋势, 各大网络设备厂商都已经开头了OpenConfig的开发工作;目前, 由于在网络治理、 配置下发以及开放性等方面的优势,NETCONF基本已经成为实现数据中心运维自动化的主流协议;同时各大网络设备厂商也纷纷将NETCONF加入功能支持列表里; 虽然由于私有 YANG 的问题导致在实际应用中仍存在一些问题,但 OpenConfig 已经为解决这些问题供应了明确可行的思路;随着OpenConfig的逐步落地,数据中心自动化运维技术将迎来新一波浪潮;锐捷网络的数据中心交换机产品, 包括 RG-N18000-X 系列核心交换机、 RG-S6510 系列 25G TOR 、RG-S6220-H 系列万兆 TOR 都已支持 NETCONF 和 OpenConfig YANG ;2021 年上半年发布的 OpenConfig YANG 模型也已全部完成适配,目前正在协作国内公欢迎下载精品学习资源有云供应商进行测试;欢迎下载