day01-系统基础信息模块
前言:2015年,由于大规模采用云平台虚拟机部署应用,每套应用系统的MySQl、接口机、WEB服务器、文件服务器需要经常进行版本升级、配置更新、安全补丁加固、iptables调整、配置核实,大量的手工操作比较繁琐,需要考虑自动化运维手段,而Python是个比较好的选择,在当当网上看到一本《Python自动化运维 技术与最佳实践》,OK,下单买回学习。
不会开发的运维,竞争力会显得更加单薄,尽早步入运维开发是必然选择。
一、系统信息性能管理psutil模块:
1.psutil是一个跨平台库(http://pythonhosted.org/psutil/)能够轻松实现获取系统运行的进程和系统利用率(包括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等操作系统.
import psutil
print(psutil.cpu_times())
#scputimes(user=650613.02, nice=22.14, system=154916.5, idle=16702285.26, iowait=68894.55, irq=3.38, softirq=7075.65, steal=0.0, guest=0.0)
print(psutil.cpu_count())
print(psutil.cpu_count(logical=False))
#获取CPU使用率
print(psutil.cpu_percent()) #内存信息
mem = psutil.virtual_memory()
#svmem(total=4018601984, available=1066205184, percent=73.5, used=3904004096, free=114597888, active=3302174720, inactive=426078208, buffers=156520448, cached=795086848)
#查看内存大小
print(mem.total/1024/1024/1024)
#向上取整
print(round((mem.total/1024/1024/1024)))
#计算空闲内存
print(mem.free/mem.total)
print('%.2f%%' % (mem.free/mem.total * 100))
#计算可用内存
print('%.2f%%' % (mem.available/mem.total * 100)) #获取磁盘分区信息
print(psutil.disk_partitions())
print(psutil.disk_usage('\\'))
print(psutil.disk_usage('/'))
继续完善,批处理结果后系统输出,注意这是取单机信息,并非用于CMDB管理
物理CPU个数: 2
cup使用率: 37.5%
物理内存: 11.9 G
剩余物理内存: 7.13 G
物理内存使用率: 40 %
系统启动时间: 2015-09-17 17:52:05
当前有1个用户,分别是 fox
网卡接收流量 221.24 Mb 网卡发送流量 216.70 Mb
-----------------------------磁盘信息-------------------------------------
略
-----------------------------进程信息-------------------------------------
略
二、IP地址管理模块IPY
IPy模块提供了专门针对IPV4地址与IPV6地址的类与工具,可以帮助实现计算子网掩码、网络掩码、广播地址、子网数、IP类型等
from IPy import IP
ip_s = input('Please input an IP or net-range: ')
ips = IP(ip_s)
if len(ips) > 1:
print('net: %s' % ips.net())
print('netmask: %s' % ips.netmask())
print('broadcast: %s' % ips.broadcast())
print('reverse address: %s' % ips.reverseNames()[0])
print('subnet: %s' % len(ips))
else:
print('reverse address: %s' % ips.reverseNames()[0])
print('hexadecimal: %s' % ips.strHex())
print('binary ip: %s' % ips.strBin())
print('iptype: %s' % ips.iptype())
输入 Please input an IP or net-range: 192.168.80.0/24
输出如下
net: 192.168.80.0
netmask: 255.255.255.0
broadcast: 192.168.80.255
reverse address: 80.168.192.in-addr.arpa.
subnet: 256
hexadecimal: 0xc0a85000
binary ip: 11000000101010000101000000000000
iptype: PRIVATE
注,网络维护人员很熟配置,IP规划可能用不上这个工具
三、DNS处理模块dnspython
简介:dnspython – 是python实现的一个DNS工具包,利用其查询功能来实现dns的服务监控及解析结果的校验
安装dnspython pip install dnspython
day01-系统基础信息模块的更多相关文章
- ch01系统基础信息模块详解
第1章 系统基础信息模块详解 1.1 系统性能信息模块 psutil 解决VMWare在Windows10的安装问题: 安装VC Redistributable 2017 解决虚拟机的上网问题:修改V ...
- python自动化运维:系统基础信息模块
p { margin-bottom: 0.25cm; line-height: 120% } a:link { } 第一章: 首先介绍下系统性能信息模块:psutil psutil能够轻松实现获取系统 ...
- 《Python自动化运维之路》 系统基础信息模块(一)
系统性能收集模块Psutil 目录: 系统性能信息模块psutil 系统性能信息模块psutil psutil能够轻松实现获取系统运行的进程和系统利用率包括(CPU,内存,磁盘 和网络)等.主要用于系 ...
- Linux实战教学笔记06:Linux系统基础优化
第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...
- 12、ERP设计之 系统基础管理(BS)- 模块与菜单的关联
ShareERP2013-10-03 模块:具有功能设计.权限绑定,链接用户菜单与系统的重要桥梁. 菜单:是用于显示与用户交互的重要入口,更是导航系统的舵手,所以它的设计直接影响到用户体验. 菜单可能 ...
- Linux系统基础命令
这是看itercast的学习笔记 Linux系统基础命令 日期时间 命令date用以查看.设置当前系统时间:格式化显示时间: +%Y--%m--%d 命令hwclock(clock)用以显示硬件时钟时 ...
- 10、ERP设计之系统基础管理(BS)- 平台化设计
ShareERP 2013-09-03 ERP业务平台化是每个软件提供商必须要进行的趋势,传统定制化路线已死,不能走定制化的老路了.以往最大问的题是不能累积和沉淀技术及提升项目业务管理能力,其次是管理 ...
- django模板系统基础
模板系统基础Django模板是一个string文本,它用来分离一个文档的展现和数据 模板定义了placeholder和表示多种逻辑的tags来规定文档如何展现 通常模板用来输出HTML,但是Djang ...
- Linux系统基础优化
一.关闭防火墙iptables: (1)关闭 /etc/init.d/iptables stop (2)检查 ...
- Windows7系统基础操作
Windows7系统基础操作 操作系统是人机交互的时候桥梁,一种计算机软件,软件分为:系统软件+应用软件 区别是:系统软件是可以直接安装在硬件上的计算机由硬件和软件两部分组成 操作电脑核心是操作电脑的 ...
随机推荐
- 第七章 TCP和UDP原理
一.引入 1.TCP/IP协议族的传输层协议主要包括TCP和UDP 2.TCP是面向连接的可靠的传输层协议.它支持在并不可靠的网络上实现面向连接的可靠的数据传输 3.UDP是无连接的传输协议,主要用于 ...
- Python字典的初识、增删改查及嵌套
为什么要有字典? 列表可以存储大量的数据,但数据间的关联型不强 列表的查询速度相对慢 dict:字典,容器型数据类型 数据类型的分类: 可变与不可变 可变(不可哈希)的数据类型: 列表list,字典d ...
- VMware Workstatition启动虚拟机电脑蓝屏
电脑出了点问题,重装了系统,结果安装VMware之后,一启动虚拟机电脑就蓝屏重启. 系统是win10 19041 开始用的原来下载的vmware15.0,创建虚拟机蓝屏,重启之后可以创建.创建完以后启 ...
- Nacos注册中心使用
创建两个工程,一个是nacos-provider, 另一个是naocos-consumer: 添加nacos-provider的依赖 <parent> <groupId>org ...
- svn右键菜单不显
问题1: 32位svn客户端安装到64位win7机器上,出现svn右键菜单不显. 网上有些说,,选择Mufwin7,关键下拉列表没有这项. 后来有人推荐64位系统安装64svn;32位系统安装32sv ...
- openresty下安装luarocks
wget https://luarocks.org/releases/luarocks-2.4.1.tar.gz tar -xzvf luarocks-2.4.1.tar.gz cd luarocks ...
- Java nio Server端示例
public class ServerNio { public static void main(String[] args) throws IOException, InterruptedExcep ...
- Redis 五种数据结构详解(string,hash,list,set,zset)
一.五种数据结构: 1. String--字符串 String 数据结构是简单的 key-value 类型,value 不仅可以是 String,也可以是数字(当数字类型用 Long 可以表示的时候e ...
- windows7 安装配置NodeJS、NPM
转载自https://blog.csdn.net/dengxw00/article/details/82974808 windows7 安装配置NodeJS.NPM一.安装 NodeJS1.登陆官网( ...
- sqlsugar入门(2)-C#方法与sugar自定义函数的区别
1.使用tostring获取当天数据 var list = ssc.Queryable<Student>().Where(o => o.CreateTime.Value.ToStri ...