Tuesday, January 11, 2022

Ansible - Automation Essentials - Part 1 [ Introduction to Ansible in Ansible - Automation ]

What are You Going to Learn?

We hope you have gained a good understanding of what is Infrastructure as a code. In this course, you will learn about

  • Ansible and its benefits
  • Ansible in Infrastructure as Code (IaC)
  • YAML format
  • Few Ad_Hoc commands
  • Different parts of Ansible
  • Role of Modules in Ansible
  • How to write Playbooks
  • How to Control the flow of execution in Ansible
  • Few points about configuration file (ansible.cfg)
  • How to setup environment in local machine and online playground

By the end of this course, you will be in a position to write a few ad-hoc commands and a Playbook of your own.

What Is Infrastructure As Code?


IaC means writing code for infrastructure i.e. your systems and devices, which are used to run Softwares, are to be treated as software and defined using code(which can be done using a high level or descriptive language).

For example version control, testing, small deployments, use of design patterns, etc.

Configuration Management tools are used to accomplish IaC.

Why are You Here?


Infrastructure as Code can be achieved using Ansible, which is one of the popular Configuration Management tools. In this course, we will have you explore various capabilities of Ansible.

What is Configuration Management?


Configuration Management is a process of establishing, tracking and controlling the current design and build state of the system (software versions).

It also ensures that past records of system state are easily and accurately accessible which helps in project management, audit purposes, debugging etc.

Before Configuration Management

Consider you are planning for a New Year Special Sale on your e-commerce site. You need to

  • Scale up your servers
  • Then configure them(and all other old servers) for special new year sale
  • This whole process would take a lot of effort and time
  • What if new configurations did not work as expected? Then you will have to roll back to the previous stable version, which will add more work and subtract the profits and potential customers while in downtime.

Configuration Management Tools

You need some kind of Configuration Management tool that can automate these tasks:

  • Rollback to the stable version with zero downtime
  • Provide you with a constant computing environment throughout SDLC
  • Automatically scale up or down depending upon traffic

Some of the popular Configuration Management tools are Ansible, Puppet, Chef and Saltstack.

You will now learn more about Ansible in upcoming cards.

What is Ansible?


Ansible is open-source software, first released by Michael DeHaan in 2012 and owned by Red Hat.

It is used to automate

  • configuration management
  • application deployment
  • software provisioning and other IT needs

Benefits of Ansible

  • Simple: Very easy to install, set up and learn. Written in YAML file which is pretty much like reading English
  • Agentless: Do not need to install any agents on target nodes.
  • Powerful: It can model any complex IT workflow as it has 1100+ modules
  • Efficient: You can customize modules, using any programming language
  • Secure: Uses SSH for connection

Wondering about the YAML language?? Read on to discover 

No comments:

Post a Comment