Case Study: How Cisco uses Ansible in Solving Industrial Challenges

Gaurav Tank
6 min readDec 29, 2020

In this blog, we are going to see how Cisco uses Ansible in solving the challenges. But first, let us see what is Ansible.

What is Ansible?

Ansible is a radically simple IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs.

Being designed for multi-tier deployments since day one, Ansible models your IT infrastructure by describing how all of your systems inter-relate, rather than just managing one system at a time.

It uses no agents and no additional custom security infrastructure, so it’s easy to deploy — and most importantly, it uses a very simple language (YAML, in the form of Ansible Playbooks) that allow you to describe your automation jobs in a way that approaches plain English.

Advantages of Ansible

  • Free: Ansible is an open-source tool.
  • Very simple to set up and use: No special coding skills are necessary to use Ansible’s playbooks (more on playbooks later).
  • Powerful: Ansible lets you model even highly complex IT workflows.
  • Flexible: You can orchestrate the entire application environment no matter where it’s deployed. You can also customize it based on your needs.
  • Agentless: You don’t need to install any other software or firewall ports on the client systems you want to automate. You also don’t have to set up a separate management structure.
  • Efficient: Because you don’t need to install any extra software, there’s more room for application resources on your server.

What is Cisco?

Cisco Systems, Inc. is an American multinational technology conglomerate headquartered in San Jose, California, in the center of Silicon Valley. Cisco develops, manufactures, and sells networking hardware, software, telecommunications equipment, and other high-technology services and products. Through its numerous acquired subsidiaries, such as OpenDNS, Webex, Jabber, and Jasper, Cisco specializes in specific tech markets, such as the Internet of Things (IoT), domain security, and energy management. Cisco is incorporated in California. Cisco Systems was founded in December 1984 by Leonard Bosack and Sandy Lerner, two Stanford University computer scientists who had been instrumental in connecting computers at Stanford. They pioneered the concept of a local area network (LAN) being used to connect geographically disparate computers over a multiprotocol router system.

How Cisco is benefitted with Ansible?

Introduction: As customers embrace the DevOps model to accelerate application deployment and achieve higher efficiency in operating their data centers, the infrastructure needs to change and respond faster than ever to business needs. DevOps can help you achieve an agile operational model by improving automation, innovation, and consistency. In this blog let us go on a quick journey of how Red Hat Ansible and Cisco ACI helps you address these challenges quickly and proficiently.

Ansible and Cisco ACI — The perfect pair that enables a true DevOps model: In many customer IT environments, network operations still remain entrenched in error-prone manual processes. Many of the earlier generation folks that were attracted to network operations didn’t want to be programmers, rather they were more interested in implementing and maintaining network policies using CLI and monolithic means on proprietary platforms. In recent times, best-practices in Server-side and DevOps practices have started influencing the networking world with Cloud Administrators forced to support both the compute and network resources. However, in many cases, entirely moving away from traditional network operations may not be possible, just as a 100% DevOps strategy may not be a good fit. The best strategy: The most with the least amount of change or energy. Automation is the natural solution here — it can make the most unproductive and repetitive tasks ideal candidates for automation. Together, Cisco ACI and Ansible provide a perfect combination enabling customers to embrace the DevOps model and accelerate ACI Deployment, Monitoring, day-to-day management, and more.

Cisco ACI — Red Hat Ansible solution: Ansible is the only solution in the market today to address network automation challenges, with its unified configuration, provisioning and application deployment, and creating favorable business outcomes like accelerated DevOps and a simplified IT environment.

Ansible brings lots of synergies to an ACI environment with its simple automation language, powerful features such as app-deployment, configuration. management and workflow orchestration and above all an agentless architecture that makes the execution environment predictable and secure.

In the latest Ansible release (2.9), there are over 100 ACI and Multisite modules in Ansible core. Modules for specific objects like Tenant and Application Profiles as well as a module for interacting directly with the ACI REST API. This means that a broad set of ACI functionality is available as soon as you install Ansible. After installing Ansible only two things are required to start automating an ACI Network Fabric. First, an Ansible playbook, which is a set of automation instructions, and two, the inventory file which lists the devices to be automated in this case an APIC. The playbooks are written in YAML to define the tasks to execute against an ACI fabric. Here is an ACI playbook sample that configures a Tenant on an APIC.

How Ansible-ACI integration works?

The picture below represents users creating inventory files (for the APICs we want Ansible to manage), creating the playbooks (what tasks we want to run/automate on the target systems — the APICs), and leverage the available ACI modules for the tasks you want to configure/automate. Ansible then pushes those configuration tasks via the APIC REST API through HTTPS to the target system, the APIC.

The ACI Ansible modules help cover a broad set of Datacenter use cases. These include,

Day 0 — Initial installation and deployment — Configuration of universal entities and policies, for example, switch registration, naming, user configuration, and firmware update.

Day 1 — Configuration and Operation — Initial Tenant creation, along with all the Tenant child configurations, for example, VRF, AP, BDs, EPGs, etc.

Day 2 — Additional Configuration and Optimization — Add/Update/Remove Policies, Tenants, Applications, for example, add a contract to support a new protocol in an existing EPG.

Key Benefits of ACI-Ansible solution

Enables Admins to align on a unified approach to managing ACI the same way they manage other Data Center and Cloud infrastructure.

ACI Ansible modules provide broad coverage for many ACI objects

ACI Ansible modules are idempotent ensuring that playbook results are always the same

ACI Ansible modules extend the trusted secure interaction of the ACI CLI and GUI.

No Programming Skills required with the Ansible module.

Conclusion

Ansible Automation is fast gaining traction with support for multiple networking OS platforms. Ansible adoption is a journey, and new users need not abandon their traditional network practices, rather helps build bridges between legacy and modern DevOps practices.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Responses (1)

Write a response

Nice study Bro and it really impressive