Automation

自動化視窗配置

  • November 14, 2018

這更像是一個工作站問題而不是伺服器本身,但我相信最適合這個站點:

我想自動化 Windows 10 Pro 工作站配置設置。我希望能夠自動將多個工具安裝到 Windows 機器中,而不必在每個工具中手動執行此操作。我想要一個無人看管的過程,只要我不必在場觀看,這可能需要一整天。

我希望能夠安裝以下內容:

Pycharm
Visual Studio
Notepad++
Android Studio
Docker
Sublime
Netbeans
Firefox
Chrome

和其他工作相關的工具。

我聽說過並閱讀過Ansible, Puppet, Chef, Salt, 它們似乎正是我所需要的,但我從未使用過這樣的工具。我docker每天都使用,但它不是我想要的。

我還看到了其他工具,例如NiniteSilentInstall

我正在尋找最好是開源的東西,或者至少有一些我可以使用的免費層。最好有一個 web gui 來集中管理事物,儘管我更喜歡免費的東西,並且隨著工作站數量的增長,將來可能會升級它。

我不使用 AD(至少目前),所以我更喜歡允許我連接到機器並讓它們從遠端位置執行東西,甚至插入 USB 設備進行配置的東西。

現場存在不是問題,但越靈活越好。

我應該使用什麼?對上述產品有何建議或限制?還是我在看錯誤的工具集,應該為這些任務使用其他東西?

我沒有足夠的聲譽要求澄清,所以我將假設兩件事。

我不使用 AD(至少目前),所以我更喜歡允許我連接到機器並讓它們從遠端位置執行東西,甚至插入 USB 設備進行配置的東西。

我不確定什麼是“執行的東西”。儘管您確實提到了 Active Directory,但您沒有提到工作站的作業系統。如果我的以下假設不正確,請告訴我,我會看看是否可以修改答案以適應。

假設 1

您會選擇一種解決方案,允許您將 USB 設備插入工作站並執行文件以部署您的“配置”。如果同樣的過程可以遠端完成,那就更好了。

假設 2

您需要支持多種不同的作業系統,包括 Windows、MacOS X 和 Linux 的某些變體。

編輯:我可以看到你多次提到 Windows,我不知道我是怎麼錯過的。我在下面的比較中確實提到了 Windows 支持,所以我相信它們仍然是相關的。


您問了多個問題,我無法全部回答,所以我將它們分開並儘可能單獨回答。

我應該使用什麼?

這是一個非常主觀的問題,我無法回答。

還是我在看錯誤的工具集,應該為這些任務使用其他東西?

我相信您正在尋找正確的工具集。

對上述產品有何建議或限制?(Ansible、Puppet、Chef 和 Salt)

我只有玩偶的經驗。我聽說過其他人,但我不太了解他們。我將一一瀏覽它們,並儘可能將它們與 Puppet 進行比較,使用外部資源。

木偶

Puppet 的開源版本幾乎可以滿足您的要求,一旦安裝在工作站上,您就可以遠端更改配置(您也可以在本地應用單個清單,例如從 USB 設備)。

工作站上的 puppet 代理將按定義的時間間隔聯繫遠端伺服器以下載定義資源列表所需狀態的“清單”,這可以包括軟體包、配置文件、列印機等。

與 Puppet 一起出現的還有“puppetdb”,這是一個儲存有關工作站的“事實”的數據庫。您可以編寫自己的自定義事實,但這是主機名、IP 地址、它擁有的 CPU 等等。

Puppet 有很多免費的高質量“模組”,來自被稱為Puppet Forge的軟體。

這幾乎就是 Puppet 所做的,僅此而已。

Ansible

據我所知,Ansible 幾乎完成了 Puppet 所做的所有事情,以一種稍微簡單的方式——除此之外,它還專注於配置和部署,這些功能我並不真正了解。

與 Puppet 一樣,Ansible 也有大量可從Ansible Galaxy免費下載的模組來源。據說這些模組不如 Puppet 可用的模組那麼好,但它們仍然很棒。

來源:https ://www.devopsgroup.com/2018/01/10/puppet-vs-ansible/

從技術上講,它不支持 Windows,但無論如何應該很容易設置:http ://www.oznetnerd.com/installing-ansible-windows/

廚師

據說 Chef 更直接地與 Puppet 進行比較,儘管它比 Puppet 更關注云。據說 Chef 是兩者中更“高級”的,而 Puppet 則更簡單。Puppet 支持更廣泛的作業系統,而 Chef 具有非常廣泛的 API。

來源(其中還包括一個很好的比較矩陣):http ://www.cyberphoton.com/questions/question/what-is-the-difference-between-chef-and-puppet-in-configuration-management-software

這個似乎是四個中用得最少的一個,我一直找不到和 Puppet 很好的比較。它似乎與 Ansible 比 Salt 更具可比性。據說它比其他三個擴展得更好,但是雖然它確實支持 Windows,但它對它不太滿意。

來源:https ://www.computerworld.com/article/2486206/virtualization/puppet-vs–chef-vs–ansible-vs–salt.html

四者的其他比較:

https://www.reddit.com/r/linuxadmin/comments/9ljveg/puppet_vs_salt_vs_chef_vs_ansible_which_to_choose/ https://www.intigua.com/blog/puppet-vs.-chef-vs.-ansible-vs.-saltstack

引用自:https://serverfault.com/questions/939836