25-Ansible配置
本章节下载: 25-Ansible配置 (180.01 KB)
目 录
Ansible是基于Python开发的配置工具。该工具使用SSH(Secure Shell)协议与网络设备建立连接,实现对网络设备的集中配置管理。
图1-1 Ansible网络架构
· 管理端(Manager):指安装了Ansible环境的主机。关于Ansible软件的安装,请参见Ansible的官方网站。
Ansible管理端支持的远程配置包括创建VLAN等,具体以Comware V7 Python库中支持的业务模块为准。
· 设备端(Device):设备端仅需支持作为SSH服务器,无需安装任何客户端代理软件。设备端和管理端建立SSH连接后,自动执行管理端下发的命令。
H3C设备支持作为Ansible系统的设备端。
Ansible的工作机制为:
(1) 在管理端上编辑配置文件。
(2) 管理端和设备端建立SSH连接。管理端为SSH客户端,设备端为SSH服务器。
(3) 管理端给单个或多个设备下发配置命令。
(4) 设备端自动执行管理端下发的命令来完成配置。
配置Ansible功能前,用户需要先配置如下功能:
· 手工配置设备的系统时间与管理端一致,或配置设备与管理端之间使用NTP/PTP进行时间同步,否则可能导致双方无法互通。关于时间同步的详细配置请参见“基础配置指导”中的“设备管理”,以及“网络管理和监控配置指导”中的“NTP”和“PTP”。
· 在设备上配置SSH服务器功能,使管理端能通过SSH连接向设备下发命令。关于SSH服务器的详细配置,请参见“安全配置指导”中的“SSH”。
如图1-2所示,设备开启SSH服务器功能,Ansible管理端通过SSH连接来远程配置设备。
图1-2 Ansible组网图
(1) 配置设备与管理端的IP地址,确保它们之间路由可达。
(2) 配置设备与管理端之间使用手工方式或NTP/PTP进行时间同步。
(3) 配置设备作为SSH服务器。
# 生成本地密钥对。关于本地密钥对的详细配置,请参见“安全配置指导”中的“SSH”。
# 创建本地用户abc,配置该用户的密码,授权用户角色为network-admin,用户可以使用的服务为SSH、HTTP和HTTPS。
<Device> system-view
[Device]local-user abc
[Device-luser-manage-abc] password simple 123456TESTplat&!
[Device-luser-manage-abc] authorization-attribute user-role network-admin
[Device-luser-manage-abc] service-type ssh http https
[Device-luser-manage-abc] quit
# 开启NETCONF over SSH服务器功能。
[Device] netconf ssh server enable
# 设置SSH客户端登录用户线的认证方式为AAA认证,用户角色为network-admin。
[Device] line vty 0 63
[Device-line-vty0-63] authentication-mode scheme
[Device-line-vty0-63] user-role network-admin
[Device-line-vty0-63] quit
# 开启Stelnet服务器功能。
[Device] ssh server enable
# 配置SSH用户abc的服务类型为all(包括scp、sftp、stelnet和netconf四种服务类型),认证方式为password认证。
[Device] ssh user abc service-type all authentication-type password
# 开启SFTP/SCP服务器功能。
¡ 对于支持SFTP的设备,开启SFTP服务器功能。
[Device] sftp server enable
¡ 对于不支持SFTP的设备,开启SCP服务器功能。
[Device] scp server enable
在管理端安装Ansible环境,并编写配置脚本,下发配置命令。具体操作请参考相关文档。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!