如果你有若干臺數據庫服務器,突然你想知道它們當前的即時負載情況,你會怎么辦?挨個登錄上去uptime一下?感覺有點傻,寫個shell?浪費時間,直接用ClusterShell吧!
ClusterShell的安裝與配置
ClusterShell的安裝很Easy,如果使用APT或YUM包管理方式的話,基本就是一條命令的事兒,我就不說了,這里說一下如何從源代碼安裝,需要在源代碼目錄執行如下命令:
shell> python setup.py install
為了使用的方便,還需要拷貝配置文件到指定目錄:
shell> mkdir /etc/clustershell shell> cp conf/* /etc/clustershell
接著配置我們要管理的節點,假設我們配置了一個db組,包含db_[1-3]三個節點:
shell> cat /etc/clustershell/groups db: db_1 db_2 db_3
準備就緒,順著文章開頭的例子說:查詢所有數據庫服務器當前的負載情況:
shell> clush -g db "uptime"
注:前提是需要在被操作服務器上設置免密碼登錄,如果不清楚,請看下面的內容。
番外篇:如何配置服務器免密碼登錄?
如果沒有事先生成ssh密匙的話,需要先生成:
shell> ssh-keygen
可選操作:為了方便,我們可以給需要登錄的服務器起一個可讀性更好的別名,如果你做了類似的操作,那么后面的@都可以換成對應的:
shell> cat ~/.ssh/config Host db_1 Hostname User Port Host db_2 Hostname User Port Host db_3 Hostname User Port
然后把生成的公鑰添加到需要登錄的服務器指定位置:
shell> cat ~/.ssh/id_rsa.pub | ssh @ "cat - >> ~/.ssh/authorized_keys"
如果你和我一樣總記不清如何正確拼寫authorized_keys,可以接著學一下ssh-copy-id的用法,這個命令可以讓操作更簡單點:
shell> ssh-copy-id -i ~/.ssh/id_rsa.pub "@"
注:每配置好一臺免密碼登錄的服務器,最好手動實際操作一下,因為第一次連接會要求手動確認是否保存信息到~/.ssh/known_hosts文件。
…
有的網友會說,監控服務器負載可以用Munin之
類的工具。不錯確實如此,不過Munin之類的工具無法給你一個及時數據,另外,ClusterShell并不局限在查詢負載的功能上,跟上不同的命令,
就可以查詢不同的數據,而在Munin之類的工具里,如果你想監控某個數據,必須有對應的插件才行。ClusterShell是不可或缺的Linux運維
利器!
原創文章,作者:追馬,如若轉載,請注明出處:http://www.www58058.com/4318