回覆列表
  • 1 # 啟迪雲Tuscloud

    在雲技術高速發展的今天,海量資料處理繁複,龐大而重複工作壓力越發的嚴重。擁有一個簡單而強大的IT自動化引擎,意味著期望在數字環境中蓬勃發展的組織必須具有更高的軟體交付能力。

    而Ansible是一種簡單的自動化語言,便可以完美地描述IT應用程式基礎結構。它易於學習、自我記錄,並且不需要具備畢業水平的計算機科學學位。

    Ansible具有人類可讀的自動化、無需特殊程式碼、簡單易操作、快速上手的優點。並且功能強大,無代理,它不同於puppet的拉取安裝agent的方式,而是使用推送的方式。真正意義上實現了簡單的自動化處理。Ansible是一個極其簡單的IT自動化引擎,可自動執行雲配置,配置管理,應用程式部署,服務內部協調以及許多其他IT需求。

    Ansible從第一天開始專為多層部署而設計,它透過描述所有系統之間的相互關係來建模您的IT基礎架構,而不是一次只管理一個系統。它不使用代理,也不使用額外的自定義安全基礎架構,因此易於部署。最重要的是,它使用非常簡單的語言(YAML,以Ansible Playbooks的形式),允許您以接近的方式描述自動化作業簡單的英語。

    Ansible透過連線到節點並推出稱為“Ansible模組”的小程式來工作。這些程式被編寫為所需系統狀態的資源模型。然後,Ansible執行這些模組,並在完成後刪除它們。模組庫可以駐留在任何計算機上,並且不需要伺服器,守護程式或資料庫。通常,您將使用自己喜歡的終端程式,文字編輯器以及可能的版本控制系統來跟蹤內容的更改。

    同時,會使用ssh工具來實現伺服器端和客戶端的無密碼的登入。也可使用Kerberos進行登入,無需在節點主機安裝代理。

    Ansible有自己的主機清單(/etc/ansible/hosts)。在清單內,可用最簡單的辦法(輸入IP)來實現管理,清單內的節點主機,也可給清單內的節點主機分成不同的組,來批次管理節點主機,透過劃分不同的組可以實現不同組之間的批次管理節點主機。並且,組內還可以在次劃分不同的小組,實現任務處理細化。主機清單內,還可以主機名,數字類,字母類等劃分方式,劃分不同的組,來應對公司內,多工,多層次的劃分組。

    Ansible這款自動化運維工具內有許多功能不同的模組。如:flie模組,copy模組,command模組,service模組,ping模快,debug模組等模組。每一個模組都有不同功能,不同的用法。都可以很好的提高運維效率。

    Ansible不僅可以透過命令列的形式,提高效率。更可以使用劇本(playbook)的方式來進一步提高效率。劇本的功能很強大,命令列可以做到的它可以做到,命令列不能做到的它也可以做到。

    在執行任務過程中,命令列會忠實的執行任務,但不會變通。而劇本則不一樣,它不僅忠實的執行任務,而且,還足夠的靈活。(會在執行任務前,蒐集節點主機上資訊,檢視與本次任務是否衝突或匹配,來決定任務是否需要執行。)劇本還有許多強大的功能。如:批次安裝軟、自動獲取變數、自動迴圈、使用標籤執行部分任務等功能。

    在2012年Ansible誕生後,就以其小巧易用等特點,在眾多自動化運維工具中脫穎而出,得到廣泛的應用。

  • 中秋節和大豐收的關聯?
  • 我的手指除了大拇指其他八指全部沒有半月痕,怎麼辦?