我刚刚在家里设置了一堆虚拟机,正在寻找一些有趣的东西来玩。我只是想知道用这样的设置可以尝试什么样的随机东西?我不想设置独立的服务器,但我正在考虑尝试机器间的东西。
举个例子,我有一个虚拟机暴露在外部,上面运行着一个指向其他虚拟机的反向代理。此外,所有这些虚拟机都运行着 Debian,我有一个虚拟机作为其他虚拟机的本地 apt 缓存运行。
有没有某种分布式或集群或其他有趣的东西可以玩?虚拟机应该很有趣!
答案1
我知道我会用一堆虚拟机做什么(XKCD#350):
答案2
看看 Hadoop、HBase 或任何其他分布式数据存储,如 Facebook 的 Cassandra。Hadoop 是 Google Map/Reduce 基础架构的克隆。嗯,并行处理。
您可以使用复制数据库;PostgreSQL 上的 slony 或 MySQL 中的本机复制。
使用 keepalived、varnish 或 nginx 进行负载平衡和集群。
使用 Puppet 或 chef 进行配置管理。
了解如何编写无会话 Web 应用程序,以便您可以轻松地对它们进行集群。
快速配置新服务器。对于测试应用程序很有用。
您可以尝试对应用程序进行负载测试。
如果您在开发商店工作,所有这些技能都可能有用。
答案3
- 学习 Erlang、Clojure、Scala 或其他针对分布式可靠系统的语言。
- 尝试为各种服务设置高可用性集群。基本上,请按照linux-ha.org设置 DRBD、Heartbeat、STONITH 等。
无论哪种方式,请利用您的虚拟机来实际测试设置。将虚拟机脱机并重新连接,看看会发生什么。尽最大努力让自己陷入裂脑状态。看看您是否能找到解决方法。如果脱机的节点数量超过您的设置应能处理的数量,看看会发生什么(即,会出现哪些类型的错误)。
答案4
在我的虚拟机上,我主要测试集群、高可用性、故障转移等
然后尝试删除节点,破坏它...添加额外内容,重新同步等等
我对这类事情很感兴趣,在虚拟化之前,测试这种事情几乎是不可能的(而且非常昂贵)。现在您可以在单个盒子上进行测试!