关于linux集群服务器软件向大量客户端节点自动批量分发的方法
梦翔儿,今天在研究ganglia时,读到IBM一个文档的一个部分讲解如何将一个节点中的文件快速分发给其它节点,有一个脚本非常不错,收在这里,以后也许能用得上:
======
到现在为止,我们已经完成了在管理服务器中运行 Ganglia 的工作;现在必须更多地关注计算节点。事实证明只需复制一些文件就可以把 Ganglia 放到计算节点上。这是在使用 Kickstart 时可以添加到安装后脚本中的内容或是可以添加到其他更新工具中的内容。
快速但粗糙的方法是这样的:创建一个含有所有主机名的文件。假定您有 deathstar001-deathstar100 节点。则将拥有类似如下所示的名为 /tmp/mynodes 的文件:
deathstar001
deathstar002
...skip a few...
deathstar099
deathstar100
现在只需运行以下代码:
# for i in `cat /tmp/mynodes`; do
scp /usr/sbin/gmond $i:/usr/sbin/gmond
ssh $i mkdir -p /etc/ganglia/
scp /etc/ganglia/gmond.conf $i:/etc/ganglia/
scp /etc/init.d/gmond $i:/etc/init.d/
scp /usr/lib64/libganglia-3.1.1.so.0 $i:/usr/lib64/
scp /lib64/libexpat.so.0 $i:/lib64/
scp /usr/lib64/libconfuse.so.0 $i:/usr/lib64/
scp /usr/lib64/libapr-1.so.0 $i:/usr/lib64/
scp -r /usr/lib64/ganglia $i:/usr/lib64/
ssh $i service gmond start
done
from:http://www.ibm.com/developerworks/cn/linux/l-ganglia-nagios-1/