轻量集群管理工具PSSH
PSSH 的意思是 Parallel SSH,并行的SSH,很好理解,PSSH 可以讓一條命令在多個服務器上同時執行
這就簡化了集群的管理工作,例如想查看一下各臺服務器現在的負載狀況,就可以通過 PSSH 在所有服務器上執行 w 命令
pssh -h hostlist -i w
其中的 hostlist 是一個自定義的文本文件,里面記錄著服務器列表信息
// hostlist
root@192.168.31.207:22
root@192.168.31.158:22
PSSH 示例
pssh 是最基本的命令,PSSH 還提供了其他方便的命令,下面看幾個示例
- 從本地拷貝文件到各個服務器
例如 把本機的 /root/fileA 拷貝到各個服務器的 /tmp/fileA
pscp -h hostlist /root/fileA /tmp/fileA
- 從各個服務器拷貝文件到本機
例如各服務器中都有文件 /home/err_log,想把他們都拿到本機查看,放到本機的 /tmp/test 目錄下,并改名為 log
pslurp -h hostlist -L /tmp/test /home/err_log log
到 /tmp/test 下查看
- 同步目錄
例如本機有一個文件夾 /tmp/test,其中有子目錄和文件,想把這個文件夾同步到各服務器的 /home 下
prsync -h hostlist -a -r /tmp/test /home?
執行完成后,到服務器中查看是否同步成功
PSSH 安裝
- 下載
https://pypi.python.org/packages/source/p/pssh/pssh-2.3.1.tar.gz
- 解壓
tar xzvf pssh-2.3.1.tar.gz
- 安裝
cd pssh-2.3.1
python setup.py install
- 測試
pssh --help
輸出幫助信息,說明安裝成功
對 192.168.31.207 這臺服務器執行 date 命令來測試一下
pssh -H root@192.168.31.207 -A -i date
輸入密碼后,就顯示出了 date 命令的執行結果
- 配置 SSH 免密碼
如果每次都需要輸入密碼的話,就很麻煩了,可以對各臺服務器配置免密碼
在本機執行
ssh-keygen
(執行后會有多個輸入提示,不用輸入任何內容,全部直接回車即可)
ssh-copy-id -i /root/.ssh/id_rsa -p 22 root@192.168.31.207
(重復執行這條命令,改變后面的服務器信息即可)
再次執行 pssh 命令,就不會提示輸入密碼了
pssh -H root@192.168.31.207 -i date
PSSH 非常簡單,但為我們的服務器管理工作提供了很大的便利,從安裝到用起來都花費不了1小時,輕便好用
總結
以上是生活随笔為你收集整理的轻量集群管理工具PSSH的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: explicit_defaults_fo
- 下一篇: FragmentStatePagerAd