Nornir小试牛刀

本文介绍了Nornir,一个Python编写的网络自动化框架,对比了它与Ansible的区别。详细讲述了如何在CentOS7/8上安装Python 3.8.5,配置环境并安装Nornir及其插件。通过创建目录结构,编写配置文件和主机清单,演示了如何使用Nornir执行网络设备命令,并展示了统计交换机UP端口数的示例代码。
摘要由CSDN通过智能技术生成

一、Nornir简介

        Nornir是用python编写的自动化框架,可与python一起使用。相比另一个自动化大杀器ansible来讲,nornir操作更加的灵活,不受格式限制,于python结合可灵活操作,最最重要的是并发性完全秒杀ansible,但这不是说ansible一无是处,ansible依然强大,基础群众庞大,而nornir更适合操作网络设备。

        Nornir旨在通过提供一个纯Python框架来解决这些问题。只需将Nornir想象成自动化的烧瓶。Nornir将负责处理您拥有主机信息的清单,它将负责将任务分派到您的设备,并将提供编写“插件”的通用框架。

        Nornir要求安装Python 3.6.2或更高版本。

二、安装及插件

1)笔者建议使用vmware虚拟机安装一台centos7或8,详细的系统安装不在此说了,网上很多。

2)检查python版本,python --version,下载python3

可以访问python的官方网站查看最新的python版本以及下载链接:https://www.python.org/downloads/,将鼠标移到想要官网上想要下载的版本号上就可以看到下载地址,例如我需要在Linux下安装,可以使用这个链接:https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz(如果想要下载其他版本,直接修改版本号即可)。

找到下载地址后,在命令行输入:

# wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz

3)下载完成后解压缩

# tar -zxvf Python-3.8.5.tgz

进入解压缩后的目录,安装配置:

# cd Python-3.8.5/

# ./configure

执行 ./configure 时,如果报错:

configure: error: no acceptable C compiler found in $PATH

说明没有安装合适的编译器。这时,需要安装/升级 gcc 及其它依赖包。

# sudo apt-get install make gcc gcc-c++

完成之后,重新执行:

# ./configure

配置完成之后,就可以编译了:

# make

编译完成后,进行安装(安装时有的可能会因为权限问题报错,可以加上sudo):

# sudo make install

4)验证

安装成功以后,就可以查看 Python 的版本了:

# python -V

Python 2.7.5

# python3 -V

Python 3.8.5

5)pip3安装

安装方法:

### 回答1: Nornir是一个用于网络自动化的Python框架,而Jinja2则是一个流行的Python模板引擎。将两者结合使用可以实现在网络自动化中动态生成配置文件、模板化输出等功能。在使用Nornir时,可以通过使用Jinja2的模板,将Nornir的数据作为模板的上下文,最终生成所需的配置文件或输出结果。具体实现可以参考Nornir官方文档中关于使用Jinja2的部分。 ### 回答2: nornir与jinjia2是两种在网络自动化领域能够相互结合的工具。 nornir是一个用于网络自动化的Python库,它提供了简单灵活的方式来管理、配置和操作网络设备和服务器。它的一个主要优势是它的插件系统,可以轻松扩展其功能并与其他工具集成。nornir可以通过插件与jinjia2模板引擎结合,实现在配置文件生成中更高的灵活性和可重复性。 jinjia2是一个功能强大的Python模板引擎,它使用简单的语法和模板文件来生成各种文本格式。它具有循环、条件语句、过滤器等功能,可以根据模板和传入的变量生成动态的配置文件。它的一个重要特性是可以根据不同的环境需求生成不同的配置文件,大大提高了网络自动化的灵活性。 当nornir与jinjia2结合时,可以实现更高级的网络自动化需求。可以使用nornir来自动收集网络设备信息,并将这些信息作为变量传递给jinjia2模板引擎。jinjia2可以根据传入的变量和模板文件生成特定的配置文件,并将其应用于相应的设备。这种结合可以帮助自动化流程更加灵活、高效,并可以根据需要生成不同的配置文件,快速应对不同的网络环境需求。 综上所述,nornir与jinjia2的结合为网络自动化提供了强大的工具和功能,可以帮助提高自动化流程的灵活性和可重复性,并能够根据不同的网络环境需求生成特定的配置文件。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值