Intro
线上机器有多台,一台台copy文件、敲命令会疯掉,而且多次手动操作容易出错,就要用用clustershell
!
在自己的开发机上安装好,/etc/clustershell/groups
里面新建swiftmc组,多台连号的机器可以使用数组方式,比如10.121.130.[80-89]
可以直接添加10台机器,clustershell
会自动解析。
使用clush
命令操作前先将自己开发机的key加到几台clustershell的authorized_key
里,先ssh登录yes一下,然后就可以执行clush指令操作机器了。
常用指令
# 这几条指令是看看几台swiftmc机器的hostname/uptime,将本机的文件copy过去,查看一下,然后再删掉
clush -g swiftmc uptime
clush -g swiftmc hostname
clush -g swiftmc -c add_aliyun_mirror4docker.sh --dest /data/apps
clush -g swiftmc "ls -l /data/apps"
clush -g swiftmc "rm /data/apps/add_aliyun_mirror4docker.sh"
clush -g swiftmc "ls -l /data/apps"
# 将远程主机上的文件copy到本地
clush -w distributed-storage-tomcat-online002-shgq --rcopy /data/logs/java/miaoyun-default.log.2018-11-07 --dest=/data/ftp
所有操作只在开发机上进行,可保证组里的机器同步进行,比较方便。
其他还有ansible等方式,待学习。
注:
1.初次登陆也可以跳过ssh yes/no验证,方法是修改/etc/ssh/ssh_config
,
将# StrictHostKeyChecking ask
注释打开,改为no即可 。
2. 注意clush命令中的路径,不加的话默认是机器上的home目录。