Ansible is an orchestration/automation tool, just like Chef or Pupper which are other alternatives to ansible, but ansible main advantage is that it can work through ssh, so target machines don't need ansible installed.
Big advantage is that it uses declarative playbooks (define what you want done) instead of imperative scripting (define what you want and how).
day-0;getallofyourinfrastructure;hardware/public-cloudetc.day-1;usesomethinglikeAnsibletosetuptheinfrastructurecomponents(EC2nodes,hardwareserversorGCEinstances)day-2;installk8sonthemtostartrunningcontainerizedworkloadsday-3;usek8snativemechanismstodeployandmanageandmonitorapplications (Day 2 and 3 is ideal, but i think we will just deploy the containers through our build system not k8s)
Ansible can help with availability, and we will use it to test, like if an ioc needs another ioc to run for testing, specifying which machine and what resources, ansible should handle that deployment.
Why Ansible
Reduces complexity and runs anywhere.
Lets you automate any task,
Agentless, the managed nodes only need to be accessible via ssh and sftp or scp, and python installed.