博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cmdb项目1
阅读量:6305 次
发布时间:2019-06-22

本文共 2987 字,大约阅读时间需要 9 分钟。

CMDB项目

需求:

         1.ip地址

         2.mac地址

         3.

 

 

1.查看Linux硬件基础信息

         1.查看cpu       cat/proc/cpuinfo

                   (1)processor:包括这一逻辑处理器的唯一标识符。

                   (2)physical id :包括每个物理封装的唯一标识符。

                   (3)core id :保存每个内核的唯一标识符。

                   (4)siblings :列出了位于相同物理封装中的逻辑处理器的数量。

                   (5)cpu cores :包含位于相同物理封装中的内核数量。

                   (6)如果处理器为英特尔处理器,则vendor id       条目中的字符串是GenuineIntel。

                   (9)model name  :cpu型号

 

         2.逻辑cpu个数

                   cat /proc/cpuinfo | grep 'processor' | wc -l

         3.物理cpu个数      (cpu插槽)

                   cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l

         3.查看cpu是否支持64bit

                   cat /proc/cpuinfo | grep flags | grep 'lm' | wc -l

                   结果大于0,说明支持64bit计算

         4.查看cpu型号

                   cat /proc/cpuinfo | grep 'model name' | awk -F ':' '{print $2}'

 

         5.ip地址:

         6.mac地址:

2.python

         1.使用的模块

                   commands

                            commands.getstatusoutput(cmd)  返回两个元素(status, results);

                            commands.getoutput(cmd)              返回results

 

                   urllib

                            urllib.urlopen(url,date,proxies,context)

                   urllib2

                            该urllib2模块定义了有助于在复杂世界中打开URL(主要是HTTP)的功能和类 - 基本和摘要身份验证,重定向,Cookie等

                            urllib2.urlopen(url,data,timeout)

 

                   paramiko

 

                   各代表什么意思

                            def __xxx(self):

                            def _xxx(self):

 

 

                   hasattr(object, name)    内置函数

                            The arguments are an object and a string. The result is True if the string is the name of one of the object’s attributes, False if not. (This is implemented by calling getattr(object, name) and seeing whether it raises an AttributeError or not.)

 

                   getattr(object, name[, default])

                            Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object’s attributes, the result is the value of that attribute. For example, getattr(x, 'foobar') is equivalent to x.foobar. If the named attribute does not exist, default is returned if provided, otherwise AttributeError is raised.

 

 

 

         2.data={}

           {'cpu': {'CpuModeName': 'Intel(R) Core(TM) i5-5200U CPU @ 2.20GHz', 'processor': '1'}, 'hostname': 'kevin', 'asset': {'Wake-up Type': 'Power Switch', 'UUID': 'E4144D56-8399-AE0E-F1D1-5C01911B965C', 'Serial Number': 'VMware-56 4d 14 e4 99 83 0e ae-f1 d1 5c 01 91 1b 96 5c', 'Manufacturer': 'VMware, Inc.', 'Product Name': 'VMware Virtual Platform'}, 'network': {'macadd': '00:0C:29:1B:96:5C', 'netmask': '255.255.255.0', 'ip': '10.1.6.153', 'gateway': '10.1.6.255'}}

 

         3.  name = models.CharField(max_length=64, unique=True)

             sn = models.CharField(max_length=64, unique=True)

             network = models.GenericIPAddressField(null=True, blank=True)

             #asset = models.OneToOneField('Asset')

             ip = models.GenericIPAddressField(null=True, blank=True)

             mac = models.CharField(max_length=50)

             hostname = models.CharField(max_length=50)

             processor=models.BooleanField(default = 5)

             physicalId=models.BooleanField(default = 5)

             #是否支持64位

             support=models.BooleanField(default = 5)

             models_Name=models.CharField(max_length=50)

 

 

 

3.myql

         ip地址,mac地址,

         cpu    -- cpu个数,cpu插槽,查看cpu是否支持64bit,查看cpu型号。。。

 

 

 

4.Client发送数据判断是否和前一次数据相同?

 

 

 

5.遇到问题:

         1.django  erro

         2.一条数据从Client 传过来,怎么判定是Updata还是 Create??

                   答:新插入:通过一遍又一遍分析别人的代码,别人转换思想,在MySQL创建一个新资产审批库,然后把新数据插入库中....待处理

                            当一条数据传送过来,先判定数据中是否有同样的sn,若有则是更新中,无则是新建,然后在新资产审批库中Create ,然后在管理人员在web 页面确认。

         3.流程图:https://www.processon.com/view/link/59b54c84e4b00e6de914c04a

转载于:https://www.cnblogs.com/Xkay/p/7502760.html

你可能感兴趣的文章
BZOJ3105 [cqoi2013]新Nim游戏
查看>>
困惑的前置操作与后置操作
查看>>
SDNU 1269.整数序列(水题)
查看>>
BZOJ 2118 Dijkstra
查看>>
Go语言基础之结构体
查看>>
SpringCloud:Eureka Client项目搭建(Gradle项目)
查看>>
jqueryValidate
查看>>
ATL使用IE控件,并且屏蔽右键
查看>>
Jenkins
查看>>
linux下使用screen和ping命令对网络质量进行监控
查看>>
数据库设计技巧
查看>>
css定位概述
查看>>
C# 动态修改配置文件 (二)
查看>>
BOM:文档对象模型 --树模型
查看>>
我的Android进阶之旅------>WindowManager.LayoutParams介绍
查看>>
segment
查看>>
获取鼠标的原始移动值
查看>>
Linux信号 编程
查看>>
有关滚动与位置
查看>>
Box2D自定义重力
查看>>