支持多厂商的网络安全自动化和可编程抽象层
项目描述
NAPALM
NAPALM (Network Automation and Programmability Abstraction Layer with Multivendor support) 是一个Python库,它实现了一套函数,用于使用统一的API与不同厂商的路由设备进行交互。
NAPALM支持几种连接到设备、操作配置或检索数据的方法。
支持的网络安全操作系统
请查看以下 链接,了解哪些设备受到支持。请确保您理解 注意事项。
文档
在使用库之前,请阅读以下文档: Read the Docs
您还可以观看一个实时演示来了解NAPALM是什么以及它能为您做什么。
安装
pip install napalm
注意:从5.0.0版本开始,NAPALM仅支持Python 3.8及以上版本。
注意:从4.0.0版本开始,NAPALM仅支持Python 3.7及以上版本。
注意:从3.0.0版本开始,NAPALM仅支持Python 3.6及以上版本。
升级
我们计划尽快升级napalm。添加新方法和错误修复。要升级napalm,只需重复您在安装时执行的步骤,但添加-U
标志。例如
pip install napalm -U
我们将在我们的Slack频道和Twitter上发布新闻。
自动化框架
由于其灵活性,NAPALM可以集成到广泛使用的自动化框架中。
Ansible
请检查napalm-ansible,了解使用NAPALM API的现有Ansible模块。在尝试使用之前,请确保您已阅读文档并理解其工作原理。
SaltStack
从代码名为Carbon
(2016.11)的版本开始,NAPALM已完全集成到SaltStack中 - 无需额外模块。有关设置建议,请参阅napalm-salt。对于文档和用法示例,您可以检查模块文档,从发行说明和这篇博客文章开始。
StackStorm
您可以使用NAPALM集成包从StackStorm中使用NAPALM。请参阅该存储库中有关如何安装和配置包以与StackStorm一起工作的说明。StackStorm的一般文档可以在https://docs.stackstorm.com/找到,并且可以使用Vagrant或Docker轻松启动StackStorm进行测试。
联系方式
Slack
Slack可能是获得NAPALM帮助的最简单方法。您可以在network.toCode()团队中的napalm
频道找到我们。
常见问题解答
如果您在使用NAPALM时遇到任何问题或遇到任何错误,在提交任何问题(通过电子邮件或Slack直接提交)之前,请先查阅以下清单
- 请确保您已安装最新版本。我们发布非常频繁,因此升级到最新版本可能有助于许多情况。
- 请再次确认您可以使用提供的凭据访问设备。
- 您的设备是否符合最低的要求?
- 某些操作系统有一些特定的约束。(例如,您是否已启用IOS-XR上的XML代理,或NXOS上的NXAPI功能?)
- 您能否使用NAPALM连接到设备?请使用napalm CLI执行get_facts进行检查
$ napalm --vendor VENDOR --user USERNAME --password PASSWORD --optional_args OPTIONAL_ARGS HOSTNAME call get_facts
其中厂商、用户名、密码和主机名是必需的。 可选参数指定为逗号分隔的值。
示例
$ napalm --vendor junos --user napalm --password dbejmujz --optional_args 'port=12202, config_lock=False' edge01.bjm01 call get_facts
如果您遇到任何错误,请检查上述步骤 - 这看起来是您环境设置的问题。
为了更快地获得帮助,在提交错误报告时,请确保包含所有请求的详细信息。
新闻
博客文章
- Kirk Byers的NAPALM, Ansible和Cisco IOS
- 将Cisco IOS支持添加到NAPALM(具有多厂商支持的自动化和网络可编程抽象层) 作者:Gabriele Gerbino
- 使用Salt和NAPALM进行网络编排 作者:Mircea Ulinic
- 使用StackStorm和NAPALM确保网络配置一致性 作者:Matt Oswalt
演示文稿
- NANOG 64 演示与演示 作者:David Barroso和Elisa Jasinska
- Netnod秋季会议2015演示 作者:David Barroso
- 在Euro-IX论坛上使用Ansible自动化IXP设备配置 作者:Elisa Jasinska
- 在NANOG 68上使用Salt和NAPALM进行网络自动化;视频;录制的演示 作者:Mircea Ulinic
播客
- NAPALM:在Software Gone Wild中将Ansible与网络设备集成 作者:David Barroso和Elisa Jasinska
作者
- David Barroso (dbarrosop@dravetech.com)
- Mircea Ulinic (ping@mirceaulinic.net)
- Kirk Byers (ktbyers@twb-tech.com)
- Elisa Jasinska (elisa@bigwaveit.org)
- 许多其他作者,请参阅贡献者页面以获取详细信息。
感谢
该项目由David Barroso、Mircea Ulinic、Kirk Byers和其他贡献者维护。
最初由Spotify组织托管,但由于收到许多第三方贡献,我们同意创建一个专门的NAPALM组织,并向Spotify表示感谢。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。
源分发
构建版本
napalm-5.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 350ac3d74f2f10030dbae44d3395551d7e03ee25c65fa5eb8263a4e6f51f2c94 |
|
MD5 | 646a31aa933cc231708f6338a5c1679c |
|
BLAKE2b-256 | a968e0de16b384eb70bb4cb87d157c1a6907e34c33e8b85effce156032a82139 |
napalm-5.0.0-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 458837932e527ca06a4bab7e600b0ca6e6bc3bb4b33fad9c9ef2befc7df6d2f5 |
|
MD5 | a92d4140cdbb0b52a621de7fd6a0bc2f |
|
BLAKE2b-256 | 85ca7e7d4f2b53240a82a8a48b41decc490ca854e6c6c56cfed607ed4d32a840 |