如何使用Test kitchen - Chef
创建和使用群集节点想要使用测试厨房安装Hadoop集群但是如何在测试厨房中使用多个节点进行内部通信
答案 0 :(得分:0)
不幸的是,厨房现在没有通用的方法来做到这一点。我写了一个Chef社区RFC来记录需要添加什么来支持它,但目前这将是一场艰苦的战斗。你最好的选择可能是手动指定IP的流浪驾驶员,但即使这样也很难。如果你加入了Chef社区slack团队,请ping我(也是那里的coderanger),我可以尝试提供更多帮助。
答案 1 :(得分:0)
您可以在Kitchen中指定专用网络并为每个节点分配IP地址,例如:
- name: foo-node
driver:
network:
- ["private_network", { ip: "1.2.3.4" }]
provisioner:
policyfile_path: policyfiles/foobar.rb
attributes:
foo: 'bar
请记住,您不会拥有DNS,并且您必须为每个节点/etc/hosts
文件添加条目,您将能够让VM在它们之间进行通信并形成群集。
最后,请注意Hadoop绑定的接口,因为它可能不会绑定到专用网络,使得 namenode 和 secondary namenode <等关键组件之间的通信成为可能。 / em>不可能。
祝你好运!答案 2 :(得分:0)
Test-Kitchen只是您选择的容器技术的包装。那我会和LXD一起去。如果将所有容器连接到同一网络(lxdbr0),它们将能够看到彼此。所以你要做的就是配置Test-Kitchen来启动多个容器。