官术网_书友最值得收藏!

Ansible Tower, Jenkins, and Other Automation Tools

Ansible is powerful. Once you realize the innumerable benefits of writing down a way to configure and provision systems, you will never want to go back. In fact, you may want to go ahead and write playbooks for complex cloud environments to deploying stacks for data scientists. The rule of thumb is if you can script it, you can create a playbook for it. 

Let's assume that you have gone ahead and done just that. Build different playbooks for a variety of scenarios. If you see the advantages of codifying how infrastructure is built and provisioned, you will obviously want to put your playbooks under version control:

Multiple playbooks stored under version control, ready to be deployed to systems for provisioning

At this point, we have solved interesting challenges surrounding automation:

  • We now have the ability to replay commands against multiple targets
  • Remember that if the playbooks are in an idempotent manner, we can safely run them n number of times against our targets without any worries
  • By virtue of them being text-based documents, we get versioning and all the benefits that come from doing so

What is still manual is the fact that we need someone or something to execute the ansible-playbook command. Not only that, this someone or something will need to do the following:

  • Remember when to execute the playbooks
  • Schedule them accordingly
  • Store secrets safely (usually we require the SSH key to be able to login)
  • Store the output or remember to rerun a playbook if something failed

We can all aspire to be that spectacular when it comes to remembering the small things, or we can accept that these detail-oriented, scheduling-based tasks are better left to competent software rather than superhumans! 

Superhumans will have the ability to remember, schedule, execute, and notify about playbooks

It turns out we don't all have to become superhumans. We can simply use scheduling and automation tools such as Ansible Tower, Jenkins, or Rundeck to do all of what we have defined previously, and more. 

In this chapter, we will look at all the three tools that we mentioned to understand what do they offer so as to take our automation to the next level of abstraction of automation.

Specifically, we will cover the following topics: 

  • Installing and configuring Ansible Tower
  • Using Ansible Tower to manage playbooks and schedule
  • Installing and configuring Jenkins
  • Installing and configuring Rundeck
主站蜘蛛池模板: 宁都县| 宝兴县| 德格县| 获嘉县| 拉孜县| 肇州县| 沂南县| 普格县| 民丰县| 健康| 阜阳市| 太康县| 安龙县| 南江县| 东海县| 高淳县| 蒙城县| 平陆县| 泰宁县| 栖霞市| 信丰县| 垣曲县| 阿合奇县| 庆城县| 洛隆县| 重庆市| 清流县| 丰台区| 措美县| 永德县| 南部县| 文成县| 阿荣旗| 宣威市| 平阴县| 吴旗县| 蒙城县| 息烽县| 河曲县| 鹤山市| 靖安县|