- 1、本文档共59页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
python运维实例
第一部分Part 1
基础篇
■ 第1 章 系统基础信息模块详解
■ 第2 章 业务服务监控详解
■ 第3 章 定制业务质量报表详解
■ 第4 章 Python 与系统安全
Chapter 1 第1 章
系统基础信息模块详解
系统基础信息采集模块作为监控模块的重要组成部分,能够帮助运维人员了解当前系统
的健康程度,同时也是衡量业务的服务质量的依据,比如系统资源吃紧,会直接影响业务的
服务质量及用户体验,另外获取设备的流量信息,也可以让运维人员更好地评估带宽、设备
资源是否应该扩容。本章通过运用Python 第三方系统基础模块,可以轻松获取服务关键运营
指标数据,包括Linux 基本性能、块设备、网卡接口、系统信息、网络地址库等信息。在采
集到这些数据后,我们就可以全方位了解系统服务的状态,再结合告警机制,可以在第一时
间响应,将异常出现在苗头时就得以处理。
本章通过具体的示例来帮助读者学习、理解并掌握。在本章接下来的内容当中,我们的
示例将在一个连续的Python 交互环境中进行。
进入Python 终端,执行python 命令进入交互式的Python 环境,像这样:
# python
Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22)
[GCC 4.4.7(Red Hat 4.4.7-4)] on linux2
Type help, copyright, credits or license for more information.
1.1 系统性能信息模块psutil
psutil 是一个跨平台库(/p/psutil/ ),能够轻松实现获取系统运行的
第1章 系统基础信息模块详解 3
进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。它主要应用于系统监控,分
析和限制系统资源及进程的管理。它实现了同等命令行工具提供的功能,如ps 、top 、lsof 、
netstat 、ifconfig 、who 、df 、kill 、free 、nice 、ionice 、iostat 、iotop 、uptime 、pidof 、tty 、
taskset 、pmap 等。目前支持32 位和64 位的Linux 、Windows 、OS X 、FreeBSD 和Sun
Solaris 等操作系统,支持从2.4 到3.4 的Python 版本,目前必威体育精装版版本为2.0.0 。通常我们获取
操作系统信息往往采用编写shell 来实现,如获取当前物理内存总大小及已使用大小,shell
命令如下:
物理内存total 值 : free -m | grepMem | awk {print $2}
物理内存used 值 : free -m | grepMem | awk {print $3}
相比较而言,使用psutil 库实现则更加简单明了。psutil 大小单位一般都采用字节,如下:
import psutil
mem = psutil.virtual_memory()
mem.total,mem.used
(506277888L, 500367360L)
psutil 的源码安装步骤如下:
#wget /packages/source/p/psutil/psutil-2.0.0.tar.gz
--no-check-certificate
# tar -xzvf psutil-2.0.0.tar.gz
# cd psutil-2.0.0
# python setup.py install
1.1.1 获取系统性能信息
采集系统的基本性能信息包括CPU、内存、磁盘、网络等,可以完整描述当前系统的运
行状态及质量。psutil 模块已经封装了这些方法,用户可以根据自身的应用场景,调用相应
的方法来满足需求,非常简单实用。
(1 )CPU 信息
Linux 操作系统的CPU 利用率有以下几个部分:
User Time ,执行用户进程的时间百分比;
System Time ,执行内核进程和中断的时间百分比;
Wait IO ,由于IO 等待而使CPU 处于idle (空
文档评论(0)