日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
五大最流行的配置管理工具

了解一下配置管理工具,以找出哪個最適合你的 DevOps 組織。

DevOps 正因為有提高產(chǎn)品質(zhì)量、縮短產(chǎn)品開發(fā)時間等優(yōu)勢,目前備受業(yè)界關(guān)注,同時也在長足發(fā)展當(dāng)中。

DevOps 的核心價值觀是團(tuán)隊文化Culture、自動化Automation、評估Measurement和分享Sharing(CAMS),同時,團(tuán)隊對 DevOps 的執(zhí)行力也是 DevOps 能否成功的重要因素。

  • 團(tuán)隊文化讓大家團(tuán)結(jié)一致;
  • 自動化是 DevOps 的基礎(chǔ);
  • 評估保證了及時的改進(jìn);
  • 分享讓 CAMS 成為一個完整的循環(huán)過程。

DevOps 的另一個思想是任何東西,包括服務(wù)器、數(shù)據(jù)庫、網(wǎng)絡(luò)、日志文件、應(yīng)用配置、文檔、自動化測試、部署流程等,都可以通過代碼來管理。

在本文中,我主要介紹配置管理的自動化。配置管理工具作為基礎(chǔ)架構(gòu)即代碼Infrastructure as Code(IaC)的一部分,支持使用經(jīng)過測試和驗證的軟件開發(fā)實(shí)踐,通過明文定義文件管理和配置數(shù)據(jù)中心。

DevOps 團(tuán)隊只需要通過操作簡單的配置文件,就可以實(shí)現(xiàn)應(yīng)用開發(fā)中包括版本控制、測試、小型部署、設(shè)計模式在內(nèi)的這些最佳實(shí)踐??偠灾?,配置管理工具實(shí)現(xiàn)了通過編寫代碼來使基礎(chǔ)架構(gòu)的配置和管理變得自動化。

為什么要使用配置管理工具?

配置管理工具可以提高應(yīng)用部署和變更的效率,還可以讓這些流程變得可重用、可擴(kuò)展、可預(yù)測,甚至讓它們維持在期望的狀態(tài),從而讓資產(chǎn)的可控性提高。

使用配置管理工具的優(yōu)勢還包括:

  • 讓代碼遵守編碼規(guī)范,提高代碼可讀性;
  • 具有冪等性Idempotency,也就是說,無論執(zhí)行多少次重復(fù)的配置管理操作,得到的結(jié)果都是一致的;
  • 分布式的設(shè)計可以方便地管理大量的遠(yuǎn)程服務(wù)器。

配置管理工具主要分為拉取pull模式和推送push模式。拉取模式是指安裝在各臺服務(wù)器上的代理agent定期從中央存儲庫central repository拉取最新的配置并應(yīng)用到對應(yīng)的服務(wù)器上;而推送模式則由中央服務(wù)器central server的中央服務(wù)器會觸發(fā)其它受管服務(wù)器的更新。

五大最流行的配置管理工具

目前配置管理工具有很多,不同的配置管理工具都有自己最適合的使用場景。而對于下面五個我按照字母順序列出的配置管理工具,都對 DevOps 有明顯的幫助:全都具有開源許可證、使用外部配置文件、支持無人值守運(yùn)行、可以通過腳本自定義運(yùn)行。下面對它們的介紹都來源于它們的軟件庫和官網(wǎng)內(nèi)容。

Ansible

“Ansible 是一個極其簡潔的 IT 自動化平臺,可以讓你的應(yīng)用和系統(tǒng)以更簡單的方式部署。不需要安裝任何代理,只需要使用 SSH 的方式和簡單的語言,就可以免去腳本或代碼部署應(yīng)用的過程?!薄狦itHub Ansible 代碼庫

  • 官網(wǎng)
  • 文檔
  • 社區(qū)

Ansible 是我最喜歡的工具之一,我在幾年前就開始使用了。你可以使用 Ansible 在命令行中讓多個服務(wù)器執(zhí)行同一個命令,也可以使用 YAML 格式的劇本playbook來讓它自動執(zhí)行特定的操作,這促進(jìn)了技術(shù)團(tuán)隊和非技術(shù)團(tuán)隊之間的溝通。簡潔、無代理、配置文件對非技術(shù)人員友好是它的幾個主要優(yōu)點(diǎn)。

由于 Ansible 不需要代理,因此對服務(wù)器的資源消耗會很少。Ansible 默認(rèn)使用的推送模式需要借助 SSH 連接,但 Ansible 也支持拉取模式。劇本 可以使用最少的命令集編寫,當(dāng)然也可以擴(kuò)展為更加精細(xì)的自動化任務(wù),包括引入角色、變量和其它人寫的模塊。

