敏捷與智能?
不管基於意圖的CiscoDNA,還是敏捷為生,適者生存的華為。都不約而同的把未來網絡的關注點放在裡自動化、高效率、可視化。不同的廠商也爭先恐後的開放更加豐富的API,如果不順應環境,其實極大的浪費。
SDN?Ansible!
瞭解SDN的小夥伴應該知道,SDN最初就是要解耦合,當網絡設備成為白盒,而控制層面有統一的controllor統一管理,那自動化才真正的大戰拳腳。不過現實很骨幹,目前網絡廠商依然掌握著話語權,不同廠商的系統,想像linux一樣在Client安裝agent幾乎不可能。但是,Ansible的輕量級,無需Agent,僅需要SSH(我們暫且這麼理解),並且主流的廠商(Cisco、Huawei、Arista、A10、F5等)都提供了豐富的模塊。如果說對於自動化python編程極易入手,那麼ansible能力要求更低,需要做的只有:完整的邏輯並找到相應的模塊。
從本篇開始以需求編寫相應的代碼,一起學習ansible網絡自動化。
②
小試牛刀(最最最簡單的示例)
現上架N臺交換機有以下需求:
①創建5個privilege15的管理員賬號
②vlan 10、20、30、40分別以vlan名稱命名
③保存配置
拓撲圖如下(使用eve模擬):
1、創建inventory_host文件:
[new device]
tor1 ansible_host=192.168.157.100
tor2 ansible_host=192.168.157.101
tor3 ansible_host=192.168.157.102
[new device:vars]
ansible_ssh_user=admin
ansible_ssh_pass=Cisco@123
ansible_connection=local
2、針對相應的需求查找相應的模塊:
1)創建用戶:
找到相應的示例:
例如我們需要創建用戶,可以使用ios_config模塊,代碼稍加修改既可:
[new device]
2)創建vlan
需要創建4個vlan,我們使用循環語句,代碼如下:
tor1 ansible_host=192.168.157.100
3)保存配置:
仍然使用ios_config模塊的功能
tor2 ansible_host=192.168.157.101
全部代碼如下:
本次與大家分享最簡單最入門的功能,下期一起分享防火牆及負載均衡的常用腳本,有任何問題歡迎劉洋討論.
閱讀更多 likeyuNG 的文章