GNU General Public License v3.0

项目介绍

ansible-collections/cisco.ios 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前获得 388 个 Star、207 次 Fork。

仓库全名
ansible-collections/cisco.ios
开源许可证
GNU General Public License v3.0
Star 数
388
Fork 数
207
未关闭 Issue
44

README 摘要

Cisco IOS Collection The Ansible Cisco IOS collection includes a variety of Ansible content to help automate the management of Cisco IOS and Cisco IOS XE network appliances. This collection has been tested against Cisco IOS XE Version 17.3 on CML. Requirements Ansible Core 2.16.0 or later. Python 3.10 or later. The ansible.netcommon collection, version 8.5.2 or later. The ansible.utils collection, required…

完整内容见 GitHub 原始 README 或本页 。

常见问题

cisco.ios 用什么语言开发?

主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前有 388 个 Star。

cisco.ios 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 cisco.ios 的源码?

可以直接克隆仓库:git clone https://github.com/ansible-collections/cisco.ios.git,默认分支为 main;安装与运行步骤见仓库 README。

cisco.ios 最近还在维护吗?

仓库最近一次更新为 4 天前,当前有 44 个未关闭 Issue;Star 数为 388,可作为社区活跃度的参考。

关于

Ansible Network Collection for Cisco IOS

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
820
价值分
294
活跃状态
活跃

语言占比

Jinja
Python
Roff

Release

README

Cisco IOS Collection

CI Integration tests 💻

The Ansible Cisco IOS collection includes a variety of Ansible content to help automate the management of Cisco IOS and Cisco IOS XE network appliances.

This collection has been tested against Cisco IOS XE Version 17.3 on CML.

Requirements

  • Ansible Core 2.16.0 or later.
  • Python 3.10 or later.
  • The ansible.netcommon collection, version 8.5.2 or later.
  • The ansible.utils collection, required transitively by ansible.netcommon as declared in its collection metadata.
  • Python packages declared in this collection’s requirements.txt and ansible.netcommon’s requirements.txt: ansible-pylibssh 1.4.0 or later, jxmlease, ncclient, paramiko, xmltodict, grpcio, and protobuf.

ansible-pylibssh provides the libssh backend for ansible.netcommon.network_cli. The paramiko backend is now deprecated. Refer to the following forum post for more information.

Support

As Red Hat Ansible Certified Content, this collection is entitled to support through Ansible Automation Platform (AAP). Open a support case using the Create issue button in the top-right corner of this collection’s page in Red Hat Ansible Automation Hub.

Community help is also available on #network:ansible.com or the Ansible Forum Network Working Group.

Communication

For more information about communication, see the Ansible communication guide.

Ansible version compatibility

This collection has been tested against the following Ansible versions: >=2.16.0.

Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. PEP440 is the schema used to describe the versions of Ansible.

Supported connections

The Cisco IOS collection supports network_cli connections. A detailed platform guide can be found here.

Included content

Cliconf plugins

Name Description
cisco.ios.ios Use ios cliconf to run command on Cisco IOS platform

Modules

