如何使用test kitchen-chef创建并用作集群节点想使用test kitchen安装hadoop集群,但是如何在test kitchen中使用具有内部通信的多个节点
r7knjye21#
测试厨房只是一个 Package 容器技术的选择。我会和lxd一起去。如果将所有容器连接到同一网络(lxdbr0),它们将能够看到彼此。所以您所要做的就是配置testkitchen来启动多个容器。
zlhcx6iw2#
不幸的是厨房现在没有通用的方法来做这件事。我写了一个厨师社区rfc来记录需要添加什么来支持它,但目前这将是一场艰苦的战斗。您最好的选择可能是手动指定IP的流浪汉驱动程序,但即使这样也很难做到。如果你加入厨师社区slack团队,ping我(也有coderanger)和我可以尝试帮助更多。
ctzwtxfj3#
您可以在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 文件,您将能够使虚拟机之间进行通信,并形成一个集群。最后,要小心hadoop绑定到的接口,因为它可能不会绑定到私有网络,这使得namenode和secondary namenode等关键组件之间的通信变得不可能。祝你好运!
/etc/hosts
3条答案
按热度按时间r7knjye21#
测试厨房只是一个 Package 容器技术的选择。我会和lxd一起去。如果将所有容器连接到同一网络(lxdbr0),它们将能够看到彼此。所以您所要做的就是配置testkitchen来启动多个容器。
zlhcx6iw2#
不幸的是厨房现在没有通用的方法来做这件事。我写了一个厨师社区rfc来记录需要添加什么来支持它,但目前这将是一场艰苦的战斗。您最好的选择可能是手动指定IP的流浪汉驱动程序,但即使这样也很难做到。如果你加入厨师社区slack团队,ping我(也有coderanger)和我可以尝试帮助更多。
ctzwtxfj3#
您可以在kitchen中指定专用网络,并为每个节点分配ip地址,例如:
请记住,您将没有dns,并且必须向每个节点添加条目
/etc/hosts
文件,您将能够使虚拟机之间进行通信,并形成一个集群。最后,要小心hadoop绑定到的接口,因为它可能不会绑定到私有网络,这使得namenode和secondary namenode等关键组件之间的通信变得不可能。
祝你好运!