ANSIBLE AND THE NASA, COGAPP AND NETAPP CASE STUDIES.
By: Sarvjeet Jain
Tags: Case Study, Ansible Tower, NASA, Ansible, Ansible Playbook

If you are looking to know How Companies are using Ansible for Automation. Then, a warm WELCOME OF YOU, you are in the right place.

Fig-1.1

I think without jumping directly to the Case Studies of Ansible, we should have to first discuss about what is Ansible, and why we need Ansible.

WHAT IS ANSIBLE?

Ansible was written by Michael DeHaan and acquired by RED HAT in 2015. Ansible is an open source community project sponsored by RED HAT, it’s the simplest way to automate IT. Ansible is the only automation language that can be used across entire IT teams from systems and network administrators to developers and managers to automate lifecycle- from servers to clouds to containers and everything in between. It is only used for CONFIGURATION MANAGEMENT. Everybody likes it because it brings huge time savings when we install packages or configure large numbers of servers. Ansible have Two Types of Nodes-

CONTROLLER NODE- The System where we have to Install Ansible. TARGET OR MANAGED NODE- The System which we have to Configure or Manage.

It runs on many Unix-like systems, and can configure both Unix-like systems as well as Microsoft Windows. It includes its own DECLARATIVE LANGUAGE to describe system configuration means it is that much Intelligence that we just only have to tell Ansible that WHAT IT HAVE TO BE DO in Target Node or Managed Node.

The design goals of Ansible include-

Minimal in nature : Management systems should not impose additional dependencies on the environment.

: Management systems should not impose additional dependencies on the environment. Consistent: With Ansible one should be able to create consistent environments.

With Ansible one should be able to create consistent environments. Secure: Ansible does not deploy agents to nodes. Only OpenSSH and Python are required on the managed nodes.

Ansible does not deploy agents to nodes. Only OpenSSH and Python are required on the managed nodes. Highly reliable : When carefully written, an Ansible playbook can be idempotent, to prevent unexpected side-effects on the managed systems. It is entirely possible to have a poorly written playbook that is not idempotent.

: When carefully written, an Ansible playbook can be idempotent, to prevent unexpected side-effects on the managed systems. It is entirely possible to have a poorly written playbook that is not idempotent. Minimal learning required: Playbooks use an easy and descriptive language based on YAML and Jinja templates.

WHY WE NEED ANSIBLE?

Working in IT, you’re likely doing the same tasks over and over. What if you could solve problems once and then automate your solutions going forward? Yes, only one time we have to write code in Ansible to solve or configure the software’s or tools in Target Nodes, then just by updating the Inventory File of Ansible, we can use same playbook for any type of Target Node for configuration.

Using Ansible, we’ve been able to cut down certain processes from 17 hours to 3 minutes. BRANDEN FAULLS

Head of Platform

No one likes repetitive tasks. With Ansible, IT admins can begin automating away the drudgery from their daily tasks. Automation frees admins up to focus on efforts that help deliver more value to the business by speeding time to application delivery, and building on a culture of success. Ultimately, Ansible gives teams the one thing they can never get enough of: time. Allowing smart people to focus on smart things.

TERMINOLOGIES OF ANSIBLE THAT WE NEEDED IN THIS ARTICLE-

ANSIBLE TOWER-

Ansible Tower is a REST API, web service, and web-based console designed to make Ansible more usable for IT teams with members of different technical proficiencies and skill sets. It is a hub for automation tasks. Tower is a commercial product supported by Red Hat, Inc. but derived from AWX upstream project, which is open source since September 2017.

With Ansible Tower we can centralize and control our IT infrastructure with a visual dashboard, role-based access control, job scheduling, integrated notifications and graphical inventory management. Easily embed Ansible Tower into existing tools and processes with REST API and CLI.

ANSIBLE ENGINE-

While the upstream Ansible community is known for fast-moving innovations, many enterprises require a more secure, stable and reliable approach. With Ansible Engine, organizations can access the tools and innovations available from the underlying Ansible technology in a hardened, enterprise-grade manner. Ansible Engine relies on the massive, global community behind the Ansible project, and adds in the capabilities and assurance from Red Hat that your business requires in order to comfortably adopt organization-wide automation, and at any scale you can bring.

