Rake 和 Ansible 有什么区别?

What is the difference between Rake and Ansible?

我一直在学习一些工作流自动化的新技术。在一些项目中,我看到人们使用 Rakefiles。我了解到它们用于自动化 deployment/workflow 等。 在其他人身上,我看到人们使用 Ansible。 也许我误解了其中一项技术,但它们有何不同?

Rake 是一种最常用于管理任务的工具,可以为应用程序编写脚本,无论是数据库迁移、数据加载、export/import 数据、清除缓存等。Ansible 是一种配置工具它可以配置服务器,做应用部署。可以想象,您可以使用 rake 来完成 Ansible 所做的一些事情,反之亦然,但是如果您尝试在 rake 实用程序中重新创建 Ansible,您将重新发明轮子。 ruby/rails 世界中更接近 Anisble 的是 Capistrano。但是,Ansible 是一种更通用的工具,而 Capistrano 更像是 rails 应用程序 (IMO) 的专用工具。