码迷,mamicode.com
首页 > 数据库 > 详细

cmdb项目1

时间:2017-09-10 23:47:15      阅读:348      评论:0      收藏:0      [点我收藏+]

标签:timeout   vmw   context   max   data   bsp   cal   定义   switch   

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

cmdb项目1

标签:timeout   vmw   context   max   data   bsp   cal   定义   switch   

原文地址:http://www.cnblogs.com/Xkay/p/7502760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!