美文网首页网络运维自动化
网络运维自动化入门三:netconf配置说明

网络运维自动化入门三:netconf配置说明

作者: wsf535 | 来源:发表于2018-02-28 10:59 被阅读623次

一 、<edit-config>
<edit-config>操作用来把配置数据下发到指定的目标配置数据集(<running>或
<candidate>),设备对<edit-config>中的操作进行鉴权,鉴权通过后,执行相应的修
改。
参数说明

  • target:待编辑配置数据集名。基于场景选择对应的数据集名:
    – 立即生效模式,数据集设置为<running/>
    – 两阶段生效模式,数据集设置为<candidate/>(此场景需要<commit>)
    – 试运行,数据集设置为<candidate/>(此场景需要<confirm-commit>)
  • default-operation:为此<edit-config>请求选择默认操作(如“operation”属性中所
    述)。 <default-operation>参数的默认值为“merge”。
    <default-operation>参数是可选的,但如果提供,它具有以下值之一:
    – merge:<config>参数中的配置数据与目标数据存储中相应级别的配置合并。
    这是默认行为。
    – none:当配置方式未指定,默认操作指定为none的时候,edit-config操作会默
    认为none操作。none操作主要用来检查,下发为none操作的配置仅仅做
    Schema校验,不进行真正的配置下发。语法检查通过,就返回ok成功,否则
    失败。
  • error-option:<error-option>包含如下取值:
    – stop-on-error:<edit-config>操作出现错误即停止执行,这也是默认选项。
    – continue-on-error:出错后继续执行后续配置操作,记录错误信息并生成错误
    响应报文。
    – rollback-on-error:如果发生错误导致生成<rpc-error>响应报文,则服务器需要
    停止处理<edit-config>操作,并将此<edit-config>操作已完成配置进行回退。
  • config:由设备的数据模型之一定义的配置数据的层次结构。 内容必须放在适当
    的命名空间中,以允许设备检测对于的数据模型,并且内容必须遵循由其能力集
    定义的数据模型的约束。
    属性说明
    <config>子树元素中可能包含一个“operation”属性,该属性NETCONF名字空间中定
    义。该属性标识配置操作如何执行,并且可能出现在整个<config>子树的多个元素上。
    如果未指定“operation”属性,则配置将被合并到配置数据库中。
    “operation”属性包含下面几个值:
  • merge:由包含此属性标识的配置数据与由<target>参数标识的配置数据库中相应
    级别配置合并。这是默认属性。
  • create:当且仅当配置数据存储中尚不存在配置数据时,由包含此属性标识的配置
    数据才会添加到配置中。 如果配置数据存在,则会返回一个<rpc-error>元素,其
    中包含一个<error-tag>值“data-exists”。
  • delete:当且仅当配置数据当前存在于配置数据存储中时,才会从配置中删除由包
    含此属性的元素标识的配置数据。 如果配置数据不存在,则返回一个<rpc-error>
    元素,其中包含一个<error-tag>值“data-missing”。

二、<get-config>
<get-config>操作用来从<running/>和<candidate/>配置数据集中查询全部或指定的一部分配置数据。
参数说明:

  • source:正在查询的配置数据集的名称。
  • filter:此参数用来标识要查询设备配置数据集的部分。 如果此参数不存在,则返
    回整个配置。<filter>元素可以包含“type”属性。NETCONF中的默认过滤机制被称为子树过滤(“type”属性值为“subtree”)。

操作成功的回应:
设备支持满足请求操作的能力集,NETCONF server返回一个使用<rpc-reply>元素封装的消息,<rpc-reply>元素中创建一个data元素,查询数据全部封装在data元素中。
当查询返回数据量大于30K,如果设备不支持get-next能力,NETCONF server直接反馈错误;否则NETCONF server需要做消息分包处理,用户可以继续使用<get-next>操作,请求返回多个<rpc-reply>消息。
操作失败的回应:
如果操作请求由于任何原因不能执行完成,NETCONF server返回一个<rpc-reply>元素封装的消息,创建一个<rpc-error>元素封装在<rpc-reply>元素中。
三、<get>
<get>操作用来从<running/>数据集中查询部分或全部运行的配置数据和设备的状态数据。

<get>操作成功,Server回复的<rpc-reply>元素中含有<data>元素,<data>元素中封装了获取的结果数据。否则在<rpc-reply>元素中含有<rpc-error>元素。

参数说明:

  • filter:此参数用来标识要查询设备配置数据集的部分。 如果此参数不存在,则返回整个配置。
    <filter>元素可以包含“type”属性。NETCONF中的默认过滤机制被称为子树过滤(“type”属性值为“subtree”)。

<get>和<get-config>区别在于:

  • <get>只能从<running/>配置数据集中获取数据。所以,<get>不需要<source>参数指定配置数据集。<get-config>支持通过<source>参数指定<running/>或<candidate/>。
  • <get-config>只能查询配置数据,而<get>既能查询配置数据,又能查询状态数据。

四、<execute-action>
<execute-action>操作主要用来请求设备执行某个动作,并在<rpc-reply>中返回执行结果。维护操作一般不会直接修改设备上的配置数据,也不会返回业务数据。例如清除一个报文计数器,或复位一块单板。

设备必须宣布支持Action能力,才能使用<execute-action>操作。

相关文章

网友评论

    本文标题:网络运维自动化入门三:netconf配置说明

    本文链接:https://www.haomeiwen.com/subject/pzkbxftx.html