Python運維相關模塊彙總

系統性能信息模塊psutil

psutil是一個跨平臺庫(http://code.google.com/p/psutil/),能夠輕鬆實現獲取系統運行的進程和系統利用率(包括CPU、內存、磁盤、網絡等)信息。它主要應用於系統監控,分析和限制系統資源及進程的管理。它實現了同等命令行工具提供的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、iostat、iotop、uptime、pidof、tty、taskset、pmap等。

發送電子郵件模塊smtplib

Python的smtplib模塊來實現郵件的發送功能,模擬一個smtp客戶端,通過與smtp服務器交互來實現郵件發送的功能,這可以理解成Foxmail的發郵件功能,在第一次使用之前我們需要配置smtp主機地址、郵箱賬號及密碼等信息,Python 2.3或更高版本默認自帶smtplib模塊。
SMTP類定義:smtplib.SMTP([host[, port[, local_hostname[,timeout]]]]),作爲SMTP的構造函數,功能是與smtp服務器建立連接,在連接成功後,就可以向服務器發送相關請求,比如登錄、校驗、發送、退出等。

探測Web服務質量方法

pycurl(http://pycurl.sourceforge.net)是一個用C語言寫的libcurl Python實現,功能非常強大,支持的操作協議有FTP、HTTP、HTTPS、TELNET等,可以理解成Linux下curl命令功能的Python封裝,簡單易用。本節通過調用pycurl提供的方法,實現探測Web服務質量的情況,比如響應的HTTP狀態碼、請求延時、HTTP頭信息、下載速度等,利用這些信息可以定位服務響應慢的具體環節。

構建集中式的病毒掃描機制

Clam AntiVirus(ClamAV)是一款免費而且開放源代碼的防毒軟件,軟件與病毒庫的更新皆由社區免費發佈,官網地址:http://www.clamav.net/lang/en/。目前ClamAV主要爲Linux、Unix系統提供病毒掃描、查殺等服務。pyClamad(http://xael.org/norman/python/pyclamd/)是一個Python第三方模塊,可讓Python直接使用ClamAV病毒掃描守護進程clamd,來實現一個高效的病毒檢測功能,另外,pyClamad模塊也非常容易整合到我們已有的平臺當中。

實現高效的端口掃描器

python-nmap模塊作爲nmap命令的Python封裝,可以讓Python很方便地操作nmap掃描器,它可以幫助管理員完成自動掃描任務和生成報告。
python-nmap模塊的兩個常用類,一個爲PortScanner()類,實現一個nmap工具的端口掃描功能封裝;另一個爲PortScannerHostDict()類,實現存儲與訪問主機的掃描結果。

系統批量運維管理器paramiko

paramiko是基於Python實現的SSH2遠程安全連接,支持認證及密鑰方式。可以實現遠程命令執行、文件傳輸、中間SSH代理等功能,相對於Pexpect,封裝的層次更高,更貼近SSH協議的功能,官網地址:http://www.paramiko.org
paramiko包含兩個核心組件,一個爲SSHClient類,另一個爲SFTPClient類。
SSHClient類是SSH服務會話的高級表示,該類封裝了傳輸(transport)、通道(channel)及SFTPClient的校驗、建立的方法,通常用於執行遠程命令。
SFTPClient作爲一個SFTP客戶端對象,根據SSH傳輸協議的sftp會話,實現遠程文件操作,比如文件上傳、下載、權限、狀態等操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章