Ansible Engine is made up of the components central to Ansible automation — the task engine, OpenSSH and WinRM transports, and the Ansible language itself.

So, let’s start to take some knowledge about How NASA, COGAPP, NETAPP Companies are using Ansible.

NASA: INCREASING CLOUD EFFICIENCY WITH ANSIBLE AND ANSIBLE TOWER-

The National Aeronautics and Space Administration is an independent agency of the U.S. federal government responsible for the civilian space program, as well as aeronautics and space research. NASA was established in 1958, succeeding the National Advisory Committee for Aeronautics (NACA).

WHAT CHALLENGE’S NASA FACED-

NASA needed to move roughly 65 applications from a traditional hardware based data center to a cloud-based environment for better agility and cost savings. The rapid timeline resulted in many applications being migrated ‘as-is’ to a cloud environment. This created an environment spanning multiple virtual private clouds (VPCs) and AWS accounts that could not be easily managed. Even simple things, like ensuring every system administrator had access to every server, or simple patching, were extremely burdensome.

There issues was Increase Efficiency and Cloud Migration.

SOLUTION OF THIS CHALLNEGE-

Leverage Ansible Tower to manage and schedule the cloud environment.

Result of implementing Ansible Tower, NASA is better equipped to manage its AWS environment. Tower allowed NASA to provide better operations and security to its clients. It has also increased efficiency as a team. By the numbers:

• Updating nasa.gov went from over 1 hour to under 5 minutes.

• Patching updates went from a multi-day process to 45 minutes.

• Achieving near real-time RAM and disk monitoring (accomplished without agents).

• Provisioning OS Accounts across entire environment in under 10 minutes.

• Baselining standard AMIs went from 1 hour of manual configuration to becoming an invisible and seamless background process.

• 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

So, this is how NASA uses Ansible. Now next we have to study how Cogapp using Ansible.

COGAPP CASE STUDY-

Cogapp is a British company specialising in consultancy, design and production of interactive and online multimedia applications, especially in the cultural sector where it is a leader within the industry. The company was founded in 1985 and is based in Brighton, on the south coast of England. Their clients include several major museums including the National Portrait Gallery in London and MoMA in New York. Cogapp’s most recent site launch was the Qatar Digital Library.

CHALLENGES THEY HAD-

Environment provisioning and content deployment. These are the challenges Cogapp faced before Ansible.

HOW IS COGAPP USING ANSIBLE?-

They use Ansible to build out the servers for deployments and to provision development VMs for our team. They also use Ansible to populate sample content for our development environments.

There development team is 12 people; at least half of them have written or edited playbooks, and all of them have run playbooks to provision environments. When they started working with Ansible, each new project would cannibalize the last one and take some of the Ansible content. Now they have built a more standard library of content so they can spin up new projects quicker. They also use Galaxy roles wherever possible to standardize there server hardening playbooks so they can be shared across deployments.

RESULT-

Qualitatively, Ansible helps to reduce the possibility of problems caused by environmental drift both in a single environment, and across multiple dev/test/staging/ production environments. The big advantage is that they can push out exact replicas of existing clusters and environments, plus do clear blue-green testing of simple tweaks. “The Ansible scripts are the documentation” — we can say at any time what the details of the conﬁguration are. Ansible has given us a lot more conﬁdence in the infrastructure they manage — both in knowing exactly what’s going on, and to be able to quickly request a change.

“Ansible has given us a lot more conﬁdence in the infrastructure we manage — both in knowing exactly what’s going on, and to be able to quickly request a change.”

– Tristan Roddis (Head of Web Development) — Adrian Hindle (Developer)

So, this is how Cogapp using Ansible for Automation. Now next is NETAPP.

NETAPP AUTOMATES I.T. TASKS FOR FASTER APPLICATION DELIVERY WITH RED HAT-

NetApp, Inc is an American hybrid cloud data services and data management company headquartered in Sunnyvale, California. It has ranked in the Fortune 500 since 2012. Founded in 1992 with an IPO in 1995, NetApp offers hybrid cloud data services for management of applications and data across cloud and on-premises environments. . The company empowers customers to simplify and integrate data management across cloud and on-premise environments to accelerate digital transformation. Together with its partners, NetApp provides a full range of hybrid cloud data services to help global organizations unleash the full potential of their data to expand customer touchpoints, foster greater innovation, and optimize their operations.

