我想连接集群上存在的所有 abc_2015-12-15.txt 文件。有没有最好的方法来实现这一点?
一种方法是在所有节点上使用以下命令,直到所有文件连接起来:-
ssh root@node1 "cat >> /home/abc/abc_2015-12-15.txt" < /home/abc/abc_2015-12-15.txt
在分布式环境中连接最快的方法是什么?
答案1
如果您需要最终结果是单个文件,有几种方法可以在本地收集文件,然后进行串联。
Ansible 是一个跨集群执行任务的好工具,并且有一个用于获取远程文件的模块(http://docs.ansible.com/ansible/fetch_module.html),尽管最初的学习曲线可能有点障碍。
如果命令行交互更容易掌握,并且您可以安装Python实用程序RadSSH(https://pypi.python.org/pypi/radssh)有一些快速的方法来单独收集文件(*get /home/abc/abc-2015-12-15.txt)或作为 tarfiles(*tgz /home/abc/abc-2015-12-15.txt),除其他技巧外。