cmdb 配置

cmdb客户端文件夹创建

客户端:client:-bin:启动文件-src:源文件(核心代码)-conf:配置文件-lib:全局的一些方法 和配置-test:测试文件

??模仿django一个暴露给用户的settings文件,一个全局配置文件global_settings,然后都可以实现通过settings这个对象点出属性方法也就是自定义配置或者全局配置,所以要创两个配置文件??
??实现第一个功能:集成自定制配置文件和全局配置文件??
在start文件中导入lib文件夹中config文件夹中的config中settings对象,然后Setings这个类要进行实例化,实例化的时候就会触发__init__方法,这个函数里面将custom_settings和global_settings里所有的配置key,value值都设置到settings对象里面,然后就可以对象点的方式获取到值?????

custom_settigns.py    (暴露给用户的配置文件)
USER = ‘root‘

global_settings.py        (全局的配置文件)

EMAIL_USER = ‘test‘

然后可以先在测试文件test中进行测试一下

s1.py

USER = ‘root‘
port = 23

s2.py

import s1

print(dir(s1)) #变成字典
# [‘USER‘, ‘__builtins__‘, ‘__cached__‘, ‘__doc__‘, ‘__file__‘, ‘__loader__‘, ‘__name__‘, ‘__package__‘, ‘__spec__‘, ‘port‘]

print(s1)
print(s1.USER)  导入文件也可以点的方式获取到文件中的内容,文件实际上也是个对象,可以通过点的方式来获取值

for key in dir(s1):
    if key.isupper():  # 我们只要大写的,因为配置文件里面规定大写,小写就排除掉
        print(key)

config.py 

将custom_settings和global_settings里所有的配置key,value值都设置到settings对象里面??
from conf import custom_settings
from . import global_settings
全局配置要放在自定制配置上面,因为这样才会实现全局和局部同一个配置,先加载用户写的配置

class Settings():
    def __init__(self):
        ### 全局设置
        for key in dir(custom_settings):
            if key.isupper():
                v = getattr(global_settings, key)  # 获取全局配置文件中配置的值,第一个是对象(导入的文件),第二个key,v就是key对应的值
                setattr(self, key,v)  # self代表的是当前的对象settings,key就是配置文件的大写的配置,v 就是self.配置的值也就是key对应的值,                        所以这样就可以通过settings这个对象点的方式获取到值

    ### 自定制配置
        for key in dir(custom_settings):
            if key.isupper():
                v = getattr(custom_settings, key)  # 第一个是对象,第二个key
                setattr(self, key,v)  # self代表的是当前的对象settings,key就是配置文件的大写的配置,v 就是self.配置的值,所以这样就可以通过settings这个对象点的方式获取到值

settings = Settings()

start.py

start文件中导入config中settings对象??
from lib.config.config import settings

if __name__ == ‘__main__‘:
    pass


原文地址:https://www.cnblogs.com/huangxuanya/p/11621819.html

时间: 2024-07-30 10:07:55

cmdb 配置的相关文章

如何让CMDB配置维护更贴近人性

近来很多行业内的大佬关于CMDB连连发声,CMDB的关注度持续高涨,CMDB的前生就是长满雀斑的丑媳妇,扭扭捏捏不受待见这么多年,终于熬出头要见公婆了.哎,她的贤惠谁能懂? 言归正传,在拜读了多篇大牛的文章发现,提及配置维护的内容很少,有也是一带而过.但在过去和用户的接触过程中,发现配置维护一直是一个无法回避的大难题,一块难啃的骨头.业界产品的普遍做法主要是依靠自动发现+人工维护+流程控制.对于自动发现.流程控制,我想只能解决配置维护的60%的工作,真正出现问题的是占用40%工作量的人工维护.由

CMDB配置资源管理数据库(理解)