你可以將 Ansible 和其它工具(包括 Ansible Works、Jenkins、RunDeck、ARA 等)結(jié)合起來使用,因為這些工具 提供了運(yùn)行劇本時的可追溯性,這樣就可以創(chuàng)建控制流程的中央控制臺。

CFEngine

“CFEngine 3 是一個流行的開源配置管理系統(tǒng),它主要用于為大規(guī)模的系統(tǒng)提供自動化配置和維護(hù)?!薄狦itHub CFEngine 代碼庫

  • 官網(wǎng)
  • 文檔
  • 社區(qū)

CFEngine 最早在 1993 年由 Mark Burgess 作為自動配置管理的科學(xué)方法提出,目的是降低計算機(jī)系統(tǒng)配置中的熵,最終收斂到期望的配置狀態(tài),同時還闡述了冪等性是讓系統(tǒng)達(dá)到期望狀態(tài)的能力。Burgess 在 2004 年又提出了承諾理論P(yáng)romise Theory,這個理論描述了代理之間自發(fā)合作的模型。

CFEngine 的最新版本已經(jīng)用到了承諾理論,在各個服務(wù)器上的代理程序會從中央存儲庫拉取配置。CFEngine 的配置對專業(yè)技能要求較高,因此它比較適合技術(shù)團(tuán)隊使用。

Chef

“為整個基礎(chǔ)架構(gòu)在配置管理上帶來便利的一個系統(tǒng)集成框架?!薄狦itHub Chef 代碼庫

  • 官網(wǎng)
  • 文檔
  • 社區(qū)

Chef 通過由 Ruby 編寫的“菜譜recipe”來讓你的基礎(chǔ)架構(gòu)保持在最新、最兼容的狀態(tài),這些“菜譜”描述了一系列應(yīng)處于某種狀態(tài)的資源。Chef 既可以通過客戶端-服務(wù)端的模式運(yùn)行,也可以在 chef-solo 這種獨(dú)立配置的模式下運(yùn)行。大部分云提供商都很好地集成了 Chef,因此可以使用它為新機(jī)器做自動配置。

Chef 有廣泛的用戶基礎(chǔ),同時也提供了完備的工具包,讓不同技術(shù)背景的團(tuán)隊可以通過“菜譜”進(jìn)行溝通。盡管如此,它仍然算是一個技術(shù)導(dǎo)向的工具。

Puppet

“Puppet 是一個可以在 Linux、Unix 和 Windows 系統(tǒng)上運(yùn)行的自動化管理引擎,它可以根據(jù)集中的規(guī)范來執(zhí)行諸如添加用戶、安裝軟件包、更新服務(wù)器配置等等管理任務(wù)。”——GitHub Puppet 代碼庫

  • 官網(wǎng)
  • 文檔
  • 社區(qū)

Puppet 作為一款面向運(yùn)維工程師和系統(tǒng)管理員的工具,在更多情況下是作為配置管理工具來使用。它通過客戶端-服務(wù)端的模式工作,使用代理從主服務(wù)器獲取配置指令。

Puppet 使用聲明式語言declarative language或 Ruby 來描述系統(tǒng)配置。它包含了不同的模塊,并使用清單文件manifest files記錄期望達(dá)到的目標(biāo)狀態(tài)。Puppet 默認(rèn)使用推送模式,但也支持拉取模式。

Salt

“為大規(guī)?;A(chǔ)結(jié)構(gòu)或應(yīng)用程序?qū)崿F(xiàn)自動化管理的軟件?!薄狦itHub Salt 代碼庫

  • 官網(wǎng)
  • 文檔
  • 社區(qū)

Salt 的專長就是快速收集數(shù)據(jù),即使是上萬臺服務(wù)器也能夠輕松完成任務(wù)。它使用 Python 模塊來管理配置信息和執(zhí)行特定的操作,這些模塊可以讓 Salt 實(shí)現(xiàn)所有遠(yuǎn)程操作和狀態(tài)管理。但配置 Salt 模塊對技術(shù)水平有一定的要求。

Salt 使用客戶端-服務(wù)端的結(jié)構(gòu)(Salt minions 是客戶端,而 Salt master 是服務(wù)端),并以 Salt 狀態(tài)文件記錄需要達(dá)到的目標(biāo)狀態(tài)。

總結(jié)

DevOps 工具領(lǐng)域一直在發(fā)展,因此必須時刻關(guān)注其中的最新動態(tài)。希望這篇文章能夠鼓勵讀者進(jìn)一步探索相關(guān)的概念和工具。為此,云原生計算基金會Cloud Native Computing Foundation(CNCF)在 Cloud Native Landscape Project 中也提供了很好的參考案例。



分享文章:五大最流行的配置管理工具
本文路徑:http://www.dlmjj.cn/article/cojoehs.html