使用PSSH大量操作Linux伺服器,psshlinux伺服器

來源:互聯網
上載者:User

使用PSSH大量操作Linux伺服器,psshlinux伺服器
簡介

伺服器多了,有一個問題就是如何批量快速控制項目多台伺服器,在網上搜到了PSSH工具,試用了一下發現挺好用,推薦給大家。

pssh是一個python編寫的可以在多台伺服器上執行命令的輕量級管理工具,同時支援拷貝檔案,python版本大於2.4即可,項目地址:parallel-ssh。

安裝
$ wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz$ tar -xzvf pssh-2.3.1.tar.gz$ cd pssh-2.3.1$ python setup.py install
PSSH相關參數
  • -h 執行命令的遠程主機列表檔案,檔案內容格式[user@]host[:port]
    • 如 test@127.0.0.2:229
  • -H 執行命令主機,主機格式 user@ip:port
  • -l 遠程機器的使用者名稱
  • -p 一次最大允許多少串連
  • -P 執行時輸出執行資訊
  • -o 輸出內容重新導向到一個檔案
  • -e 執行錯誤重新導向到一個檔案
  • -t 設定命令執行逾時時間
  • -A 提示輸入密碼並且把密碼傳遞給ssh(如果機器都是ssh key打通的則無需加-A)
  • -O 設定ssh一些選項
  • -x 設定ssh額外的一些參數,可以多個,不同參數間空格分開
  • -X 同-x,但是只能設定一個參數
  • -i 顯示標準輸出和標準錯誤在每台host執行完畢後
用法樣本

先建立一個文字檔hosts.txt,存放要操作的機器列表,格式為[user@]host[:port]:

user1@127.0.0.1:1254user2@127.0.0.2127.0.0.3

用pssh查看所有伺服器的uptime:

$ pssh -i -h hosts.txt 'uptime'

可根據需要把 update 換為別的命令

附加工具

pssh安裝後附加了一些很好用的工具,主要有:

1、pscp

作用:傳輸檔案到多個hosts,類似scp

樣本:

$ pscp -h hosts.txt foo.txt /home/foo.txt
2、pslurp

作用:從多台遠程機器拷貝檔案到本地

樣本:

$ pslurp -h hosts.txt /etc/hosts local_dir
3、pnuke

作用:並行在遠程主機殺進程

樣本:

$ pnuke -h hosts.txt -l root java
4、prsync

作用:使用rsync協議從本機電腦同步到遠程主機

樣本:

$ prsync -r -h hosts.txt foo /home/foo
參考文檔

http://www.opstool.com/article/266

http://linux.die.net/man/1/pssh


怎同時管理多台伺服器

首先10台真的不算多,不過你的意識是很好的.再,如果是10台直接統一管理完全完全可以使用cssh這樣的多視窗工具,或者一些pssh批量執行工具,同時進行操作管理,這個不需要任何成本代價.再,你說到系統情況,應該是監控這一塊的,用一個開源工具來集中查看,像ganglia nagios這些開源工具完全夠用.再,系統的配置是在你的伺服器標準化後,可以自己寫指令碼完成,或者複雜點使用開源的puppet也可以滿足.最後,如果你實力很強,或者覺得現在的工具太不緊湊了你可以自己寫些管理平台,這個看你具體的需求了.END,需求帶動生產吧,細節有很多需要思考.PS:一般出於安全考慮,還會有統一的管理入口伺服器,這樣你的管理結構就又要發生一些變化了,安全和效率的取捨關係.
 
怎同時管理多台伺服器

首先10台真的不算多,不過你的意識是很好的.再,如果是10台直接統一管理完全完全可以使用cssh這樣的多視窗工具,或者一些pssh批量執行工具,同時進行操作管理,這個不需要任何成本代價.再,你說到系統情況,應該是監控這一塊的,用一個開源工具來集中查看,像ganglia nagios這些開源工具完全夠用.再,系統的配置是在你的伺服器標準化後,可以自己寫指令碼完成,或者複雜點使用開源的puppet也可以滿足.最後,如果你實力很強,或者覺得現在的工具太不緊湊了你可以自己寫些管理平台,這個看你具體的需求了.END,需求帶動生產吧,細節有很多需要思考.PS:一般出於安全考慮,還會有統一的管理入口伺服器,這樣你的管理結構就又要發生一些變化了,安全和效率的取捨關係.
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.