phil huang hat_0627/01.pdf · 2019-06-28 · nokia netact, sr os ubiquiti edgeos vyos exoscale...
TRANSCRIPT
Phil Huang <[email protected]>Solution Architect2019/06/27
Ansible for Network Automation
# whois Phil Huang
Red Hat Solution Architect● Ansible IT Automation● OpenShift Container Platform● SDN/NFV
管理網路的方式近30年沒有改變
現今管理網路的方式
為何需要自動化你的網路架構?
真正可直接執行的計畫
將日常任務規劃成可重用 (Reusable) 的工作項目
使用你既有的軟體開發模式
Agile, DevOps, Waterfall
比 PING 更好的測試方式
可與正式的測試平台直接集成 (Integrate) 測試
在部署階段更有信心
驗證更改 (Validate changes) 是否成功
確保正在運行中的環境是穩定且可控制狀態
WHY ANSIBLE?
SIMPLE POWERFUL AGENTLESS
不需 python
下載即可執行
沿用既有知識
適用於網路設備
不需要使用任何代理
採用標準 SSH 協定
透過各廠商模組連接
輕鬆地實現於各類平台
整合既有 Linux 工具
(for networks)
構建、管理動態 Inventory
基於角色控制 (RBAC) 的組織授權方式
利用 Ansible Workflow 來整合多平台任務
利用 RESTful API 整合任何第三方平台
為何 Ansible Tower 適合網路自動化?
Ansible Tower WEB UI
協作:兩人以上共同使用一份 Playbooks集中:想要集中化管理及維護 Playbooks 機制
整合:需要能透過 RESTful API 來控制 Playbooks授權:能整合 TACACS+, RADIUS, SAML, AD 等認證機制
稽核:當老闆想要詢問合規性檢查及查詢紀錄時
多平台:當你想要一鍵控制多個不同的平台
何時你需要考慮使用 Ansible Tower?
Watch Tower 守望塔
Well Defined Role Based API
API 驅動的基礎架構
ReputationMonitoring
Easily Customizable Back End
Servers
Storage
Networking{|}
1212 CONFIDENTIAL
VIRTUAL MACHINE
CONTAINERPLATFORM
1 2 5
4
7
3
68
Jira commit Git commit Commit code to master if approved
9
Jenkins hook
Build docs
Container Build
Run Ansible
Tower job
Deploy VM
ISSUE/BUG/ENHANCEMENT
VERSION CONTROL SYSTEM
BUILD/TEST DOCUMENTATION
BINARY/PACKAGE REPO
ELK STACK
USER ACTION
Log aggregation
Push build to
repo
Get Playbooks
& Roles
IP Address Management (IPAM)
Get/Assign IP
Network Devices
Deploy/manage
Enterprise Grade CI/CD Architecture
Con
trol
Ver
sion
Notifies of pass / failCheck Out Branch
Monitors repository for
changes
Deploy Playbooks
Test changes
Notifies of deployment
Notify of PR
Check In Branch / Create PR
Make Changes
Merge Branch
Pulls new Playbooks
Ansible Playbook
Network CI Workflow
12
3 4
• 資訊和當前主機狀態查詢和設定
– Ad hoc 或批量執行
– 迭代設定特定網段、VLAN、VRF– 使用 Ansible Vault 進行憑證管理
• 狀態檢查和驗證
– 可明確比較出 running config 及 startup config 的差異
• 多種調度例行任務方式
– 手動、透過 Tower 提供的 RESTful API, 透過 Tower 提供的排程機制
Automation Use Case
Automation Use Case
• 持續性合規計畫
– 可將狀態驗證 (Stateful validation) 和計畫整合在一起
– 彙整紀錄供稽核
• 集成第三方平台
– 接續 Zero Touch Provisioning 後的組態設定管理
– 使用 RESTful API• Splunk, ServiceNow, VMware, Elastic• Atlassian, GitLab, Jenkins, and most all Red Hat products
可使用 Ansible 網路模組
A10
Apstra AOS
Arista EOS, CVP
Aruba Networks
AVI Networks
Big Switch Networks
Brocade Ironware
Cisco ACI, AireOS, ASA, Firepower,IOS, IOS-XR, Meraki, NSO, NX-OSCitrix Netscaler
Cumulus Linux
Dell OS6, OS9, OS10
MikroTik RouterOS
Openswitch (OPX)
Ordnance
NETCONF
Netvisor
OpenSwitch
Open vSwitch (OVS)
Palo Alto PAN-OS
Nokia NetAct, SR OS
Ubiquiti EdgeOS
VyOS
Exoscale
Extreme EX-OS, NOS,SLX-OS, VOSS
F5 BIG-IP, BIG-IQ
Fortinet FortIOS, FMGR
Huawei CloudEngine
Illumos
Infoblox NIOS
Juniper JunOS
Lenovo CNOS, ENOS
Mellanox ONYX
CLOUD
SECURITY
NETWORK
DEVOPS
AWSAzure
CenturyLink
CloudScale
GoogleLinode
OpenStack
Rackspace
Docker Digital Ocean
PaloAlto
Check Point
Splunk
Snort
F5
AristaA10
Cumulus
Big Switch
Cisco
Dell
F5 JuniperPalo Alto
OpenSwitch
HipChat
IRC
Jabber
EmailRocketChat
Sendgrid
Slack
Twilio
INFRASTRUCTURERHEL
VMware
Windows
Netapp
Stacki
學習 Ansible• 參與既有的 Ansible 當地或國際社群• 參加 Red Hat 或其他地方的 Ansible 培訓課程及分享活動
制定成功標準 (Success Criteria)• 建立特定目標,為你的組織量身定制工作流程 (Pipeline)• 確保建立目標階段時,參與者和流程不會差距太多
從小規模開始著手吧!• 建立只讀或檢查的 Ansible Playbooks• 從最煩人但又很簡單的例行工作開始出發• 保持彈性
該如何開始?
Red Hat Ansible System Administrator 培訓管道
ANSIBLE SYSTEM ADMINISTRATOR
DO409Automation with Ansible II:
Ansible Tower
DO407*Automation with Ansible I
Red Hat Certificate of Expertise in Ansible
Automation
DO007Ansible Essentials:
Simplicity in Automation
DO457Ansible for Network
Automation
DO407 - Learn to use Ansible to automate system administration tasks on managed hosts & write Ansible Playbooks to standardize task executions.
DO409 -Learn to configure users and teams for role-based access control to Tower resources & Perform basic maintenance and administration of an Ansible Tower installation.
DO457 - You will be able to use Red Hat Ansible Automation for Networking to write Ansible playbooks and launch them to manage the routers, switches, and other devices in your network infrastructure.
Impact of Training:
我們的目標是
幫助你推動
系統邊界
讓你能透過自動化加速迭代
透過整合與共同協作
AUTOMATION EVERYWHERE
ResourcesAnsible Networking Homepage:ansible.com/networking
Download the latest Ansible:releases.ansible.com/ansible/
Evaluate Ansible Tower:ansible.com/tower-trial/Email: [email protected]
Join the CommunityUsers list: ansible-projectDevelopment list: ansible-develAnnouncement list: ansible-announce (read only)irc.freenode.net: #ansibleslack.networktocode.com: #ansible