From 90350a43ce797baaf8b55623cfadef4bfe085d9d Mon Sep 17 00:00:00 2001 From: bd-xiaowang Date: Thu, 13 Jun 2024 14:23:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9ECMDB=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E8=A1=A8=E7=BB=93=E6=9E=84=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/db/README.md | 26 +++ docs/db/built-in_model.md | 127 +++++++++++++ docs/db/business.md | 137 ++++++++++++++ docs/db/cloud_resource.md | 111 ++++++++++++ docs/db/container_data_manage.md | 296 +++++++++++++++++++++++++++++++ docs/db/field_template.md | 84 +++++++++ docs/db/host_apply_rule.md | 24 +++ docs/db/instance.md | 50 ++++++ docs/db/mainline_model.md | 128 +++++++++++++ docs/db/model.md | 168 ++++++++++++++++++ docs/db/operational_analysis.md | 161 +++++++++++++++++ docs/db/other.md | 69 +++++++ docs/db/plat.md | 27 +++ docs/db/service_template.md | 93 ++++++++++ docs/db/set_template.md | 59 ++++++ docs/db/task.md | 43 +++++ docs/db/user_custom.md | 27 +++ docs/db/watch.md | 61 +++++++ readme.md | 1 + 19 files changed, 1692 insertions(+) create mode 100644 docs/db/README.md create mode 100644 docs/db/built-in_model.md create mode 100644 docs/db/business.md create mode 100644 docs/db/cloud_resource.md create mode 100644 docs/db/container_data_manage.md create mode 100644 docs/db/field_template.md create mode 100644 docs/db/host_apply_rule.md create mode 100644 docs/db/instance.md create mode 100644 docs/db/mainline_model.md create mode 100644 docs/db/model.md create mode 100644 docs/db/operational_analysis.md create mode 100644 docs/db/other.md create mode 100644 docs/db/plat.md create mode 100644 docs/db/service_template.md create mode 100644 docs/db/set_template.md create mode 100644 docs/db/task.md create mode 100644 docs/db/user_custom.md create mode 100644 docs/db/watch.md diff --git a/docs/db/README.md b/docs/db/README.md new file mode 100644 index 0000000000..de25453068 --- /dev/null +++ b/docs/db/README.md @@ -0,0 +1,26 @@ +# 数据库表结构设计 + +*说明:蓝鲸配置平台(蓝鲸CMDB)项目底层使用MongoDB进行数据存储,MongoDB是一个面向文档的数据库,因此它没有传统的表结构,而是使用集合(Collection)和文档(Document)来组织数据,本目录下文档中涉及的表结构和字段解释仅供参考,请以实际环境中的结构为准。* + +## 表结构文档分类及作用 + +| 作用 | 分类文档 | +|----------------|---------------------------------------------------| +| 内置模型相关表 | [built-in_model](built-in_model.md) | +| 业务下相关资源表 | [business](business.md) | +| 云资源相关功能表 | [cloud_resource](cloud_resource.md) | +| 容器数据纳管功能相关表 | [container_data_manage](container_data_manage.md) | +| 字段组合模板功能相关表 | [field_template](field_template.md) | +| 主机属性自动应用功能相关表 | [host_apply_rule](host_apply_rule.md) | +| 实例相关表 | [instance](instance.md) | +| 主线模型相关表 | [mainline_model](mainline_model.md) | +| 模型相关表 | [model](model.md) | +| 运营分析功能相关表 | [operational_analysis](operational_analysis.md) | +| 管控区域相关表 | [plat](plat.md) | +| 服务模板功能相关表 | [service_template](service_template.md) | +| 集群模板功能相关表 | [set_template](set_template.md) | +| 异步任务相关表 | [task](task.md) | +| 资源目录用户自定义配置相关表 | [user_custom](user_custom.md) | +| 资源变更事件相关表 | [watch](watch.md) | +| 不归属任何一种分类的表 | [other](other.md) | + diff --git a/docs/db/built-in_model.md b/docs/db/built-in_model.md new file mode 100644 index 0000000000..e5ff44903f --- /dev/null +++ b/docs/db/built-in_model.md @@ -0,0 +1,127 @@ +# 内置模型相关表 + +## cc_BizSetBase + +#### 作用 + +存放业务集信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_set_id | NumberLong | 业务集id | +| bk_biz_set_name | String | 业务集名称 | +| bk_biz_set_desc | String | 业务集描述 | +| bk_biz_maintainer | String | 维护者 | +| bk_scope | Object | 业务集范围 | +| default | NumberLong | 是否是默认业务集,1代表是,0代表否 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对业务集内置的模型字段做说明,业务集表结构字段取决于用户在业务集模型中定义的属性字段 + +#### bk_scope 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----------|---------|------------| +| match_all | Boolean | 是否包含所有业务 | +| filter | Object | 所包含业务的条件规则 | + +#### bk_scope.filter 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----------|--------|-----------| +| condition | String | 规则操作符 | +| rules | Array | 过滤节点的范围规则 | + +#### bk_scope.filter.rules 字段结构示例 + +过滤规则为三元组 `field`, `operator`, `value` + +| 字段 | 类型 | 描述 | +|----------|--------|-----------------------------| +| field | string | 字段名 | +| operator | string | 操作符 | +| value | - | 操作数,不同的operator对应不同的value格式 | + +## cc_HostBase + +#### 作用 + +主机信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|--------------------------|--------------|--------------| +| _id | ObjectId | 数据唯一ID | +| bk_os_name | String | 操作系统名称 | +| bk_addressing | String | 寻址方式 | +| import_from | String | 录入方式 | +| bk_sla | String | SLA级别 | +| bk_cpu_module | String | CPU型号 | +| bk_host_innerip_v6 | String Array | 内网IPv6 | +| bk_agent_id | String | GSE Agent ID | +| bk_cloud_host_identifier | Boolean | 云主机标识 | +| bk_os_bit | String | 操作系统位数 | +| bk_sn | String | 设备SN | +| bk_host_outerip | String Array | 外网IP | +| bk_service_term | NumberLong | 质保年限 | +| bk_state_name | String | 所在国家 | +| bk_mac | String | 内网MAC地址 | +| bk_cloud_inst_id | String | 云主机实例ID | +| bk_cpu_architecture | String | CPU架构 | +| bk_os_version | String | 操作系统版本 | +| operator | String Array | 主要维护人 | +| bk_os_type | String | 操作系统类型 | +| bk_host_id | NumberLong | 主机id | +| bk_cloud_id | NumberLong | 管控区域id | +| bk_comment | String | 备注 | +| bk_cloud_host_status | NumberLong | 云主机状态 | +| bk_bak_operator | String Array | 备份维护人 | +| bk_province_name | NumberLong | 所在省份 | +| bk_isp_name | String | 所属运营商 | +| bk_disk | NumberLong | 磁盘容量(GB) | +| bk_outer_mac | String | 外网MAC | +| bk_state | String | 当前状态 | +| bk_host_outerip_v6 | String Array | 外网IPv6 | +| bk_host_name | String | 主机名称 | +| bk_asset_id | String | 固资编号 | +| bk_cloud_vendor | String | 云厂商 | +| bk_host_innerip | String Array | 内网IP | +| bk_cpu | NumberLong | CPU逻辑核心数 | +| bk_mem | NumberLong | 内存容量(MB) | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对主机内置的模型字段做说明,主机表结构字段取决于用户在主机模型中定义的属性字段 + +## cc_ProjectBase + +#### 作用 + +项目表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增ID | +| bk_project_id | String | 项目ID | +| bk_project_code | String | 项目英文名 | +| bk_project_type | String | 项目类型 | +| bk_project_owner | String | 项目负责人 | +| bk_project_name | String | 项目名称 | +| bk_project_desc | String | 项目描述 | +| bk_project_sec_lvl | String | 保密级别 | +| bk_status | String | 项目状态 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对项目内置的模型字段做说明,项目表结构字段取决于用户在项目模型中定义的属性字段 \ No newline at end of file diff --git a/docs/db/business.md b/docs/db/business.md new file mode 100644 index 0000000000..e9c2daecab --- /dev/null +++ b/docs/db/business.md @@ -0,0 +1,137 @@ +# 业务下相关资源表 + +## cc_ServiceCategory + +#### 作用 + +服务分类信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 分类id | +| name | String | 分类名称 | +| bk_root_id | NumberLong | 根节点id | +| bk_parent_id | NumberLong | 父节点id | +| is_built_in | Boolean | 是否为系统内置 | +| bk_biz_id | NumberLong | 业务id | +| bk_supplier_account | String | 开发商ID | + +## cc_HostFavourite + +#### 作用 + +存放收藏主机搜索条件信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| id | NumberLong | 自增id | +| info | String | ip查询条件 | +| name | String | 收藏的名称 | +| count | NumberLong | 数量 | +| user | String | 创建者 | +| type | String | 收藏类型 | +| query_params | String | 通用查询条件 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ServiceInstance + +#### 作用 + +服务实例信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_biz_id | NumberLong | 业务id | +| name | String | 服务实例名 | +| labels | Object | 标签 | +| service_template_id | NumberLong | 服务模板id | +| bk_host_id | NumberLong | 主机id | +| bk_module_id | NumberLong | 模块id | +| creator | String | 创建人 | +| modifier | String | 更新人 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### labels 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----|--------|-------------------------| +| env | String | 标签名称,由用户自定义,此处 env 仅为例子 | + +## cc_Process + +#### 作用 + +进程实例信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| service_instance_id | NumberLong | 服务实例id | +| start_cmd | String | 启动命令 | +| user | String | 启动用户 | +| bk_start_param_regex | String | 启动参数匹配规则 | +| restart_cmd | String | 重启命令 | +| face_stop_cmd | String | 强制停止命令 | +| work_path | String | 工作路径 | +| description | String | 备注 | +| priority | NumberLong | 启动优先级 | +| bk_process_name | String | 进程别名 | +| bk_start_check_secs | NumberLong | 启动等待时长 | +| bk_func_name | String | 进程名称 | +| reload_cmd | String | 进程重载命令 | +| pid_file | String | PID文件路径 | +| auto_start | Boolean | 是否自动拉起 | +| bk_biz_id | NumberLong | 业务ID | +| proc_num | NumberLong | 启动数量 | +| stop_cmd | String | 停止命令 | +| bk_process_id | NumberLong | 进程id | +| timeout | NumberLong | 操作超时时长 | +| bind_info | Array | 绑定信息 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### bind_info 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----------------|------------|------------| +| enable | Boolean | 是否启用 | +| template_row_id | NumberLong | 在进程模板中的行id | +| ip | String | 绑定ip | +| port | String | 绑定端口 | +| protocol | String | 通信方式 | + +## cc_ProcessInstanceRelation + +#### 作用 + +存放进程实例关联关系信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| bk_process_id | NumberLong | 进程id | +| service_instance_id | NumberLong | 服务实例id | +| process_template_id | NumberLong | 进程模板id | +| bk_host_id | NumberLong | 主机id | +| bk_supplier_account | String | 开发商ID | \ No newline at end of file diff --git a/docs/db/cloud_resource.md b/docs/db/cloud_resource.md new file mode 100644 index 0000000000..bd6002daff --- /dev/null +++ b/docs/db/cloud_resource.md @@ -0,0 +1,111 @@ +# 云资源相关功能表 + +## cc_CloudAccount + +#### 作用 + +存放云账户信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-----------------------|------------|---------| +| _id | ObjectId | 数据唯一ID | +| bk_account_name | String | 云账户名称 | +| bk_account_id | NumberLong | 云账户id | +| bk_secret_id | String | 云账户密钥id | +| bk_secret_key | String | 云账户密钥 | +| bk_cloud_vendor | String | 云厂商 | +| bk_description | String | 云账户描述 | +| bk_can_delete_account | Boolean | 是否可删除 | +| bk_creator | String | 创建人 | +| bk_last_editor | String | 最后更新人 | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_CloudSyncHistory + +#### 作用 + +存放云同步任务历史信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-----------------------|----------|-----------| +| _id | ObjectId | 数据唯一ID | +| bk_task_id | String | 任务ID | +| bk_history_id | String | 云同步任务历史ID | +| bk_sync_status | String | 任务执行状态 | +| bk_status_description | Object | 任务状态描述 | +| bk_detail | Object | 任务详情信息 | +| create_time | ISODate | 创建时间 | +| bk_supplier_account | String | 开发商ID | + +#### bk_status_description 字段结构示例 + +| 字段 | 类型 | 描述 | +|------------|--------|-----------| +| cost_time | Float | 云同步任务花费时间 | +| error_info | String | 错误信息 | + +#### bk_detail 字段结构示例 + +| 字段 | 类型 | 描述 | +|---------|--------|--------| +| update | Object | 更新的云实例 | +| new_add | Object | 新增的云实例 | + +#### update 和 new_add 字段结构示例 + +| 字段 | 类型 | 描述 | +|-------|--------------|---------| +| count | NumberLong | 云实例数量 | +| ips | String Array | 云实例IP数组 | + +## cc_CloudSyncTask + +#### 作用 + +存放云同步任务表信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-----------------------|--------------|----------| +| _id | ObjectId | 数据唯一ID | +| bk_task_id | String | 任务ID | +| bk_task_name | String | 任务名称 | +| bk_resource_type | String | 资源类型 | +| bk_account_id | NumberLong | 云账户id | +| bk_cloud_vendor | String | 云厂商 | +| bk_sync_status | String | 任务执行状态 | +| bk_status_description | Object | 任务状态描述 | +| bk_last_sync_time | ISODate | 任务最后同步时间 | +| bk_sync_all | Boolean | 是否同步所有实例 | +| bk_sync_all_dir | NumberLong | 同步目录 | +| bk_sync_vpcs | Object Array | VPC详情 | +| bk_creator | String | 创建人 | +| bk_last_editor | String | 最后更新人 | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | +| bk_supplier_account | String | 开发商ID | + +#### bk_status_description 字段结构示例 + +| 字段 | 类型 | 描述 | +|------------|--------|-----------| +| cost_time | Float | 云同步任务花费时间 | +| error_info | String | 错误信息 | + +#### bk_sync_vpcs 字段结构示例 + +| 字段 | 类型 | 描述 | +|---------------|------------|-----------| +| bk_vpc_id | String | vpc id | +| bk_vpc_name | String | vpc 名称 | +| bk_region | String | 地域 | +| bk_host_count | NumberLong | 主机数量 | +| bk_sync_dir | NumberLong | 同步到主机池的目录 | +| bk_cloud_id | NumberLong | 管控区域 | +| destroyed | Boolean | 云实例是否已释放 | \ No newline at end of file diff --git a/docs/db/container_data_manage.md b/docs/db/container_data_manage.md new file mode 100644 index 0000000000..9c7d1ec0eb --- /dev/null +++ b/docs/db/container_data_manage.md @@ -0,0 +1,296 @@ +# 容器数据纳管功能相关表 + +## cc_ClusterBase + +#### 作用 + +容器数据纳管——集群表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|--------------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| bk_cluster_name | String | 集群名称 | +| bk_scheduling_engine | String | 调度引擎 | +| bk_uid | String | 集群ID | +| bk_tke_cluster_id | String | 集群在TKE服务中的唯一标识符 | +| bk_cluster_version | String | 集群版本 | +| bk_network_type | String | 集群网络类型, overlay或underlay | +| bk_region | String | 所属地域 | +| bk_vpc | String | vpc网络 | +| bk_cluster_network | String | 集群网络 | +| bk_cluster_type | String | 集群类型 | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ContainerBase + +#### 作用 + +容器数据纳管——容器表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|------------| +| _id | ObjectId | 数据唯一ID | +| bk_pod_id | NumberLong | pod在cc中的id | +| container_uid | String | 容器ID | +| image | String | 镜像信息 | +| name | String | 容器名称 | +| ports | Array | 容器端口 | +| host_ports | Array | 主机端口映射 | +| args | Array | 启动参数 | +| started | NumberLong | 启动时间 | +| requests | Object | 申请资源大小 | +| limits | Object | 资源限制 | +| liveness | Object | 存活探针 | +| environment | Array | 环境变量 | +| mounts | Array | 挂载卷 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### requests 和 limits 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----|--------|-----------------------------| +| cpu | String | 资源名称,字段名称由用户自定义,此处 cpu 仅为例子 | + +#### requests.cpu 和 limits.cpu 字段结构示例 + +| 字段 | 类型 | 描述 | +|--------|--------|------------| +| format | String | 申请或限制的资源大小 | + +#### liveness 字段结构示例 + +| 字段 | 类型 | 描述 | +|-------------------------------|------------|-----------------------| +| exec | Object | 要在容器内执行的命令行操作 | +| httpGet | Object | 基于 HTTP GET 请求的存活探针配置 | +| tcpSocket | Object | 基于 TCP Socket 的存活探针配置 | +| grpc | Object | 基于 gRPC 的存活探针配置 | +| initialDelaySeconds | NumberLong | 容器启动后等待多少秒后开始执行探测 | +| timeoutSeconds | NumberLong | 探测的超时时间 | +| periodSeconds | NumberLong | 连续探测之间的时间间隔 | +| successThreshold | NumberLong | 连续多少次成功的探测才认为容器健康 | +| failureThreshold | NumberLong | 连续多少次失败的探测才认为容器不健康 | +| terminationGracePeriodSeconds | NumberLong | 探测失败后容器需要终止的等待时间 | + +#### liveness.exec 字段结构示例 + +| 字段 | 类型 | 描述 | +|---------|--------------|-----------------| +| command | String Array | 要在容器内执行的命令行操作数组 | + +#### liveness.httpGet 字段结构示例 + +| 字段 | 类型 | 描述 | +|-------------|--------------|-------------| +| path | String | 访问的路径 | +| port | NumberLong | 访问的端口 | +| host | String | 连接的主机名 | +| scheme | String | 连接主机时要使用的方案 | +| httpHeaders | Object Array | HTTP 请求头信息 | + +#### liveness.httpGet.httpHeaders 字段结构示例 + +| 字段 | 类型 | 描述 | +|-------|--------|-------| +| name | String | 头信息名称 | +| value | String | 头信息值 | + +#### liveness.tcpSocket 字段结构示例 + +| 字段 | 类型 | 描述 | +|------|------------|--------| +| port | NumberLong | 访问的端口 | +| host | String | 连接的主机名 | + +#### liveness.grpc 字段结构示例 + +| 字段 | 类型 | 描述 | +|---------|------------|-------------| +| service | NumberLong | gRPC 服务 | +| port | NumberLong | gRPC 服务的端口号 | + +## cc_NamespaceBase + +#### 作用 + +容器数据纳管——命名空间表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|--------------|--------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| cluster_uid | String | 集群在BCS表中的标识 | +| bk_cluster_id | NumberLong | 集群在cc表中的唯一标识 | +| name | String | 命名空间名称 | +| labels | Object | 标签 | +| resource_quotas | Object Array | 命名空间资源配额信息 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### labels 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----|--------|-------------------------| +| env | String | 标签名称,由用户自定义,此处 env 仅为例子 | + +#### resource_quotas 字段结构示例 + +| 字段 | 类型 | 描述 | +|----------------|--------------|--------------| +| hard | Object | 命名空间资源的请求与限制 | +| scopes | String Array | 资源配额范围 | +| scope_selector | Object | 范围选择器 | + +#### resource_quotas.scope_selector 字段结构示例 + +| 字段 | 类型 | 描述 | +|-------------------|--------------|--------| +| match_expressions | Object Array | 匹配的表达式 | + +#### resource_quotas.scope_selector.match_expressions 字段结构示例 + +| 字段 | 类型 | 描述 | +|------------|--------|----------------| +| scope_name | String | 选择器适用的作用域名称 | +| operator | String | 匹配操作符 | +| values | — | 匹配的值,值类型取决于操作符 | + +## cc_NodeBase + +#### 作用 + +容器数据纳管——节点表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|------------------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| cluster_uid | String | 集群本身的id | +| bk_cluster_id | NumberLong | 集群在cc表中的唯一标识 | +| bk_host_id | NumberLong | 主机在cc中的唯一标识 | +| name | String | 节点名称 | +| roles | String | 节点类型,master或者None | +| labels | Object | 标签 | +| unschedulable | Boolean | 是否关闭可调度,true为不可调度,false代表可调度 | +| internal_ip | Array | 内网IP | +| external_ip | Array | 外网IP | +| hostname | String | 主机名,与节点名一致 | +| runtime_component | String | 运行时组件 | +| kube_proxy_mode | String | 代理模式 | +| pod_cidr | String | 此节点Pod地址的分配范围 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### labels 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----|--------|-------------------------| +| env | String | 标签名称,由用户自定义,此处 env 仅为例子 | + +## cc_NsSharedClusterRelation + +#### 作用 + +容器数据纳管——共享集群关联关系表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | namespace所在的业务ID | +| bk_cluster_id | NumberLong | 共享集群ID | +| bk_namespace_id | NumberLong | namespace ID | +| bk_asst_biz_id | NumberLong | 关联的平台业务ID | +| bk_supplier_account | String | 开发商ID | + +## cc_PodBase + +#### 作用 + +容器数据纳管——Pod表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|:--------------------|:-----------|:------------------------------------------------------------------------------------------------------------------------------------------------------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 在cc表中Pod的唯一标识 | +| bk_biz_id | NumberLong | 业务id | +| bk_supplier_account | String | 供应商id | +| bk_cluster_id | NumberLong | 集群在cc表中的唯一标识 | +| cluster_uid | String | bcs集群id | +| namespace | String | namespace name | +| bk_namespace_id | NumberLong | 所属的namespace在cc中的id | +| bk_host_id | NumberLong | 主机在cc中的唯一标识 | +| node_name | String | 所属node名称 | +| bk_reference_id | NumberLong | 所属的namespace在cc中的id | +| reference_kind | String | workload kind | +| reference_name | String | 冗余的workload name | +| name | String | pod 名称 | +| priority | NumberLong | 优先级 | +| labels | Object | 标签,key和value均是string,官方文档:http://kubernetes.io/docs/user-guide/labels | +| ip | String | 容器网络IP | +| ips | Array | 容器网络IP数组,格式:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podip-v1-core | +| volumes | Object | 使用的卷信息,官方文档:https://kubernetes.io/zh/docs/concepts/storage/volumes/ ,格式:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core | +| qos_class | String | 服务质量,官方文档:https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/quality-service-pod/ | +| node_selectors | Object | 节点标签选择器,key和value均是string,官方文档:https://kubernetes.io/zh/docs/concepts/scheduling-eviction/assign-pod-node/ | +| tolerations | Object | 容忍度,格式:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core | +| create_time | ISODate | 创建时间 | +| update_time | ISODate | 更新时间 | + +#### labels 字段结构示例 + +| 字段 | 类型 | 描述 | +|-----|--------|-------------------------| +| env | String | 标签名称,由用户自定义,此处 env 仅为例子 | + +## cc_{Workload类型}Base + +#### 作用 + +Workload共分为八种类型:Deployment、DaemonSet、StatefulSet、GameStatefulSet、GameDeployments、CronJob、Job和Pod,覆盖各种容器应用场景。cmdb中对八种类型进行分类分表存放,共分为以下8个表: + +| 表名称 | 作用 | +|------------------------|------------------------------------------| +| cc_DeploymentBase | 容器数据纳管——存放工作负载(Workload)类型为Deployment的数据 | +| cc_DaemonSetBase | 容器数据纳管——存放工作负载(Workload)类型为DaemonSet的数据 | +| cc_StatefulSetBase | 容器数据纳管——存放Workload类型为StatefulSet的数据 | +| cc_GameStatefulSetBase | 容器数据纳管——存放Workload类型为GameStatefulSet的数据 | +| cc_GameDeploymentBase | 容器数据纳管——存放Workload类型为GameDeployments的数据 | +| cc_CronJobBase | 容器数据纳管——存放Workload类型为CronJob的数据 | +| cc_JobBase | 容器数据纳管——存放Workload类型为cc_JobBase的数据 | +| cc_PodWorkloadBase | 容器数据纳管——存放Workload类型为Pod的数据 | + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-----------------------|------------|-----------------------------------------------------------------------------------------------------------------------------------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| name | String | 工作负载名称 | +| namespace | String | 工作负载所属命名空间 | +| type | String | 用于区分不同的Workload在CC里同一个模型下的分类 | +| labels | String | 工作负载labels,官方文档:https://kubernetes.io/zh/docs/concepts/overview/working-with-objects/labels/ | +| selector | String | 工作负载选择器,一般与labels同时使用,例如:Selector: k8s-app=kube-dns,官方文档:https://kubernetes.io/zh/docs/concepts/overview/working-with-objects/labels/ | +| replicas | NumberLong | 工作负载实例个数,官方文档:https://kubernetes.io/zh/docs/concepts/workloads/controllers/replicaset/ | +| strategyType | String | 升级策略,工作负载更新机制,详情请见:https://kubernetes.io/zh/docs/concepts/workloads/controllers/deployment/ | +| minReadySeconds | NumberLong | 最小就绪时间,工作负载更新机制,详情请见:https://kubernetes.io/zh/docs/concepts/workloads/controllers/deployment/ | +| rollingUpdateStrategy | String | 滚动更新策略,工作负载更新机制,详情请见:https://kubernetes.io/zh/docs/concepts/workloads/controllers/deployment/ | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/field_template.md b/docs/db/field_template.md new file mode 100644 index 0000000000..e7693e8719 --- /dev/null +++ b/docs/db/field_template.md @@ -0,0 +1,84 @@ +# 字段组合模板功能相关表 + +## cc_FieldTemplate + +#### 作用 + +存放字段组合模版信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| name | String | 模版名称 | +| description | String | 模版描述 | +| creator | String | 创建人 | +| modifier | String | 修改人 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ObjAttDesTemplate + +#### 作用 + +字段组合模版属性表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------------------| +| _id | ObjectId | 数据唯一ID | +| bk_template_id | NumberLong | 字段组合模版id | +| bk_property_id | String | 属性ID | +| editable | Boolean | 是否可编辑 | +| isrequired | Boolean | 是否必填 | +| option | — | 用户自定义内容,存储的内容及数据格式由字段类型决定 | +| unit | String | 单位 | +| placeholder | String | 用户提示 | +| bk_property_name | String | 属性名,用于展示 | +| bk_property_type | String | 属性字段数据类型 | +| ismultiple | Boolean | 字段是否支持可多选 | +| default | — | 字段默认值,存储的内容及数据格式由字段类型决定 | +| creator | String | 创建人 | +| modifier | String | 修改人 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ObjectUniqueTemplate + +#### 作用 + +字段组合模板字段唯一校验信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 模型id | +| bk_template_id | NumberLong | 字段组合模板id | +| creator | String | 创建人 | +| modifier | String | 更新人 | +| keys | Array | 属性字段id列表 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ObjFieldTemplateRelation + +#### 作用 + +字段组合模板与模型关联关系信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| object_id | NumberLong | 模型id | +| bk_template_id | NumberLong | 字段组合模板id | +| bk_supplier_account | String | 开发商ID | \ No newline at end of file diff --git a/docs/db/host_apply_rule.md b/docs/db/host_apply_rule.md new file mode 100644 index 0000000000..4a0ebbe07d --- /dev/null +++ b/docs/db/host_apply_rule.md @@ -0,0 +1,24 @@ +# 主机属性自动应用功能相关表 + +## cc_HostApplyRule + +#### 作用 + +保存主机属性自动应用信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------------------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_biz_id | NumberLong | 业务id | +| bk_module_id | NumberLong | 模块id,当模块id为0代表主机属性自动应用作用于服务模板 | +| service_template_id | NumberLong | 服务模板id,当服务模板id为0代表主机属性自动应用作用于模块 | +| bk_attribute_id | NumberLong | 属性id | +| bk_property_value | String | 自动应用的属性值 | +| creator | String | 创建人 | +| modifier | String | 修改人 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/instance.md b/docs/db/instance.md new file mode 100644 index 0000000000..71b1393a05 --- /dev/null +++ b/docs/db/instance.md @@ -0,0 +1,50 @@ +# 实例相关表 + +## cc_ObjectBase_0_pub_{模型id} + +#### 作用 + +模型实例表,CMDB3.10及3.10以上版本使用 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------| +| _id | ObjectId | 数据唯一ID | +| bk_admin_ip | String | 管理IP(模型自定义字段) | +| bk_biz_status | String | 运营状态 | +| bk_model | String | 设备型号 | +| bk_asset_id | String | 固资编号 | +| bk_inst_name | String | 实例名称 | +| bk_os_detail | String | 操作系统详情 | +| bk_inst_id | NumberLong | 实例id | +| bk_detail | String | 详细描述 | +| bk_func | String | 用途 | +| bk_obj_id | String | 模型id | +| bk_operator | String | 维护人 | +| bk_vendor | String | 厂商 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处以”防火墙“模型实例举例,模型实例字段取决于用户在模型中定义的属性字段 + +## cc_InstAsst_0_pub_{模型id} + +#### 作用 + +存放实例关联数据,CMDB3.10及3.10以上版本 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_inst_id | NumberLong | 实例id | +| bk_obj_id | String | 模型id | +| bk_asst_inst_id | NumberLong | 关联实例id | +| bk_asst_obj_id | String | 关联模型id | +| bk_supplier_account | String | 开发商ID | +| bk_obj_asst_id | String | 模型关联关系id | +| bk_asst_id | String | 关联类型id | \ No newline at end of file diff --git a/docs/db/mainline_model.md b/docs/db/mainline_model.md new file mode 100644 index 0000000000..112c5e859d --- /dev/null +++ b/docs/db/mainline_model.md @@ -0,0 +1,128 @@ +# 主线模型相关表 + +## cc_ApplicationBase + +#### 作用 + +存放业务信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|-----------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_name | String | 业务名 | +| bk_biz_tester | String | 测试人员 | +| operator | String | 操作人员 | +| time_zone | String | 时区 | +| bk_biz_maintainer | String | 运维人员 | +| bk_biz_productor | String | 产品人员 | +| default | NumberLong | 是否是默认业务,1代表是,0代表否 | +| language | String | 语言:1-中文,2-英文 | +| life_cycle | String | 生命周期:1-测试中,2-已上线,3-停运 | +| bk_biz_id | NumberLong | 业务ID | +| bk_biz_developer | String | 开发人员 | +| bk_data_status | String | 值为 disable 时代表该业务已归档 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对业务内置的模型字段做说明,业务表结构字段取决于用户在业务模型中定义的属性字段 + +## cc_ObjectBase_0_pub_{模型id} + +#### 作用 + +存放用户自定义拓扑节点信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_inst_name | String | 实例名称 | +| bk_inst_id | NumberLong | 实例id | +| bk_obj_id | String | 模型id | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | +| bk_biz_id | NumberLong | 业务ID | +| bk_parent_id | NumberLong | 父节点id | + +**注意**:此处仅对内置的模型字段做说明,自定义拓扑表结构字段取决于用户在自定义拓扑模型中定义的属性字段 + +## cc_SetBase + +#### 作用 + +存放集群相关信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|----------------------| +| _id | ObjectId | 数据唯一ID | +| default | NumberLong | 是否为默认集群 | +| bk_set_env | String | 环境类型 | +| set_template_version | String | 集群模板 | +| bk_biz_id | NumberLong | 业务ID | +| bk_set_name | String | 集群名称 | +| set_template_id | NumberLong | 集群模板id,为0代表不通过集群模板创建 | +| bk_capacity | NumberLong | 设计容量 | +| bk_set_id | NumberLong | 集群id | +| bk_parent_id | NumberLong | 父节点id | +| bk_set_desc | String | 集群描述 | +| bk_service_status | String | 服务状态 | +| description | String | 备注 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对内置的模型字段做说明,集群表结构字段取决于用户在集群模型中定义的属性字段 + +## cc_ModuleBase + +#### 作用 + +模块信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|----------------------|------------------| +| _id | ObjectId | 数据唯一ID | +| default | NumberLong | 是否是默模块,1代表是,0代表否 | +| operator | String | 维护人 | +| service_template_id | NumberLong | 服务模板id | +| bk_module_type | String | 模块类型模块类型 | +| bk_bak_operator | String | 备份维护人 | +| bk_module_id | NumberLong | 模块id | +| bk_biz_id | NumberLong | 业务id | +| bk_parent_id | NumberLong | 父节点id | +| host_apply_enabled | Boolean | 是否开启主机属性自动应用 | +| bk_module_name | String | 模块名 | +| bk_set_id | NumberLongNumberLong | 集群id | +| service_category_id | NumberLong | 服务类型id | +| set_template_id | NumberLong | 集群模板id | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +**注意**:此处仅对内置的模型字段做说明,模块表结构字段取决于用户在模块模型中定义的属性字段 + +## cc_ModuleHostConfig + +#### 作用 + +模块主机关联关系信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| bk_host_id | NumberLong | 主机id | +| bk_module_id | NumberLong | 模块id | +| bk_set_id | NumberLong | 集群id | +| bk_supplier_account | String | 开发商ID | \ No newline at end of file diff --git a/docs/db/model.md b/docs/db/model.md new file mode 100644 index 0000000000..8afeeceb55 --- /dev/null +++ b/docs/db/model.md @@ -0,0 +1,168 @@ +# 模型相关表 + +## cc_ObjDes + +#### 作用 + +模型表,存放模型信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|------------------| +| _id | ObjectId | 数据唯一ID | +| position | String | 模型坐标,用于模型关系拓扑图中 | +| modifier | String | 修改者 | +| id | NumberLong | 自增id | +| bk_obj_id | String | 模型唯一标识 | +| bk_obj_name | String | 模型名称 | +| description | String | 描述信息 | +| bk_classification_id | String | 模型所属分组 | +| bk_obj_icon | String | 模型logo | +| bk_ishidden | Boolean | 是否是隐藏模型如进程、服务模型等 | +| ispre | Boolean | 是否为系统预置 | +| bk_ispaused | Boolean | 是否停用 | +| creator | String | 创建者 | +| obj_sort_number | NumberLong | 模型排序序号 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_AsstDes + +#### 作用 + +存放模型间的关联类型 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|-----------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增ID | +| src_des | String | 源模型到到关联目标模型的描述 | +| dest_des | String | 目标模型到源模型的描述 | +| direction | String | 方向:源指向目标、无方向、双向 | +| ispre | String | 是否为系统预置 | +| bk_asst_name | String | 关联类型名称 | +| bk_asst_id | NumberLong | 关联类型唯一标识 | +| bk_supplier_account | String | 开发商ID | + +## cc_ModelQuoteRelation + +#### 作用 + +存放模型与引用类型关联关系信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|----------|--------| +| _id | ObjectId | 数据唯一ID | +| dest_model | String | 引用模型 | +| src_model | String | 源模型 | +| bk_property_id | String | 模型属性id | +| type | String | 模型属性类型 | +| bk_supplier_account | String | 开发商ID | + +## cc_ObjClassification + +#### 作用 + +存放模型分组信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|------------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_classification_id | String | 分组唯一标识 | +| bk_classification_name | String | 分组名 | +| bk_classification_type | String | 分组类型 | +| bk_classification_icon | String | 分组logo | +| id | NumberLong | 自增id | +| bk_supplier_account | String | 开发商ID | + +## cc_PropertyGroup + +#### 作用 + +模型属性字段分组信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| id | NumberLong | 自增id | +| bk_obj_id | String | 分组所属模型id | +| ispre | Boolean | 是否为系统预置 | +| bk_group_id | String | 分组唯一标识 | +| bk_group_name | String | 分组名称 | +| bk_group_index | NumberLong | 分组索引 | +| bk_isdefault | Boolean | 是否是默认分组 | +| is_collapse | Boolean | 是否折叠 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ObjAsst + +#### 作用 + +存放模型关联信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|-----------------------| +| _id | ObjectId | 数据唯一ID | +| bk_asst_obj_id | String | 关联模型名称 | +| id | NumberLong | 自增id | +| bk_obj_id | String | 模型名称 | +| bk_asst_id | String | 关联类型 | +| bk_obj_asst_id | String | 关联标识 | +| bk_obj_asst_name | String | 关联名称 | +| ispre | Boolean | 是否为系统预置 | +| mapping | String | 源-目标约束,有n:n、1:n、1:1三种 | +| on_delete | String | 是否可删除 | +| bk_supplier_account | String | 开发商ID | + +## cc_ObjAttDes + +#### 作用 + +存放模型属性字段信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------------------| +| _id | ObjectId | 数据唯一ID | +| bk_isapi | Boolean | 是否为API参数 | +| creator | String | 创建人 | +| bk_property_name | String | 属性字段名称 | +| placeholder | String | 提示信息 | +| editable | Boolean | 在实例中是否可编辑 | +| bk_issystem | Boolean | 是否仅为系统内部使用 | +| option | — | 用户自定义内容,存储的内容及数据格式由字段类型决定 | +| id | NumberLong | 自增id | +| bk_obj_id | String | 模型id | +| bk_property_id | String | 属性字段id | +| bk_property_group | String | 属性字段分组 | +| unit | String | 单位 | +| isrequired | Boolean | 是否必填 | +| isreadonly | Boolean | 是否只读 | +| bk_property_index | NumberLong | 属性字段排序号 | +| ispre | Boolean | 是否为系统预置 | +| bk_property_type | String | 属性字段类型 | +| bk_biz_id | NumberLong | 业务id,不为0则代表是业务自定义属性 | +| bk_template_id | NumberLong | 字段模板id | +| default | — | 字段默认值,存储的内容及数据格式由字段类型决定 | +| description | String | 描述信息 | +| ismultiple | Boolean | 是否可多选 | +| isonly | Boolean | 是否唯一 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/operational_analysis.md b/docs/db/operational_analysis.md new file mode 100644 index 0000000000..9000a69a0c --- /dev/null +++ b/docs/db/operational_analysis.md @@ -0,0 +1,161 @@ +# 运营分析功能相关表 + +## cc_AuditLog + +#### 作用 + +存放审计日志 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|---------------------------------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增ID | +| audit_type | String | 操作的资源类型大类 | +| user | String | 操作人 | +| resource_type | String | 操作的具体资源类型 | +| action | String | 操作类型如create(新增)/update(更新)/delete(删除) | +| operate_from | String | 操作审计的来源平台 | +| operation_time | NumberLong | 操作时间 | +| operation_detail | Object | 操作审计详情,字段示例如下 | +| bk_biz_id | NumberLong | 业务id | +| resource_id | NumberLong | 资源id | +| resource_name | String | 资源名称 | +| code | String | 状态码 | +| rid | String | 请求id | +| extend_resource_name | String | 扩展资源名 | +| bk_supplier_account | String | 开发商ID | + +#### operation_detail 字段结构示例 + +##### 转移主机 + +| 字段 | 类型 | 描述 | +|-------------|------------|-----------------------------| +| bk_biz_id | NumberLong | 业务id归还主机为归还前业务ID,否则为转移后业务ID | +| bk_biz_name | String | 业务名称 | +| pre_data | Object | 主机转移前业务、集群、模块信息 | +| cur_data | Object | 主机转移后业务、集群、模块信息 | + +##### 实例关联操作 + +| 字段 | 类型 | 描述 | +|----------------|------------|--------| +| asst_id | String | 关联关系id | +| asst_kind | String | 关联类型 | +| src_obj_id | String | 源模型 | +| dest_obj_id | String | 目标模型 | +| dest_inst_id | NumberLong | 目标实例id | +| dest_inst_name | String | 目标实例名称 | + +##### 模型实例操作 + +| 字段 | 类型 | 描述 | +|---------------|--------|---------| +| pre_data | Object | 实例变更前数据 | +| cur_data | Object | 实例变更后数据 | +| update_fields | Object | 更新的字段 | +| bk_obj_id | String | 模型唯一标识 | + +##### 模型属性字段操作 + +| 字段 | 类型 | 描述 | +|---------------|--------|---------| +| pre_data | Object | 实例变更前数据 | +| cur_data | Object | 实例变更后数据 | +| update_fields | Object | 更新的字段 | +| bk_obj_id | String | 模型唯一标识 | +| bk_obj_name | String | 模型名称 | + +##### 引用类型实例操作 + +| 字段 | 类型 | 描述 | +|----------------|--------|--------------| +| pre_data | Object | 实例变更前数据 | +| cur_data | Object | 实例变更后数据 | +| update_fields | Object | 更新的字段 | +| bk_obj_id | String | 引用模型唯一标识 | +| src_obj_id | String | 引用模型所属模型唯一标识 | +| bk_property_id | String | 属性字段id | + +##### 服务实例操作 + +| 字段 | 类型 | 描述 | +|---------------|--------------|---------| +| pre_data | Object | 实例变更前数据 | +| cur_data | Object | 实例变更后数据 | +| update_fields | Object | 更新的字段 | +| bk_host_id | NumberLong | 主机id | +| processes | Object Array | 进程实例操作 | + +##### 进程实例操作(聚合在服务实例操作中) + +| 字段 | 类型 | 描述 | +|------------------|------------|---------| +| pre_data | Object | 实例变更前数据 | +| cur_data | Object | 实例变更后数据 | +| update_fields | Object | 更新的字段 | +| action | String | 操作类型 | +| bk_process_ids | NumberLong | 进程id | +| bk_process_names | String | 进程名称 | + +## cc_ChartConfig + +#### 作用 + +存放运营统计图表配置数据信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| config_id | NumberLong | 图表配置数据ID | +| report_type | String | 统计类型 | +| name | String | 图表名称 | +| bk_obj_id | String | 统计实例类型 | +| width | String | 图表宽度 | +| chart_type | String | 图表类型 | +| field | String | 分类字段 | +| x_axis_count | NumberLong | x轴数量 | +| create_time | ISODate | 创建时间 | +| bk_supplier_account | String | 开发商ID | + +## cc_ChartData + +#### 作用 + +存放运营统计数据 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|----------|--------| +| _id | ObjectId | 数据唯一ID | +| report_type | String | 统计类型 | +| data | Object | 统计数据 | +| create_time | ISODate | 创建时间 | +| bk_supplier_account | String | 开发商ID | + +## cc_ChartPosition + +#### 作用 + +存放运营统计中主机与其它模型实例的统计图表顺序数据 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| position | Object | 图表顺序数据,数字小的图表对应位置靠前 | +| bk_supplier_account | String | 开发商ID | + +#### position 字段结构 + +| 字段 | 类型 | 描述 | +|------|-------|----------| +| host | Array | 主机图表顺序 | +| inst | Array | 模型实例图表顺序 | \ No newline at end of file diff --git a/docs/db/other.md b/docs/db/other.md new file mode 100644 index 0000000000..e701a524d6 --- /dev/null +++ b/docs/db/other.md @@ -0,0 +1,69 @@ +# 不归属任何一种分类的表 + +## cc_System + +#### 作用 + +存放系统相关配置信息,如数据库版本信息、标签页和页底自定义信息等,无明确表字段结构 + +#### 表结构 + +- 数据库初始化数据 + +| 字段 | 类型 | 描述 | +|---------------------|----------|---------| +| _id | ObjectId | 数据唯一ID | +| type | String | 类型 | +| current_version | String | 当前版本 | +| distro | String | 发行版 | +| distro_version | String | 发行版版本 | +| init_version | String | 初始化版本 | +| init_distro_version | String | 初始化发行版本 | + +- 系统最大拓扑层级、标签、底注、字段验证规则等配置信息数据 + +| 字段 | 类型 | 描述 | +|-------------|----------|--------| +| _id | ObjectId | 数据唯一ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | +| config | String | 配置数据 | + +- gse路由注册相关配置数据 + +| 字段 | 类型 | 描述 | +|-----------|------------|----------------------| +| _id | ObjectId | 数据唯一ID | +| host_snap | NumberLong | gse数据入库的stream_to_id | + +## cc_DelArchive + +#### 作用 + +用于归档被删除的数据 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-------------|----------|--------| +| _id | ObjectId | 数据唯一ID | +| oid | String | 事件ID | +| coll | String | 所操作的表 | +| detail | Object | 操作数据详情 | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_idgenerator + +#### 作用 + +存放生成的唯一id信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-------------|-----------|-----------| +| _id | String | 唯一ID对应的数据 | +| SequenceID | NumberInt | 生成的唯一ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/plat.md b/docs/db/plat.md new file mode 100644 index 0000000000..58d99b9422 --- /dev/null +++ b/docs/db/plat.md @@ -0,0 +1,27 @@ +# 管控区域相关表 + +## cc_PlatBase + +#### 作用 + +管控区域信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------| +| _id | ObjectId | 数据唯一ID | +| bk_cloud_name | String | 管控区域名 | +| bk_cloud_id | NumberLong | 管控区域id | +| bk_cloud_vendor | String | 管控区域类型 | +| bk_creator | String | 创建者 | +| bk_last_editor | String | 最后修改人 | +| bk_region | String | VPC所属地域 | +| bk_status | String | 状态 | +| bk_status_detail | String | 状态详情 | +| bk_vpc_id | String | VPC唯一标识 | +| bk_vpc_name | String | VPC名称 | +| bk_account_id | NumberLong | 云账户ID | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/service_template.md b/docs/db/service_template.md new file mode 100644 index 0000000000..dad28ca052 --- /dev/null +++ b/docs/db/service_template.md @@ -0,0 +1,93 @@ +# 服务模板功能相关表 + +## cc_ServiceTemplate + +#### 作用 + +服务模板信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| id | NumberLong | 自增id | +| name | String | 模板名称 | +| service_category_id | NumberLong | 服务类别id | +| creator | String | 创建人 | +| modifier | String | 更新人 | +| host_apply_enabled | Boolean | 是否开启了主机属性自动应用 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ServiceTemplateAttr + +#### 作用 + +存放服务模板属性配置信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_biz_id | NumberLong | 业务id | +| service_template_id | NumberLong | 服务模板id | +| bk_attribute_id | NumberLong | 属性字段id | +| bk_property_value | String | 属性字段值 | +| creator | String | 创建者 | +| modifier | String | 更新者 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_ProcessTemplate + +#### 作用 + +进程模板信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|----------------------|------------|----------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| creator | String | 创建人 | +| modifier | String | 更新人 | +| service_instance_id | NumberLong | 服务实例id | +| start_cmd | String | 启动命令 | +| user | String | 启动用户 | +| bk_start_param_regex | String | 启动参数匹配规则 | +| restart_cmd | String | 重启命令 | +| face_stop_cmd | String | 强制停止命令 | +| work_path | String | 工作路径 | +| description | String | 备注 | +| priority | NumberLong | 启动优先级 | +| bk_process_name | String | 进程别名 | +| bk_start_check_secs | NumberLong | 启动等待时长 | +| bk_func_name | String | 进程名称 | +| reload_cmd | String | 进程重载命令 | +| pid_file | String | PID文件路径 | +| auto_start | Boolean | 是否自动拉起 | +| bk_biz_id | NumberLong | 业务ID | +| proc_num | NumberLong | 启动数量 | +| stop_cmd | String | 停止命令 | +| bk_process_id | NumberLong | 进程id | +| timeout | NumberLong | 操作超时时长 | +| bind_info | Array | 绑定信息 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +#### bind_info 字段结构示例 + +| 字段 | 类型 | 描述 | +|----------|---------|------| +| enable | Boolean | 是否启用 | +| ip | String | 绑定ip | +| port | String | 绑定端口 | +| protocol | String | 通信方式 | \ No newline at end of file diff --git a/docs/db/set_template.md b/docs/db/set_template.md new file mode 100644 index 0000000000..04b7ee16a8 --- /dev/null +++ b/docs/db/set_template.md @@ -0,0 +1,59 @@ +# 集群模板功能相关表 + +## cc_SetServiceTemplateRelation + +#### 作用 + +存放集群模板与服务模板关联关系信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| bk_biz_id | NumberLong | 业务id | +| set_template_id | NumberLong | 集群模板id | +| service_template_id | NumberLong | 服务模板id | +| bk_supplier_account | String | 开发商ID | + +## cc_SetTemplate + +#### 作用 + +集群模板信息表 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 模板id | +| name | String | 模板名称 | +| bk_biz_id | NumberLong | 业务id | +| creator | String | 创建者 | +| modifier | String | 更新者 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_SetTemplateAttr + +#### 作用 + +存放集群模板属性配置信息 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|--------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_biz_id | NumberLong | 业务id | +| set_template_id | NumberLong | 集群模板id | +| bk_attribute_id | NumberLong | 属性字段id | +| bk_property_value | String | 属性字段值 | +| creator | String | 创建者 | +| modifier | String | 更新者 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/task.md b/docs/db/task.md new file mode 100644 index 0000000000..781809ca2f --- /dev/null +++ b/docs/db/task.md @@ -0,0 +1,43 @@ +# 异步任务相关表 + +## cc_APITask + +#### 作用 + +存储具体执行的异步任务信息(会定时清理过期任务) + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|-------------------------------------------------| +| _id | ObjectId | 数据唯一ID | +| task_id | String | 任务ID,由taskserver生成的唯一ID | +| task_type | String | 任务标识,用于业务方识别任务,同时表示所在的任务队列,每个队列都配置了回调接口等信息 | +| bk_inst_id | NumberLong | 该任务关联的实例id,用于查询一个实例对应的所有任务,并且防止对同一个实例多次创建新的同步任务 | +| user | String | 任务创建者 | +| header | Object | 请求的http header,包括rid等信息,可以用于问题定位 | +| status | String | 任务执行状态 | +| detail | Object | 子任务详情列表 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | + +## cc_APITaskSyncHistory + +#### 作用 + +存储执行的异步任务历史 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|-------------------------------------------------| +| _id | ObjectId | 数据唯一ID | +| task_id | String | 任务ID,由taskserver生成的唯一ID | +| task_type | String | 任务标识,用于业务方识别任务,同时表示所在的任务队列,每个队列都配置了回调接口等信息 | +| bk_inst_id | NumberLong | 该任务关联的实例id,用于查询一个实例对应的所有任务,并且防止对同一个实例多次创建新的同步任务 | +| status | String | 任务执行状态 | +| creator | String | 任务创建者 | +| bk_supplier_account | String | 开发商ID | +| create_time | ISODate | 创建时间 | +| last_time | ISODate | 最后更新时间 | \ No newline at end of file diff --git a/docs/db/user_custom.md b/docs/db/user_custom.md new file mode 100644 index 0000000000..454007502d --- /dev/null +++ b/docs/db/user_custom.md @@ -0,0 +1,27 @@ +# 资源目录用户自定义配置相关表 + +## cc_UserCustom + +#### 作用 + +存放用户自定义配置信息,前端使用 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|-----------------------------|--------------|---------------------------------------------------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增id | +| bk_user | String | 创建人 | +| menu_resource_collection | String Array | 自定义资源导航栏配置,模型唯一标识列表,即此列表中模型唯一标识对应的模型会追加到资源页面的导航栏中 | +| resource_host_common_filter | Array | 自定义主机高级筛选配置 | +| bk_supplier_account | String | 开发商ID | + +#### resource_host_common_filter.[x] 字段结构示例 + +如下数据示例则代表在进行主机高级筛选时会默认显示出集群分组下的集群名称作为主机筛选条件 + +| 字段 | 类型 | 描述 | +|-------------|--------|------| +| bk_set_name | String | 集群名称 | +| set | String | 条件分组 | \ No newline at end of file diff --git a/docs/db/watch.md b/docs/db/watch.md new file mode 100644 index 0000000000..c37cb62a95 --- /dev/null +++ b/docs/db/watch.md @@ -0,0 +1,61 @@ +# 资源变更事件相关表 + +## cc_{资源类型}WatchChain + +#### 作用 + +存放某类资源变更事件信息,变更事件相关的表有统一的结构,此处进行归类,包含的表如下: + +| 表名称 | 作用 | +|--------------------------------------|----------------------| +| cc_ApplicationBaseWatchChain | 存放业务变更事件信息 | +| cc_BizSetBaseWatchChain | 存放业务集变更事件 | +| cc_bizSetRelationMixedWatchChain | 存放业务集关系变更事件 | +| cc_ClusterBaseWatchChain | 容器数据纳管——存放集群变更事件 | +| cc_HostBaseWatchChain | 存放主机变更事件信息 | +| cc_HostIdentityMixedWatchChain | 存放主机身份变更事件信息 | +| cc_InstAsstWatchChain | 存放实例关联变更事件信息 | +| cc_MainlineInstanceWatchChain | 存放主线实例变更事件信息 | +| cc_ModuleBaseWatchChain | 存放模块变更事件信息 | +| cc_ModuleHostConfigWatchChain | 存放模块主机关联关系变更事件信息 | +| cc_NamespaceBaseWatchChain | 容器数据纳管——存放命名空间变更事件信息 | +| cc_NodeBaseWatchChain | 容器数据纳管——存放节点变更事件信息 | +| cc_ObjectBaseWatchChain | 存放模型变更事件 | +| cc_PlatBaseWatchChain | 存放管控区域变更事件信息 | +| cc_ProcessInstanceRelationWatchChain | 存放进程实例关联关系变更事件信息 | +| cc_ProcessWatchChain | 存放进程变更事件信息 | +| cc_ProjectBaseWatchChain | 存放项目变更事件信息 | +| cc_SetBaseWatchChain | 存放集群变更事件信息 | +| cc_SetTemplateWatchChain | 存放集群模板变更事件信息 | +| cc_WorkloadBaseWatchChain | 容器数据纳管——工作负载变更事件信息 | +| cc_PodBaseWatchChain | 容器数据纳管——Pod变更事件信息 | + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------------|------------|---------| +| _id | ObjectId | 数据唯一ID | +| id | NumberLong | 自增ID | +| cluster_time | ISODate | 事件时间 | +| oid | String | 事件ID | +| type | String | 操作类型 | +| token | String | 数据库恢复令牌 | +| cursor | String | cc的事件游标 | +| inst_id | NumberLong | 实例ID | +| bk_supplier_account | String | 开发商ID | + +## cc_WatchToken + +#### 作用 + +数据库表的监控令牌信息,监控令牌用于跟踪指定数据集合的变化情况 + +#### 表结构 + +| 字段 | 类型 | 描述 | +|---------------|------------|------| +| _id | String | 数据库表 | +| id | NumberLong | 自增id | +| token | String | 令牌 | +| cursor | String | 事件游标 | +| start_at_time | ISODate | 开始时间 | \ No newline at end of file diff --git a/readme.md b/readme.md index dd46bedd18..82f2f1d419 100644 --- a/readme.md +++ b/readme.md @@ -21,6 +21,7 @@ * [设计理念](docs/overview/design.md) * [架构设计](docs/overview/architecture.md) * [代码目录](docs/overview/code_framework.md) +* [数据库表结构设计](docs/db/README.md) ![front-page](docs/resource/img/frontpage.png)