使用 Ansible 和 Raspberry Pi 进行集群计算

还没有读者喜欢这个。
Idea written in red tape

Opensource.com

在这个 25 分钟的视频介绍中,我将带您了解使用六个 Raspberry Pi 2 Model B 计算机集群的 Ansible 基础知识。视频从基础知识开始——例如安装和告知 Ansible 您的服务器——然后展示如何使用 playbook 管理您的基础设施。

我在本视频中使用 Raspberry Pi 集群从我的家中运行网站 www.pidramble.com,我还将其用于基础设施测试和教育目的。

Jeff Geerling
我参与了许多开源开发社区(如 Drupal 和 Ansible),我是《Ansible for DevOps》和《Ansible for Kubernetes》的作者,并且我参与了许多大型网站和应用程序的开发。

10 条评论

使用 Raspberry Pi 的性能如何?与传统的台式机或台式计算机集群相比呢?

我相信您能看出我不熟悉集群,但我想知道集群的性能提升如何(以及我是否可以使用类似的东西来替换我自己的家庭服务器 ;) )

@Drew - 我实际上在集群的 GitHub 项目 Wiki 上提供了很多详细的基准测试:https://github.com/geerlingguy/raspberry-pi-dramble/wiki/Dramble-D8-Ben…

与低端 PC 或低端云服务器相比,Pi 2 是相当不错的;在我的测试中,它通常比微型 AWS 实例或 Digital Ocean droplet 慢 20-30%,但性能差异取决于很多不同的因素,尤其是您在其上运行哪种应用程序。

关于一般的集群:在集群时总会做出权衡;您可以追求更好的性能和更好的可用性,但如果您两者都想要,则需要更多的服务器。在这个集群中,我有 6 个,包括一个负载均衡器、四个 Web 服务器和一个数据库服务器。如果数据库发生故障,那么一切都会离线。

您还可以添加反向代理,以便缓存内容并更好地保护您的“后端”服务器,并且您可以将数据库设置为主从配置,以便在主服务器宕机时可以故障转移。

一旦您深入集群,这个兔子洞就非常深了 :)

回复 作者 dragonbite

您使用什么集群技术使其工作?是 Pacemaker 吗?抱歉,CBA 看 25 分钟的视频只是为了找到答案 :)

这不是集群,而是一组位于本地网络上的服务器。您的标题非常具有误导性。尽管如此,了解 Ansible 及其一些功能还是很有趣的。

这实际上取决于您对集群的严格定义;我的意思是“一组协同工作以完成单个应用程序目标的计算机”。在某些地方,这意味着所有计算机协同工作,并行处理数据集。在其他地方,这意味着一个大型应用程序的不同组件处理请求并提供响应(例如,Web 服务器,分布在多台计算机上)。

在任何一种情况下,您都会遇到类似的问题——跨多台服务器协调软件和服务,监控一切,确保输入以正确的方式路由,并且输出成功。

我交谈过的大多数管理员都使用“集群”来指代许多不同的多机场景,所以这就是我在这里使用这个术语的方式。

回复 作者 Rick (未验证)

您为 Pi 堆栈使用什么电源?

完整的零件清单可在 Raspberry Pi Dramble Wiki 上找到:http://www.pidramble.com/wiki/hardware/pis

我正在使用一个 6 端口 USB 台式充电器(具有 6 个 USB 端口,每个端口至少提供 1A 电流,插入交流电源),但我很快将切换到直接馈入 GPIO 接头的专用 5V 电源。

回复 作者 rpehlm

Jeff
只是为了好玩,我发现似乎在 OSX 上进行任何类型的 Web 开发都更容易,因为它底层是 BSD。您的视频是在哪款 Macbook 上制作的?MD101LL/A(2012 13 英寸)适合吗?

谢谢 John

我在视频中使用的是 2013 年 13 英寸的,但我通常使用 2013 年 11 英寸的作为我的日常主力机。(两者都连接到我站立式办公桌上的 27 英寸屏幕或另一个 23 英寸屏幕... 我只在路上时才使用内置的小显示器!)

回复 作者 John Jeffers P.Eng. (未验证)

构建了一个集群 - 6 个无头 RPi2 + 1 个带有 7 英寸 LCD 用于管理。
买了这本书。
开始玩耍 :)
感谢您提供所有这些信息

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.