CHALLENGES THEY FACED-

NetApp delivers data management solutions that help organizations use information to its full potential. The company’s globally distributed corporate IT environment includes four datacenters with 58PB of storage, production footprints in both Amazon Web Services (AWS) and Microsoft Azure, more than 5,300 servers — 75% of which are virtualized — and 560 enterprise applications.

To meet a strategic directive to make the enterprise more lean and agile, NetApp’s corporate IT team continuously seeks to improve the efficiency of IT services and application delivery — for example, by adopting a DevOps software delivery approach and a hybrid cloud approach to infrastructure services.

However, this team faced significant challenges, such as the high level of time and effort required to manage infrastructure and delays in application delivery due to a lack of dynamic storage provisioning.

Similar to other IT organizations, NetApp was also hindered by repetitive, manual processes. For example, updating the network time protocol (NTP) clients of NetApp’s thousands of servers manually took about 5 minutes per machine or 25,000 total minutes. Traditional approaches, such as using scripts to iterate across servers with a stream editor, could not effectively account for high variations in configurations. As a result, this simple maintenance task would require 415 employee hours, or 52 8-hour work days, with high risk of inconsistency. Manual provisioning of persistent storage also prevented NetApp from achieving its goal of delivering software using a container- and microservices-based approach.

To overcome these challenges, NetApp needed a dynamic provisioning solution to support its in-house storage technologies, as well as a fully supported and integrated container platform. “We were looking for a scalable, consistent, and programmatic approach to eliminate manual work and human error,” said David Fox, senior UNIX engineer at NetApp.

HOW THEY USES ANSIBLE-

As an active open source participant and a long-time user of Red Hat software, NetApp decided to pilot Red Hat Ansible Engine, part of Red Hat Ansible Automation, in its NTP update project to eliminate repetitive manual tasks in configuration management. Ansible Engine is an agentless automation platform based on a powerful yet human-readable language that communicates with existing systems, applications, and tools. NetApp’s corporate IT team has used Ansible Engine to automate dozens of previously manual processes and continue to streamline its processes.

“Red Hat Ansible Automation was well-suited to templating the configuration files we needed for our NTP update to speed and automate the project. Once we saw what it could do, we started to see automation opportunities everywhere,” - said Fox.

RESULT-

ACCELERATED INFRASTRUCTURE MAINTENANCE-

NetApp streamlined the iterative configuration file changes required for the NTP project with Ansible Engine, cutting the work from weeks to days.

“This project had occupied dozens of staff for weeks, with many more weeks to go,” -said Fox. “With Ansible, we completed it in two days: one day to write the new template and playbook, then one day to run it and restart the services. If we need to make standardized changes in our IT environment, we use Ansible to save hundreds of work hours.”

Ansible Engine also eliminates the human errors that inevitably occur in highly iterative manual tasks.

“If I make an error in my Ansible Playbook, I’ll find and correct it when I test my code, then Ansible will run its delivery process, without opportunities for new errors to be introduced,” - said Fox. “It really turns infrastructure maintenance into something more like a software application. It’s infrastructure as code.”

REDUCED DELIVERY TIME FROM WEEKS TO MINUTES

Eliminating the bottleneck created by manual processes for persistent storage provisioning has helped NetApp dramatically accelerate application delivery.

“With Red Hat OpenShift, we can very quickly spin up compute resources for containerized applications, and we can do the same for storage with NetApp Trident,” -said Fox. “Using them together, we can deliver full-featured stacks in minutes or even seconds, instead of days or weeks.”

GAINED SUPPORT FOR BUSINESS EVOLUTION

Over the past five years, NetApp’s IT team has been on a journey to evolve their as-a-service delivery methods and shift to become more business- and service-focused. Automation and containerized applications play a key role in redirecting the resources reclaimed as a result of these efforts to more proactive, strategic IT initiatives.

“Red Hat technology is helping us revolutionize our hybrid cloud approach to build cloud capabilities with microservices running containers, through OpenShift with NetApp Trident, as well as API [application programming interface] provisioning,” - said Fox.

Finally, we understand How NASA, COGAPP, AND NETAPP is using Ansible for Automation.

Thank you for Reading this Article. Hope, it Helps you.

For more such Articles, stay connected with me.