我有一些关于云应用的想法,想尝试一下,但我不想为亚马逊 AWS 或类似的东西付费。另外,我不希望我的项目在半成品阶段以任何方式暴露在互联网上。
以下是我需要处理的情况:
- 1 台四核机器,用作文件服务器、DHCP 服务器和 DNS 服务器。我同意让 MAAS 处理我网络上的 DHCP 和 DNS。我不同意在特殊配置中重新安装操作系统。
- 1 台四核机器,可以自由重新安装或其他。
到目前为止,我已经在第一台机器上安装了 MAAS(虽然看起来我被错误 #1067929尽管我使用了变通方法,但我仍然将第二台机器添加为节点,并(显然)委托了它。MAAS 将第二台机器的状态列为“分配给 root”(root 是我的 MAAS 用户)。然而,Juju 却固执地拒绝做任何事情。从我的笔记本电脑运行它以失败告终,因为它显然无法处理带有 HTTPS URL 的 MAAS。在第一台机器上使用 HTTP 运行它取得了进一步的进展,但引导失败,因为“没有可用的匹配节点”。研究表明,Juju 至少需要 2 台实际的物理机器,但我还没有看到对原因的充分解释。
(我不得不说,我对 MAAS 非常感兴趣。再做一些工作(特别是在 QA 方面),它看起来可能就是我一直在寻找的集中式机器管理平台。)
所以,现在我发现自己开始关注 DevStack。我不能说我对从 GitHub 下载一些脚本并以 root 身份运行它的想法特别兴奋,但这似乎是最不痛苦的途径。DevStack 真的是可行的方法吗?它适用于 Ubuntu 12.10 吗?它会自动处理路由和 DNS 吗?(我宁愿每次创建新的云 VM 时都不必摆弄 bind9 配置文件,我宁愿根本不要摆弄 iptables。)
答案1
根据我的经验(我使用 Dodai-deploy 手动和开发 DevStack 设置完成过 OpenStack 安装),如果您主要想关注非生产领域(测试、开发),那么 DevStack 是最好的选择。所有其他方法(包括我研究过的 Juju+MaaS)仍然难以部署,而且在让一切正常运行之前,需要调整太多旋钮。如果没有必要,不要让自己陷入其中。
如果你担心安全性,我的建议是在现有硬件上创建一个具有 4 个核心的 Virtualbox 映像,然后在其中安装 DevStack(简短指南- 与正常的 devstack 安装没有太大区别)。你可以在几个小时内完成此操作。这是“云”中的“云”,但这不是什么大问题(除了速度)- 接受所有默认设置为您提供可以互相联系并访问互联网,这才是最重要的。我记得我把它安装在12.10图像和它工作良好。如果您将物理机用于其他目的,您就不愿意在物理机上安装所有内容,这是对的。此外,使用虚拟机还有额外的好处,那就是可以对虚拟机进行快照,并在出现问题时恢复原状。
或者,为了达到沙盒级别,你可以尝试Juju + Linux 容器(LXC)或者可能是 LXCs + devstack,我听说人们对 LXCs 有很好的体验,但我自己还没有尝试过。