How ansible is helping different companies for solving there use cases.
What is Ansible? Ansible is an open-source IT automation engine, which can remove drudgery from your work life, and will also dramatically improve the scalability, consistency, and reliability of your IT environment. We’ll start to explore how to automate repetitive system administration tasks using Ansible.
You can use Ansible to automate three types of tasks:
- Provisioning: Set up the various servers you need in your infrastructure.
- 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 deployment: Make DevOps easier by automating the deployment of internally developed applications to your production systems.
Ansible can automate IT environments whether they are hosted on traditional bare metal servers, virtualization platforms, or in the cloud. It can also automate the configuration of a wide range of systems and devices such as databases, storage devices, networks, firewalls, and many others.
WHY ANSIBLE ?
There are many other IT automation tools available, including more mature ones like Puppet and Chef, so why would you choose Ansible? The main reason is simplicity. Michael DeHaan, the creator of Ansible, already had a lot of experience with other configuration management tools when he decided to develop a new one. He said that he wanted “a tool that you could not use for six months, come back to, and still remember.”
DeHaan accomplished this by using YAML, a simple configuration language. Puppet and Chef, on the other hand, use Ruby, which is more difficult to learn. This makes Ansible especially appealing to system administrators.
DeHaan also simplified Ansible deployment by making it agentless. That is, instead of having to install an agent on every system you want to manage (as you have to do with Puppet and Chef), Ansible just requires that systems have Python (on Linux servers) or PowerShell (on Windows servers) and SSH.
Although Ansible is easier to learn than many of the other IT automation engines, you still need to learn a lot before you can start using it. To help you with this, Cloud Academy has released its Introduction to Ansible learning path.
This learning path includes three video courses:
- What is Configuration Management?: A high-level overview of configuration management concepts and software options.
- Getting Started With Ansible: Covers everything from Ansible components to writing and debugging playbooks in YAML.
- Introduction to Managing Ansible Infrastructure: An overview of Ansible Tower (Red Hat’s proprietary management add-on to Ansible) and Ansible Galaxy (a place to find and share Ansible content).
Hands-on practice is critical when learning a new technology, so we have included two labs in the learning path:
- Getting Started With Ansible: Create your first playbook to build a LAMP (Linux, Apache, MySQL, Python) stack on an EC2 instance.
- Ansible: Deploying Web Applications: Learn about roles, templates, and handlers by deploying a Python application.
ANSIBLE AND MICROSOFT AZURE -
Chances are teams in your organization are already successfully deploying workloads in public cloud. As more new applications are built natively for the cloud, IT leaders are looking for ways to deliver a consistent customer experience and management strategy across cloud and on-premise applications. The good news — if your IT teams are already using Ansible to describe on-premise infrastructure and applications, then you can easily use these descriptions to automate the same workloads in Microsoft Azure.
Azure supports customers’ push to hybrid cloud in the areas of infrastructure, user identity and management. Using Ansible to automate these Azure services gives organizations the flexibility to run workloads where they best make sense.
Azure hosts a lot more than just Windows, and thankfully Ansible automates it all. Ansible has been designed for cloud deployments from the beginning, and Ansible easily allows you to provision a variety of Azure cloud services. Whether you’re building a simple 3-tier application, or a complicated set of virtual private clouds, services, and applications, your Azure environments can be described in Ansible Playbooks, and then scaled out across regions.
Ansible has modules for many different Azure capabilities, including:
- Virtual Machines
- Virtual Networks
- Storage and Storage Accounts
- Resource Groups
- Security Groups
- Resource Manager Templated Deployments
Ansible also has hundreds and hundreds of additional modules that help you manage every aspect of your Linux, Windows, UNIX, network infrastructure, and applications — regardless of where they’re deployed.