CMDB是运维自动化的基础,它为日志系统,发布系统,监控系统等运维系统(ELK,zabbix,open-falcon)提供接口函数, 第一种方式:agent方法实现,agent不能直接访问数据库,因为agent端有可能被入侵,入侵之后,黑客可以获取数据库权限,造成删库等损失,所以得用url方式 当然subprocess不能用于CMDB采集数据,因为这个模块通常用于本机 >>> import subprocess>>> subprocess.getoutput('ipco

双态运维:如何让CMDB配置维护更贴近人性

近来很多行业内的大佬关于CMDB连连发声,CMDB的关注度持续高涨,CMDB的前生就是长满雀斑的丑媳妇,扭扭捏捏不受待见这么多年,终于熬出头要见公婆了.哎,她的贤惠谁能懂? 言归正传,在拜读了多篇大牛的文章发现,提及配置维护的内容很少,有也是一带而过.但在过去和用户的接触过程中,发现配置维护一直是一个无法回避的大难题,一块难啃的骨头.业界产品的普遍做法主要是依靠自动发现+人工维护+流程控制.对于自动发现.流程控制,我想只能解决配置维护的60%的工作,真正出现问题的是占用40%工作量的人工维护.由

优云实践:巧用Salt,实现CMDB配置自动发现

随着互联网+新形势的发展,越来越多的企业步入双态(稳敏双态)IT时代,信息化环境越来越复杂,既有IOE三层架构,也有VCE.Openstack等云虚拟化架构和互联网化的分布式大数据架构.所以,企业急需建立一套合适的配置管理库(CMDB),像人类"大脑"一样统一存储从基础架构到业务应用各层面的配置信息,以便协调"身体"(运维系统)各部分完成复杂的运维工作. CMDB如此重要,但又是运维中最难建设好的部分,就连很多IT运维界大佬都感叹CMDB是运维人的最痛点,他们总结C

巧用Salt,实现CMDB配置自动发现

随着互联网+新形势的发展,越来越多的企业步入双态(稳敏双态)IT时代,信息化环境越来越复杂,既有IOE三层架构,也有VCE.Openstack等云虚拟化架构和互联网化的分布式大数据架构.所以,企业急需建立一套合适的配置管理库(CMDB),像人类"大脑"一样统一存储从基础架构到业务应用各层面的配置信息,以便协调"身体"(运维系统)各部分完成复杂的运维工作. CMDB如此重要,但又是运维中最难建设好的部分,就连很多IT运维界大佬都感叹CMDB是运维人的最痛点,他们总结C

cmdb部署文档

说明:为了统一规范管理内网服务器用户密码信息,现部署一套CMDB系统来进行管理. 一.环境需求: 对于安装环境的介绍,CMDB的安装手册上有详细的说明,在此也简单的介绍一下: 硬件环境: CPU一般即可 内存最小为2G 最小存储空间为60G 软件要求: 操作系统:最好是Linux 数据库:PostgreSQL 8.4以后,RDS为9.4,所以我们选择9.4版本,必须选择PostgreSQL Web服务器(容器):resin4.0.25(官方提供是Tomcat6,由于我们线上都是采用的resin,

拨开障目的叶,一览CMDB庐山真面目

人们往往用"一叶障目,不见泰山"来形容一个人被局部现象所迷惑,看不到事物发展的整体脉络,从而做出一些不是十分正确的决策.小编觉得对于运维何尝不是这样呢. 大多数企业资产配置维护的现状是怎样的呢?我们来一起看看: 各部门守着自己的一亩三分地,资产各自维护: 人工维护费时费力,稍有懈怠便未能及时更新: 数据独立静态化,没有可视化手段查看. 万事皆有源,很多企业也因此会面临相似的问题: 管理者想要查看业务与资源间的利用关系,无从下手: 维护者想要资源可以实时推送,苦于没有自动发现工具: 各部

日常维护管理-DBA运维交接清单

序号 交接内容 交接目标与要点 交接物 交接状态 交接开始时间 交接结束时间 负责人 备注 1 人事关系 与开发项目组成员互识,并了解其职责 开发项目组成员清单 2016/2/29 2016/2/29 2 资产及权限 了解所有服务器的资产信息    获取所有服务器的管理权限 生产服务器清单    灾备服务器清单    测试服务器清单(自用)    其它服务器清单 3 业务基础知识 了解系统基本的业务知识 系统业务概述 4 应用发布方法 掌握系统的安装部署方法    掌握系统的升级部署方法 系统应

Centos 7 搭建蓝鲸3.1.5社区办

第一次搭建蓝鲸平台,参考了蓝鲸社区的官方搭建文档. 友情链接:蓝鲸智云社区版V3.1用户手册 搭建时遇到了不少的坑,这里做一个详细的安装梳理 主机硬件要求 官方的推荐如下: 我在公司测试环境搭建时机器数量3台,4核8G的配置. 可以根据实际情况,自行选择. 主机环境要求 如标题所述,我在centos 7下安装的蓝鲸平台. 如果需要更换本地的yum源可以参考我之前写的一篇文章,点击这里 接下来下载安装包到任意一台服务器的/data 目录,该机器作为中控机,把安装包解压并cd到解压后的install