首页 > 数据库 > > FAQ-如何在集群内多个节点上执行命令或者存取文件
在安装集群或者日常维护过程中,如果需要在集群内多个节点上执行同一命令或者存取文件,可以使用软件安装包中的脚本工具快速完成。
前提条件
操作步骤
参数名 | 取值(举例) | 描述 |
|---|---|---|
g_hosts(必须配置) | 192.168.10.[10-20] | 需要执行操作的所有节点的IP地址。
|
g_user_name | root | 执行操作的用户。 |
g_password | _ | 执行操作的用户对应的密码文件,默认为空。 |
g_port | 22 | SSH连接端口,默认为22。 |
g_timeout | 10 | SSH连接的超时时间,默认为10秒,当网络较差时可以适当增加。 |
“g_password”默认为空,如果执行操作的所有用户的密码一致,命令执行后在界面手动输入一次密码即可。否则,需要在节点上手动创建一个密码文件,并将“g_password”参数设置为密码文件的全路径。密码文件格式如下:
IP地址1
IP地址1的密码
IP地址2
IP地址2的密码
...
说明:例如,创建“secret.txt”文件,内容如下:
10.10.37.[10-11]
123456!654321
10.10.37.12
123456!命令格式:./clustercmd.sh "详细命令"
样例(在各节点上执行hostname命令):
dc-rack1007-4m:/cluster # ./clustercmd.sh "hostname"
==>>10.10.37.10
dc-rack1007-1
==>>10.10.37.11
dc-rack1007-2
==>>10.10.37.12
dc-rack1007-3命令格式:./clusterscp.sh get 源文件路径 目的路径
样例(将各节点上的“/opt/test/mem.txt”文件复制到本节点的“/opt/result”文件夹下):
dc-rack1007-4m:/cluster # ./clusterscp.sh get /opt/test/mem.txt /opt/result
get /opt/result/10.10.37.10_mem.txt from 10.10.37.10:/opt/test/mem.txt successfully.
get /opt/result/10.10.37.11_mem.txt from 10.10.37.11:/opt/test/mem.txt successfully.
get /opt/result/10.10.37.12_mem.txt from 10.10.37.12:/opt/test/mem.txt successfully.命令格式:./clusterscp.sh put 源文件路径 目的路径
样例(将本节点的“/opt/test/hosts”文件复制到各节点的“/etc”目录下):
dc-rack1007-4m:/opt/cluster # ./clusterscp.sh put /opt/test/hosts /etc
put /opt/test/hosts to 10.10.37.10:/etc successfully.
put /opt/test/hosts to 10.10.37.11:/etc successfully.
put /opt/test/hosts to 10.10.37.12:/etc successfully.来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3138209/ ,如需转载,请注明出处,否则将追究法律责任。