Sumit JaiswalSenior Software Engineer, [email protected]
Get Automating with Infoblox DDI IPAM and Ansible
Sailesh Kumar GiriProduct Manager, Cloud, [email protected]
AGENDA
10 Minutes: Intro to Infoblox (Sailesh)
25 Minutes: Infoblox Ansible Modules Detailed (Sumit)
15 Minutes: Demonstration (Sailesh)
15 Minutes: Q&A
October 2-3
Infoblox: The DDI LeaderSelected Alliance Partners
“All organizations looking to deploy DDI should consider Infoblox.”
–
▪ Over 8,000 customers▪ 83 of Fortune 100▪ Global sales and support▪ Consistent investment in DDI
Infoblox DNS, DHCP and IPAM (DDI)• Automate, Consolidate and Secure your Core Network Services• Manage all IP addresses for your Enterprise Network and Hybrid Cloud on a single console
and database• Control network services from a single, distributed platform• Gain visibility, trending analysis, user correlation and predictive reporting
Reporting and Analytics
Consolidated DNS, DHCP
and IPAM Platform
Automation with APIs,
ecosystem integrations
High Availability and Disaster
Recovery
Flexible deployment on physical, virtual
and Cloud
Consolidated Management of DNS,
DHCP and IPAM
Ensure Secure DNS and Always-On
Services
Access to Rich Reporting and
Analytics
Single console and database for
physical, virtual and Cloud
6 | © 2013 Infoblox Inc. All Rights Reserved. 6 | © 2018 Infoblox Inc. All Rights Reserved.
• Highly scalable
• Central management
• Visibility across physical & virtual networks
• Five-9s service availability
• Visibility to cloud workloads
• Standard API’s for ecosystem integration
Grid MemberDNS / DHCP
Microsoft DNS, DHCP
Branch Office
Cloud Orchestration
Integration
VMware OpenStack
XenHyper-V
AWS
Virtualization & Cloud Integration / Automation
Grid MemberDNS / DHCP
Grid Master Candidate
@Recovery SiteGrid Master
Infoblox Grid
Grid MemberDNS / DHCP
Patented Grid Technology – The Infoblox AdvantageReliable, distributed, and secure platform with centralized management
The Power of Cloud Network Automation
Manual
Traditional Approach
ProvisionVirtual
Instance
1
Request IP
or UseAllotment
2
Forward IP
Data forTracking
3
UpdateDatabase orSpreadsheet
4
RequestDNS
Record
5
Allocateand
ManuallyEnter DNS
6
Clean UpWhen
De-provisioned
1 62 3 4 5
Automated
ProvisionVirtual
Instance
Automated
Automated
Infoblox Cloud Network Automation✓ Implement change anytime Eg: DNS names, IP addresses
✓ No tickets between network, server teams for DNS, IP
✓ Automatic reclamation of resources upon spin down
SIMPLE POWERFUL AGENTLESSGather Information and Audit
Configuration management
Workflow orchestration
Manage ALL IT infrastructure
Human readable automation
No special coding skills needed
Tasks executed in order
Get productive quickly
Agentless architecture
Uses OpenSSH and paramiko
No agents to exploit or update
More efficient & more secure
Automating with AnsibleAnsible is an open-source IT configuration management, deployment, and orchestration tool based on Python.
It’s designed to be minimal in nature, consistent, secure, and highly reliable, with an extremely low learning curve for administrators, developers and IT managers.
STORAGE NETWORK SECURITYSERVERS
WITHOUT ANSIBLE
TEAMS IN SILOS
TOOL A TOOL B TOOL C TOOL D
STORAGE NETWORK SECURITYSERVERS
WITH ANSIBLE
THE UNIVERSAL LANGUAGE
Infoblox Integration with Ansible
The Ansible 2.5 release includes following Infoblox Network Identity Operating System (NIOS) enablement: Five Modules A lookup plugin (for querying Infoblox NIOS objects) A dynamic inventory script
ANSIBLE INFOBLOX MODULES
NIOS_DNS_VIEW
Configure DNS views
NIOS_NETWORK
Configure Network Objects
NIOS_NETWORK_VIEW
Configure Networking Views
NIOS_ZONE
Configure DNS Zones
NIOS_HOST_RECORD
Configure HOST records
First released in Ansible 2.5, fully supported by Red Hat via Ansible Engine 2.6 subscription
NIOS_NETWORK_VIEW Module PLAYBOOK Example
---- name: Nios Network View hosts: localhost connection: local tasks: - name: Create Network View nios_network_view: name: ansible-new-view comment: this is an example comment state: present provider: "{{ nios_provider }}"
NIOS_ZONE Module PLAYBOOK Example
---- name: Nios zone hosts: localhost connection: local tasks: - name: Create Zone nios_zone: name: ansible.com state: present comment: this is an example comment provider: "{{ nios_provider }}"
---- name: Nios Dns view hosts: localhost connection: local tasks: - name: Create DNS View nios_dns_view: name: ansible-dns comment: test new comment state: present provider: "{{ nios_provider }}"
NIOS_DNS_VIEW Module PLAYBOOK Example
NIOS_NETWORK Module PLAYBOOK Example
---- name: Nios Network hosts: localhost connection: local tasks: - name: Configure an Ipv4 network view nios_network: network: 192.168.10.0/24 comment: this is an example comment state: present provider: "{{ nios_provider }}"
NIOS_HOST_RECORD Module PLAYBOOK Example
---- hosts: localhost connection: local tasks: - name: Create Host record with name as 'test_host' in 'ansible.com' zone nios_host_record: name: test_host.ansible.com ipv4: - address: 192.168.10.1 comment: this is an example comment state: present provider: "{{ nios_provider }}"
Ansible Infoblox Lookup PluginPLAYBOOK FOR SEARCHING PARTICULAR HOST:
VERBOSE OUTPUT:
Ansible Infoblox Lookup PluginPlaybook for NEXT AVAILABLE IP:
VERBOSE OUTPUT:
Ansible Infoblox Dynamic InventoryDEBUG PLAYBOOK:
HOSTS LIST DEBUG OUTPUT VIA DYNAMIC INVENTORY:
How Ansible and Infoblox Works together
Network Engineer ANSIBLE+Infoblox DDI GridRound the clock Network Automation
22 | © 2013 Infoblox Inc. All Rights Reserved. 22 | © 2018 Infoblox Inc. All Rights Reserved.
Demo
Ansible Server
Infoblox Grid
Ansible Server:• OS – Ubuntu 16.04.4 • Python – 2.7.12 • Ansible – 2.5.0 or higher• PIP package management system from python• Infoblox-client WAPI client to perform WAPI calls to Infoblox.
Infoblox Grid (NIOS):• NIOS 8.2.4• Cloud admin account (cloud-api-only)• Permissions – DNS (all DNS views), DHCP (all Network
views), Grid (all members)
infoblox-client
Q&A
24
Thank [email protected]
github.com/network-automation
facebook.com/ansibleautomation
twitter.com/ansible