Giter Site home page Giter Site logo

veops / cmdb Goto Github PK

View Code? Open in Web Editor NEW
1.3K 38.0 343.0 20.01 MB

CMDB: configuration and management of IT resources

Home Page: https://cmdb.veops.cn

License: GNU Affero General Public License v3.0

Python 65.09% Makefile 0.04% JavaScript 10.34% CSS 1.20% HTML 16.02% Less 7.21% Mako 0.01% Shell 0.09%
cmdb antd-vue flask-restful devops-tools python flask vue cmdb-api cmdb-ui ops

cmdb's People

Contributors

dependabot[bot] avatar evansung avatar fxiang21 avatar gmailnovo avatar ivongwy avatar kdyq007 avatar lovvvve avatar ohbonsai avatar pycook avatar ronething avatar rustrover avatar shaohaojiecoder avatar simontigers avatar wang-liang0615 avatar x-7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cmdb's Issues

关于使用 docker-compass 启动的错误信息

cmdb-search    | {"type": "server", "timestamp": "2020-08-07T03:22:04,711Z", "level": "DEBUG", "component": "o.e.a.s.TransportSearchAction", "cluster.name": "docker-cluster", "node.name": "2d19532a707e", "message": "[cmdb][0], node[ZbqLSFH8TyWXa83j1V1zoA], [P], s[STARTED], a[id=iCwYGQ9oS2u4npuLkODabw]: Failed to execute [SearchRequest{searchType=QUERY_THEN_FETCH, indices=[cmdb], indicesOptions=IndicesOptions[ignore_unavailable=false, allow_no_indices=true, expand_wildcards_open=true, expand_wildcards_closed=false, allow_aliases_to_multiple_indices=true, forbid_closed_indices=true, ignore_aliases=false, ignore_throttled=true], types=[], routing='null', preference='null', requestCache=null, scroll=null, maxConcurrentShardRequests=0, batchedReduceSize=512, preFilterShardSize=128, allowPartialSearchResults=true, localClusterAlias=null, getOrCreateAbsoluteStartMillis=-1, ccsMinimizeRoundtrips=true, source={\"from\":0,\"size\":25,\"query\":{\"bool\":{\"must\":[{\"term\":{\"type_id\":{\"value\":\"5\",\"boost\":1.0}}}],\"adjust_pure_negative\":true,\"boost\":1.0}},\"sort\":[{\"ci_id\":{\"order\":\"asc\"}}]}}]", "cluster.uuid": "AWs8Hz9NSUCXrY84m6Lozw", "node.id": "ZbqLSFH8TyWXa83j1V1zoA" ,

可以看到有创建 Es 的 index 索引,但是没有自动创建 map ?
前端报错代码 400
http://127.0.0.1:8000/api/v0.1/ci/s?q=_type:4&facet=idc&page=1&count=25

关于属性模型设计的问题

属性(Attribute)和 类型CIType 是1:N的关系么(例如不同的CIType都有一个叫做name的属性)?
如果是这样的关系,它实际的意义和作用是什么?
如果是1:1约束为什么不把 Attribute合并进CITypeAttribute?

使用该系统的公司List

应用CMDB到公司的,麻烦回复一下,使用的越多,更能激励我们做的更好。格式如下:

公司名 公司官网链接

选择合适的密码存储方案

属性增加密码的数据类型,具体的密码存储考虑对接知名的密码存储开源解决方案

  • 对接Vault
  • 内置密码存储方案

【权限】只读权限能批量导入

现象:
给某个用户一个ci的只读权限,该用户页面上有批量导入的按钮,并且能导入成功。

从前端代码上看,批量导入的按钮没有设置成只有管理员才有权限可以看到。api接口处的调用没细看。

用户删除后新增问题

我在用户管理中新增一个用户,该用户出现在用户管理和角色管理里面,但是删除后,再新增相同用户名和邮箱地址就会报错,排查mysql表cmdb.users和cmdb.acl_roles发现,用户删除后,相应的记录仍旧记录再表中,请问这个机制是否合理?

Multi language planned ?

Hello There !
First of all, thanks, CMDB looks amazing, great work !
I'm very interested in this tool and was wondering if there was a multi-language version planned?

资源数据分页异常

image
实地数据只有 8 条,显示 56 条,当分页大小为 50时,第一页只展示两条,api:/api/v0.1/ci/s?q=_type:60&count=50&page=1
image

Security concern

Hey there!

I belong to an open source security research community, and a member (@aravindd007) has found an issue, but doesn’t know the best way to disclose it.

If not a hassle, might you kindly add a SECURITY.md file with an email, or another contact method? GitHub recommends this best practice to ensure security issues are responsibly disclosed, and it would serve as a simple instruction for security researchers in the future.

Thank you for your consideration, and I look forward to hearing from you!

(cc @huntr-helper)

Python 3.8下不能运行和sql文件无法直接导入的问题

高于python 3.8,无法使用低版本的werkzeug。会报以下错误:

TypeError: required field "type_ignores" missing from Module
建议修改 requirements.txt: 将werkzeug依赖版本修改为: werkzeug >= 0.15.5

sql文件无法直接导入mariadb 10.4中。

怀疑使用navicat导出的语句在sql终端下不能很好的兼容(使用navicat可以正常导入)。建议作者在readme中给一下mysql版本。

CMDB使用案例征集,谢谢❤️

如您愿意,可将您使用CMDB的案例展示给我们,提交格式如下❤️❤️❤️,官网选填,谢谢!您的使用和认可是我们持续迭代这个项目的最大动力👊🏻

公司名称:
公司官网:

模型属性支持外键,界面支持选择

1:N,N侧模型支持添加外键attr,并且可以从1侧直接选择。自动添加一个belong_to的关联关系。

比如Pod模型,有一属性表示属于某个PSA(Product/Service/App),录入时可以直接选择并且校验

v2.2定义关系视图问题

麻烦问下,定义关系试图怎么操作?我这边新增了一个资源,怎么把新增资源放到资源视图里面?

ModuleNotFoundError: No module named 'attribute'

你好,
首先感谢你提供了优秀的源码,对我很有帮助
我在使用pycharm 运行flask 是 报错
Traceback (most recent call last):
File "C:\Users\Administrator\Envs\flask_cmdb\lib\site-packages\flask\cli.py", line 236, in locate_app
import(module_name)
File "E:\charles\coding\cmdb\cmdb-api\autoapp.py", line 7, in
from api.app import create_app
File "E:\charles\coding\cmdb\cmdb-api\api\app.py", line 15, in
import api.views
File "E:\charles\coding\cmdb\cmdb-api\api\views_init_.py", line 23, in
register_resources(os.path.join(HERE, "cmdb"), rest)
File "E:\charles\coding\cmdb\cmdb-api\api\resource.py", line 35, in register_resources
view = import(os.path.splitext(filename)[0])
ModuleNotFoundError: No module named 'attribute'

而在终端窗口运行不会报错,你知道是什么原因吗?

使用docker-compose运行,登录报错

登录时报这个错误,请问是啥原因:
message: "'str' object has no attribute 'decode'"

参考Dockerfile 打包成自己的镜像,使用docker-compose来运行。其中mysql、redis 是运行在宿主机种,docker就跑api、ui。api 后台报错信息如下:
2021-04-09 17:08:26,462 INFO /data/apps/cmdb/api/tasks/acl.py 16 - Role [3] rebuild..........
2021-04-09 17:08:26,489 INFO /data/apps/cmdb/api/tasks/acl.py 16 - Role [3] rebuild..........
2021-04-09 17:08:40,764 DEBUG /data/apps/cmdb/api/lib/perm/auth.py 82 - {'password': 'e10adc3949ba59abbe56e057f20f883e', 'username': 'demo'}
2021-04-09 17:08:41,126 INFO /data/apps/cmdb/api/models/acl.py 35 - demo
2021-04-09 17:08:41,153 ERROR /data/apps/cmdb/api/app.py 119 - Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 2311, in wsgi_app
response = self.full_dispatch_request()
File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 1834, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/local/lib/python3.7/site-packages/flask_restful/init.py", line 269, in error_router
return original_handler(e)
File "/usr/local/lib/python3.7/site-packages/flask_restful/init.py", line 269, in error_router
return original_handler(e)
File "/usr/local/lib/python3.7/site-packages/flask_restful/init.py", line 269, in error_router
return original_handler(e)
File "/usr/local/lib/python3.7/site-packages/flask_cors/extension.py", line 165, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 1737, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/local/lib/python3.7/site-packages/flask/_compat.py", line 35, in reraise
raise value.with_traceback(tb)
File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 1832, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 1818, in dispatch_request
return self.view_functionsrule.endpoint
File "/usr/local/lib/python3.7/site-packages/flask_restful/init.py", line 458, in wrapper
resp = resource(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/flask/views.py", line 88, in view
return self.dispatch_request(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/flask_restful/init.py", line 573, in dispatch_request
resp = meth(*args, **kwargs)
File "/data/apps/cmdb/api/lib/perm/auth.py", line 88, in wrapper
return func(*args, **kwargs)
File "/data/apps/cmdb/api/lib/decorator.py", line 31, in wrapper
return func(*args, **kwargs)
File "/data/apps/cmdb/api/lib/decorator.py", line 31, in wrapper
return func(*args, **kwargs)
File "/data/apps/cmdb/api/lib/perm/auth.py", line 103, in wrapper
return func(*args, **kwargs)
File "/data/apps/cmdb/api/views/account.py", line 58, in post
return self.jsonify(token=token.decode())
AttributeError: 'str' object has no attribute 'decode'

Description infomation

可否解释下该项目的具体使用说明文档
看到了设计文档,请close掉该issue

用户新增&&授权展示异常

1、ACL->用户管理:新增用户成功后,新增的用户不显示,必须刷新页面后才显示
2、资源数据->授权->授权用户/部门:选择一个新增的用户,所有新增用户和cmdb_agent 都会被选择
image

物理机硬盘关系显示

1、需求:在物理机显示属性看到硬盘模型的属性
需求来源:
1、服务树上需要查看多台物理机的磁盘
2、导出物理机的信息,没有磁盘的相关信息
image

修改那个文件才能更改访问IP。。

修改那个文件才能更改访问IP。。

貌似现在这个访问IP的绑定 直接是自动选择绑定网卡的。。。太难了。。vue ..

我是 云服务器。。他指向的是内网IP 。。。我在运行的时候加 0.0.0.0 访问的时候 任然有内网链接。。
请问如何解决

树分叉显示重复

模型关系定义如下:
image
树定义:
image

在stage--》Azure_HK添加cluster时树重复显示bug:
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.