How Companies are using Ansible to solve their Challenges

What is Ansible ❓

Features of Ansible

  • Simple: Ansible Playbooks provide human-readable automation. This means that playbooks are automation tools that are also easy for humans to read, comprehend, and change. No special coding skills are required to write to them.
  • Powerful: You can use Ansible to deploy applications, for configuration management, workflow automation, and network automation. Ansible can be used to orchestrate the entire application life cycle.
  • Agentless: Ansible is built around an agentless architecture. Ansible connects to the hosts it manages using OpenSSH or WinRM and runs tasks by pushing out small programs called Ansible modules to those hosts.

What Ansible can automate

  • Configuration Management: Change the configuration of an application, OS, or device; start and stop services; install or update applications; implement a security policy; or perform a wide variety of other configuration tasks.
  • Application Development: When you define your application with Ansible and manage the deployment with Red Hat Ansible Tower, teams can effectively manage the entire application life cycle from development to production.

Ansible Architecture :

  • Managed Node: The systems you control using Ansible are called managed nodes. Ansible requires that managed nodes are reachable via SSH and have Python 2 (version 2.6 or higher) or Python 3 (version 3.5 or higher) installed.
  • Modules: Ansible works by connecting to your nodes and pushing out scripts called “Ansible Modules” to them. Most modules accept parameters that describe the desired state of the system. Ansible then executes these modules (over SSH by default) and removes them when finished.
  • Plugins: Plugins augment Ansible’s core functionality. While modules execute on the target system in separate processes, plugins execute on the control node within the /usr/bin/ansible process. Plugins offer options and extensions for the core features of Ansible.
  • Inventory: An inventory file contains a list of the hosts you’ll manage using Ansible. Although Ansible typically creates a default inventory file when installed, you can use per-project inventories to have a better separation of your infrastructure.
  • Playbook: A playbook contains an ordered list of tasks, and a few other directives to indicate which hosts are the target of that automation, Ansible executes tasks sequentially, and a full playbook execution is called a play. Playbooks are written in YAML format.
  • APIs: APIs in Ansible are used as transport for Cloud services, public or private.

Red Hat Ansible Tower

  • Real-Time Job Updates: Within Ansible Tower, the playbook runs stream by in real-time. As Ansible automates across your infrastructure, you’ll see plays and tasks complete, broken down by each machine, and each success or failure, complete with output.
  • Multi-Playbook Workflows: It allows you to chain any number of playbooks, regardless of the usage of different inventories, utilizes various credentials, or runs different users.
  • Job scheduling: Different kinds of jobs such as Playbook runs, cloud inventory updates and source control updates can be scheduled inside Ansible Tower to run according to the need.

NASA and Ansible Tower

  • Patching updates went from a multi-day process to 45 minutes
  • Achieving near real-time RAM and disk monitoring
  • Provisioning OS Accounts across an entire environment in under 10 minutes
  • Application stack set up from 1–2 hours to under 10 minutes per stack

“Ansible Tower has allowed us to provide better operations and security to our clients. It has also increased our efficiency as a team.”

— NASA

German Federal Office and Ansible Tower

  • Lower risk and easier completion
  • Faster response to internal customers

“Red Hat Ansible Tower is relatively simple compared to other tools and is very easy to understand.”

— FABIAN SEELBACH I.T. SYSTEMS ADMINISTRATOR, BLE

British Army and Ansible Tower

  • Accelerated deployment of critical patches from three days to three hours and reduce the delivery time by 75%
  • Improved agility by enhancing the DevOps approach used to deliver services to users

“Rather than bulk delivery, we are able to deliver incrementally, and we no longer frustrate users with significant downtime during working hours.”

LT. COL. DORIAN SEABROOK
HEAD OF OPERATIONS,
INFORMATION APPLICATION
SERVICES (IAS) BRANCH,
BRITISH ARMY

Thank You 😊

I'm passionate learner diving into the concepts of computing 💻