自動化運維工具——Ansible(一)——介紹與總結

1. 什麼是Ansible

它是一個”配置管理工具”,它是一個”自動化運維工具”
在這裏插入圖片描述

2. Ansible能做什麼

正如其他配置管理工具一樣,ansible可以幫助我們完成一些批量任務,或者完成一些需要經常重複的工作。

比如:同時在100臺服務器上安裝nginx服務,並在安裝後啓動它們。
比如:將某個文件一次性拷貝到100臺服務器上。
比如:每當有新服務器加入工作環境時,你都要爲新服務器部署redis服務,也就是說你需要經常重複的完成相同的工作。
這些場景中我們都可以使用到ansible。

在這裏插入圖片描述

3. 爲什麼要使用Ansible

看到這裏,你可能會說,我編寫一些腳本,也能夠滿足上面的工作場景,爲什麼還要使用ansible呢?

沒錯,使用腳本也可以完成這些工作,不過還是推薦你使用ansible,因爲ansible支持一些優秀的特性,比如”冪等性”

”冪等性”是什麼意思呢?

舉個例子,你想把一個文件拷貝到目標主機的某個目錄上,但是你不確定此目錄中是否已經存在此文件,當你使用ansible完成這項任務時,就非常簡單了,因爲如果目標主機的對應目錄中已經存在此文件,那麼ansible則不會進行任何操作,如果目標主機的對應目錄中並不存在此文件,ansible就會將文件拷貝到對應目錄中,說白了,ansible是”以結果爲導向的”,我們指定了一個”目標狀態”,ansible會自動判斷,”當前狀態”是否與”目標狀態”一致,如果一致,則不進行任何操作,如果不一致,那麼就將”當前狀態”變成”目標狀態”,這就是”冪等性”。

”冪等性”可以保證我們重複的執行同一項操作時,得到的結果是一樣的,這種特性在很多場景中相對於腳本來說都有一定優勢

4. Ansible的優勢

如果你瞭解過其他的配置管理工具,比如puppet或者saltstack,那麼你一定知道,如果我們想要使用puppet管理100臺主機,就要在這100臺主機上安裝puppet對應的agent(客戶端代理程序),而ansible則不同,ansible只需要依賴ssh即可正常工作,不用在受管主機上安裝agent,也就是說,只要你能通過ssh連接到對應主機,你就可以通過ansible管理對應的主機。

5. Ansible總結

ansible是一個配置管理工具,可以幫助我們完成一些批量工作或者重複性工作。

ansible通過ssh管理其他受管主機,並且具有一些特性,比如冪等性、劇本、模板,角色等,我們會慢慢的介紹這些特性以及怎樣使用ansible。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章