installer db整理.md

概述

整理 installer-sr-server 使用的数据库逻辑

数据库

manager

classDiagram
direction LR
class card_ip_mask {
   varchar(32) engine_serial  /* 引擎序列号 */
   varchar(16) node_ip  /* 节点ip */
   text ip_masks
   datetime create_at
   bigint id
}
class t_agent {
   varchar(100) name
   varchar(45) ip
   bigint mirror_id
   varchar(320) capture_iface
   text iface
   text capture_filter
   varchar(10) filter_mode
   tinyint(1) auto_suspend
   tinyint system_cpu_overlimit
   tinyint system_cpu_recover
   tinyint system_mem_overlimit
   tinyint system_mem_recover
   tinyint agent_cpu_overlimit
   tinyint agent_mem_overlimit
   bigint access_time
   bigint install_time
   varchar(20) running_status
   int reason
   varchar(36) uuid
}
class t_cert {
   varchar(32) name  /* 名称 */
   varchar(32) key_name  /* 私钥名称 */
   varchar(32) cert_name  /* 证书名称 */
   text key
   text cert
   datetime create_at
   bigint id
}
class t_engine {
   install_type  /* 安装类型(1 代表在线 2 代表离线) */ tinyint
   engine_type  /* 引擎类型(1 代表默认的引擎,2 代表边车引擎) */ tinyint
   varchar(64) serial_number  /* 引擎序列号 */
   datetime expire_time  /* 过期时间 */
   varchar(64) engine_name  /* 引擎名称 */
   varchar(64) engine_name_in_license  /* 授权文件中的引擎名 */
   varchar(64) latest_version  /* 可升级包版本 */
   varchar(64) current_version  /* 当前引擎版本 */
   varchar(64) source  /* 来源 */
   varchar(64) public_time  /* 发布时间 */
   int major  /* 主版本号 */
   int minor  /* 次版本号 */
   int build  /* 内部版本号 */
   tinyint delete_flag  /* 删除标记 0 未删除 1 删除 */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   status  /* 状态(0 未定义,1 正常,2 已撤销) */ tinyint
   varchar(1024) machine_code  /* 机器码 */
   varchar(16) machine_ip  /* 机器ip */
   bigint id
}
class t_engine_global_param {
   bigint engine  /* 所属引擎 */
   tinyint deploy_mode  /* 安装模式 1 默认模式 2 透明部署 3 路由模式 */
   bigint process_id  /* 归属安装进程id */
   int admin_virtual_router_id  /* 管理端虚拟路由id */
   int data_virtual_router_id  /* 数据段虚拟路由id */
   varchar(128) vip  /* 管理面浮动ip */
   varchar(128) gateway_ip  /* 网关ip */
   bridge_ip  /* 网桥ip(透明部署) */ varchar(128)
   bridge_gateway  /* 网桥网关(透明部署) */ varchar(128)
   network_device1  /* 网卡设备1(透明部署) */ varchar(128)
   network_device2  /* 网卡设备2(透明部署) */ varchar(128)
   varchar(128) upstream_bind_source_address  /* 上游绑定地址 */
   is_transparent_deployment  /* 是否透明部署(2 否 1 是) */ tinyint
   tinyint is_straight_through  /* 是否开通直通 2 否 1 是 */
   tinyint mode  /* 节点模式, 0/1 单节点/三节点 */
   varchar(255) cert_name  /* 证书名称 */
   varchar(1024) cert_path  /* 证书路径 */
   varchar(1024) cert_url  /* 证书url */
   varchar(128) cert_hash  /* 证书hash */
   int master_node_id  /* 安装时选定的管理面主节点,不一定永远是主节点 */
   varchar(2048) token  /* 用来访问apiserver */
   varchar(2048) token_csv  /* tokencsv */
   varchar(4096) ca_base64  /* caBase64 */
   varchar(2048) salt  /* 盐 */
   varchar(2048) secret
   varchar(32) sky_working_oap_addr  /* skyWorking地址 */
   text bound_tls_key  /* 业务私钥 */
   text bound_tls_cert  /* 业务公钥 */
   varchar(32) tls_key_name  /* 私钥名称 */
   varchar(32) tls_cert_name  /* 公钥名称 */
   text out_bound_tls_key  /* 业务私钥 */
   text out_bound_tls_cert  /* 业务公钥 */
   varchar(32) out_tls_key_name  /* 私钥名称 */
   varchar(32) out_tls_cert_name  /* 公钥名称 */
   text cluster_info  /* 集群信息 */
   tinyint version_tag
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   bigint id
}
class t_engine_install_processes {
   action_type  /* 执行动作类型(1 安装 2 添加节点 3 升级 4 回退 5 卸载 6 删除节点) */ tinyint
   int engine  /* 归属引擎id */
   varchar(64) name  /* 安装进程名 */
   tinyint status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   varchar(64) se_version  /* 引擎版本 */
   int major  /* 主版本号 */
   int minor  /* 次版本号 */
   int build  /* 内部版本号 */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   bigint id
}
class t_engine_nodes {
   varchar(16) ipv4  /* 节点ip */
   varchar(20) ip_mask  /* ip加子网掩码 */
   int engine  /* 归属引擎的id */
   int ssh_port  /* ssh端口 */
   varchar(255) ssh_username  /* ssh用户 */
   varchar(255) ssh_password  /* ssh密码 */
   is_se_m  /* 是否是管理面节点 (2 不是 1 是) */ tinyint
   tinyint sem_delete_flag  /* sem删除标记 */
   is_se_s  /* 是否是数据面高可用节点(2 不是 1 是) */ tinyint
   tinyint ses_delete_flag  /* ses删除标记 */
   is_se_w  /* 是否是工作节点(2 不是 1 是) */ tinyint
   tinyint sew_delete_flag  /* sew删除标记 */
   tinyint is_side_car  /* 是否是边车引擎节点 */
   tinyint is_sew_route  /* 是否是路由模式工作节点 */
   tinyint sew_route_delete_flag  /* sewRoute删除标记 */
   varchar(128) se_m_network_card  /* 管理面节点网卡 */
   varchar(128) se_m_network_card_all  /* 管里面节点网卡加ip */
   varchar(128) se_s_network_card  /* 数据面节点网卡 */
   varchar(128) se_s_network_card_all  /* 数据面节点网卡加ip */
   varchar(128) se_w_network_card  /* 工作节点网卡 */
   varchar(128) se_w_network_card_all  /* 工作节点网卡加ip */
   varchar(128) sew_route_network_card  /* 路由模式工作节点网卡 */
   varchar(128) sew_route_network_card_all  /* 路由模式工作节点网卡加ip */
   varchar(255) sew_package_serial  /* sew包序列号 */
   tinyint is_agent_installed  /* 是否已安装agent */
   varchar(255) name  /* 节点名称 */
   varchar(64) uuid  /* 节点UUID */
   int delete_flag
   text business_port
   text export_traffic_port
   varchar(64) os_version  /* 节点操作系统版本 */
   varchar(255) package_os_version  /* 包归属操作系统版本 */
   bigint package_id  /* 包id */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   varchar(128) data_nic_ip  /* 数据面业务口ip */
   bigint id
}
class t_engine_packages {
   int engine_id  /* 所属引擎的id */
   is_use_replication  /* 包是否可复用 (1 可复用 2 不可 3 其他) */ tinyint
   int used  /* 已经使用次数 */
   max_use  /* 最大使用次数(0 不限制使用次数) 默认值为1 */ int
   package_type  /* 包类型(0 未知 1 SE-M 2 SE-S 3 SE-W) */ tinyint
   varchar(64) serial_number  /* 序列号 */
   varchar(255) name  /* 授权包名称 */
   varchar(255) display_name  /* 显示名称 */
   varchar(64) version  /* 版本号 */
   varchar(1024) path  /* 包路径 */
   varchar(1024) url  /* 包url */
   varchar(128) hash  /* hash值 */
   varchar(128) license_hash  /* license hash */
   varchar(64) source  /* 来源 */
   datetime expire_time  /* 过期时间 */
   text require  /* agent.require文件内容 */
   use_flag  /* (1 未使用 2 已使用 3 正在使用 4 未知) */ tinyint
   process_id  /* 归属安装进程id (0 代表任何安装进程可使用) */ int
   node_ip  /* 归属节点ip (0 代表任何节点可使用) */ varchar(20)
   status  /* 状态(0 未定义,1 正常,2 已撤销) */ tinyint
   int step_all  /* 安装总步骤 */
   varchar(255) os  /* 适配操作系统 */
   text support_os_version  /* 支持的操作系统版本 */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   bigint id
}
class t_fail_table {
   varchar(16) node_ip  /* 失败节点 */
   int engine
   tinyint package_type
   tinyint status  /* 失败状态 */
   tinyint action  /* 执行动作 */
   text message  /* 失败描述 */
   datetime create_at
   bigint id
}
class t_mirror {
   varchar(36) uuid
   varchar(16) install_type
   varchar(100) name
   varchar(100) license_name
   varchar(16) sn
   varchar(16) version
   varchar(16) installed_version
   smallint agent_max_license
   smallint agent_access_count
   smallint agent_active_count
   varchar(20) status
   varchar(45) ip
   varchar(20) running_status
   bigint install_time
   text mgnt_iface
   text data_iface
   varchar(300) ssh
   varchar(255) os
   varchar(36) task_uid
   bigint component_bitmap
   tinyint(1) invalid_license
   text mirror_filter
   int id
}
class t_node_record {
   int install_process_id  /* 安装进程id */
   int node_id  /* 节点id */
   tinyint is_se_m  /* 是否是se-m节点 */
   tinyint se_m_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   tinyint is_se_s  /* 是否是se-s节点 */
   tinyint se_s_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   tinyint is_se_w  /* 是否是se-w节点 */
   tinyint se_w_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   varchar(16) se_version  /* 引擎版本 */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   bigint id
}
class t_process_node {
   varchar(20) node_ip  /* 用于查询节点的静态信息 */
   int process_id  /* 归属安装进程的id */
   action_type  /* 执行动作类型(1 安装 2 添加节点 3 升级 4 回退 5 卸载 6 删除节点) */ tinyint
   is_install_se_m  /* 是否是安装SE-M (0 不是 1 是) */ tinyint
   int se_m_steplevel1  /* se-m已安装的步骤 */
   int se_m_steplevel_all  /* se-m总的安装步骤 */
   tinyint se_m_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   tinyint is_install_side_car  /* 是否安装边车引擎 */
   is_install_se_s  /* 是否是安装SE-S (0 不是 1是) */ tinyint
   int se_s_steplevel1  /* se-s已安装的步骤 */
   int se_s_steplevel_all  /* se-s总的安装步骤 */
   tinyint se_s_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   is_install_se_w  /* 是否是安装SE-W (0 不是 1 是) */ tinyint
   int se_w_steplevel1  /* se-w已安装的步骤 */
   int se_w_steplevel_all  /* se-w总的安装步骤 */
   int se_w_status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   int step_all  /* 引擎所有组件 */
   int step_level1  /* 安装步骤 */
   tinyint status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   text message  /* 错误信息 */
   datetime create_at  /* 创建时间 */
   datetime update_at  /* 更新时间 */
   bigint component_bitmap  /* 安装了哪些组件 */
   bigint id
}
class t_replace_record {
   varchar(20) engine_id  /* 引擎id */
   int process_id  /* 归属安装进程的id */
   varchar(16) old_ipv4  /* 被替换节点 */
   varchar(16) new_ipv4  /* 替换的目标节点 */
   int package_type  /* 替换类型 */
   tinyint status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
   bigint id
}

表详解

安装进程表,安装、卸载、升级时使用。开始安装时,创建一条记录,查询安装状态时,查询此表

classDiagram
    direction LR
    
    class t_engine_install_processes {
       action_type  /* 执行动作类型(1 安装 2 添加节点 3 升级 4 回退 5 卸载 6 删除节点) */ tinyint
       int engine  /* 归属引擎id */
       varchar(64) name  /* 安装进程名 */
       tinyint status  /* 状态 0 未安装 1 安装中 2 已安装 3 安装失败 4 升级中 5 升级成功 6 升级失败 7 卸载中 8 卸载成功 ... */
       varchar(64) se_version  /* 引擎版本 */
       int major  /* 主版本号 */
       int minor  /* 次版本号 */
       int build  /* 内部版本号 */
       datetime create_at  /* 创建时间 */
       datetime update_at  /* 更新时间 */
       bigint id
    }


installer db整理.md
https://abrance.github.io/2024/06/24/project/sr/基础设施相关/installer db整理/
Author
xiaoy
Posted on
June 24, 2024
Licensed under