Name Description
cisco.ios.ios_acl_interfaces Resource module to configure ACL interfaces.
cisco.ios.ios_acls Resource module to configure ACLs.
cisco.ios.ios_banner Module to configure multiline banners.
cisco.ios.ios_bfd_interfaces Resource module to configure bfd in interfaces.
cisco.ios.ios_bfd_templates Bidirectional Forwarding Detection (BFD) templates configurations
cisco.ios.ios_bgp_address_family Resource module to configure BGP Address family.
cisco.ios.ios_bgp_global Resource module to configure BGP.
cisco.ios.ios_command Module to run commands on remote devices.
cisco.ios.ios_config Module to manage configuration sections.
cisco.ios.ios_evpn_ethernet Resource module to configure L2VPN EVPN Ethernet Segment.
cisco.ios.ios_evpn_evi Resource module to configure L2VPN EVPN EVI.
cisco.ios.ios_evpn_global Resource module to configure L2VPN EVPN.
cisco.ios.ios_facts Module to collect facts from remote devices.
cisco.ios.ios_hostname Resource module to configure hostname.
cisco.ios.ios_hsrp_interfaces Resource module to configure HSRP on interfaces.
cisco.ios.ios_interfaces Resource module to configure interfaces.
cisco.ios.ios_l2_interfaces Resource module to configure L2 interfaces.
cisco.ios.ios_l3_interfaces Resource module to configure L3 interfaces.
cisco.ios.ios_lacp Resource module to configure LACP.
cisco.ios.ios_lacp_interfaces Resource module to configure LACP interfaces.
cisco.ios.ios_lag_interfaces Resource module to configure LAG interfaces.
cisco.ios.ios_lldp_global Resource module to configure LLDP.
cisco.ios.ios_lldp_interfaces Resource module to configure LLDP interfaces.
cisco.ios.ios_logging_global Resource module to configure logging.
cisco.ios.ios_monitor_sessions Resource module to configure SPAN monitor sessions.
cisco.ios.ios_ntp_global Resource module to configure NTP.
cisco.ios.ios_ospf_interfaces Resource module to configure OSPF interfaces.
cisco.ios.ios_ospfv2 Resource module to configure OSPFv2.
cisco.ios.ios_ospfv3 Resource module to configure OSPFv3.
cisco.ios.ios_ping Tests reachability using ping from IOS switch.
cisco.ios.ios_prefix_lists Resource module to configure prefix lists.
cisco.ios.ios_route_maps Resource module to configure route maps.
cisco.ios.ios_service Resource module to configure service.
cisco.ios.ios_snmp_server Resource module to configure snmp server.
cisco.ios.ios_static_routes Resource module to configure static routes.
cisco.ios.ios_system Module to manage the system attributes.
cisco.ios.ios_user Module to manage the aggregates of local users.
cisco.ios.ios_vlans Resource module to configure VLANs.
cisco.ios.ios_vrf Module to configure VRF definitions.
cisco.ios.ios_vrf_address_family Resource module to configure VRF definitions.
cisco.ios.ios_vrf_global Resource module to configure global VRF definitions.
cisco.ios.ios_vrf_interfaces Manages VRF configuration on interfaces.
cisco.ios.ios_vxlan_vtep Resource module to configure VXLAN VTEP interface.

Installation

Install the certified Cisco IOS collection from Red Hat Ansible Automation Hub. Access to certified content requires a Red Hat account with an active Ansible Automation Platform subscription and an Automation Hub offline token. In the Red Hat Hybrid Cloud Console, go to Automation Hub > Connect Hub, load the offline token, and store it securely. See the Red Hat token management instructions.

Configure your ansible.cfg to use the hosted Automation Hub service:

[galaxy]
server_list = automation_hub

[galaxy_server.automation_hub]
url = https://console.redhat.com/api/automation-hub/content/published/
auth_url = https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token
token = <your_automation_hub_token>

Keep the token secret and out of source control. Then install the collection:

ansible-galaxy collection install cisco.ios --server automation_hub

For a requirements.yml file, identify Automation Hub as the source:

---
collections:
  - name: cisco.ios
    source: automation_hub

Install the requirements with ansible-galaxy collection install -r requirements.yml.

Installing from Ansible Galaxy for community use

For community use outside Red Hat supported environments, you can install the collection from Ansible Galaxy:

ansible-galaxy collection install cisco.ios

You can also add it to a requirements.yml file:

---
collections:
  - name: cisco.ios

Using this collection

This collection includes network resource modules.

Using modules from the Cisco IOS collection in your playbooks

You can call modules by their Fully Qualified Collection Namespace (FQCN), such as cisco.ios.ios_l2_interfaces. The following example task replaces configuration changes in the existing configuration on a Cisco IOS network device, using the FQCN:

---
- name: Replace device configuration of specified L2 interfaces with provided configuration.
  cisco.ios.ios_l2_interfaces:
    config:
      - name: GigabitEthernet0/2
        trunk:
          - allowed_vlans: 20-25,40
            native_vlan: 20
            pruning_vlans: 10
            encapsulation: isl
    state: replaced

NOTE: For Ansible 2.9, you may not see deprecation warnings when you run your playbooks with this collection. Use this documentation to track when a module is deprecated.

See Also:

Contributing to this collection

We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against the Cisco IOS collection repository. See Contributing to Ansible-maintained collections for complete details.

You can also join us on:

See the Ansible Community Guide for details on contributing to Ansible.

Code of Conduct

This collection follows the Ansible project’s Code of Conduct. Please read and familiarize yourself with this document.

Release notes

Release notes are available here.

More information

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.

评论

暂无评论