Devops基礎設施自動化的工具
有許多工具用于基礎設施自動化。使用哪個工具決定于體系結構和基礎設施的需求。下面我們列出了一些偉大的工具,用于不同類別配置管理、編制、持續集成、監控等。
1.Chef
Chef是一個基于ruby開發的配置管理工具。你可能會遇到“基礎設施代碼”這個詞,這意味著配置管理。廚師烹飪書的概念,你的代碼基礎設施DSL(領域特定語言)和一個小的編程。chef規定和配置虛擬機根據規則中提到的食譜。代理將會運行在所有的服務器配置。代理將chef主服務器的cookbooks,在服務器上運行這些配置來達到理想的狀態。
2.Puppet
Puppet也基于ruby編寫的配置管理工具跟chef一樣。配置代碼編寫使用puppet DSL和封裝在模塊。而chef更以開發人員為中心,puppet是由系統管理員控制為中心。puppet proxy運行在所有服務器配置,它把編譯模塊從puppet服務器和安裝所需要的軟件包中指定模塊。
3.Saltstack
Saltstack是一個基于python打開配置管理工具。不像chef和puppet,Saltstack支持遠程執行的命令。通常在chef和puppet,配置的代碼將從服務器,在Saltstack,代碼可以同時被推到許多節點。編譯的代碼和配置是Saltstack非常快。
4.Ansible
Ansible是一個缺少代理配置管理以及編制工具。在Ansible配置模塊中被稱為“劇本”。劇本都寫在YAML格式和它相對容易寫相比其他配置管理工具。像其他工具,Ansible可用于云配置。
5.Juju
Juju是由典型的基于Python的編排工具。它已經在你的云環境應用程序的偉大的UI。你也可以使用命令行界面來完成所有的業務流程的任務。你可以配置,部署和使用且具規模的應用。
6.Jenkins
Jenkins是一個基于java的持續集成工具更快的應用程序。Jenkins必須關聯到一個版本控制系統如github或SVN。每當新代碼被推到代碼庫,詹金斯服務器將構建和測試新代碼和通知團隊的結果和變化。
7.Vagrant
vagrant是一個偉大的工具為開發環境配置虛擬機。vagrant的上面運行的VM虛擬框和流浪的解決方案。它使用一個配置文件叫做Vagrantfile,其中包含所需的所有配置VM。一旦創建了一個虛擬機,它可以與其他開發人員共享相同的開發環境。vagrant有云配置插件,配置管理工具(chef、puppet等)和docker。
8.Docker
Docker是一個自動化工具之上的Linux容器(LXC)。它工作在流程級別虛擬化的概念。Docker創造了孤立的環境稱為應用程序容器。這些容器可以運往其他服務器無需更改應用程序。Docker被認為是虛擬化的下一步。碼頭工人有一個巨大的開發者社區,它是獲得巨大的聲望在Devops從業者和云計算的先驅。
9.New Relic
New relic的基于云的解決方案(SaaS)應用程序監視。它支持各種應用程序的監控像Php、Ruby、Java、NodeJS等等。它給你實時的見解關于您的運行應用程序中。new relic的代理應該配置在應用程序中獲得實時數據。New relic使用各種指標提供有價值的見解關于應用程序監控。
10.Sensu
Sensu是一個開放源碼監視框架用Ruby編寫的。Sensu是一個監控工具專門建立云環境。它可以很容易地部署使用工具如chef和puppet。Sensu也有一個企業版的監控。