配置说明
启动配置文件(ms_controller.json)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 | { "allow_all_zero_ip_listening": false, "deploy_mode": "pd_separate", "initial_dist_server_port": 10000, "cluster_port":8899, "process_manager" : { "to_file": true, "file_path": "./logs/controller_process_status.json" }, "controller_backup_cfg" :{ "function_sw":false, "database_server_dns":"etcd.default.svc.cluster.local", "database_server_port":2379 }, "cluster_status" : { "to_file": true, "file_path": "./logs/cluster_status_output.json" }, "global_rank_table_file_path": "./conf/global_rank_table_file.json", "cluster_synchronization_seconds": 1, "rank_table_detecting_seconds": 5, "disappeared_server_waiting_seconds": 7200, "default_p_rate": 0, "default_d_rate": 0, "is_heterogeneous": false, "server_online_attempt_times": 4, "server_online_wait_seconds": 5, "init_role_attempt_times": 2, "check_role_attempt_times": 300, "check_role_wait_seconds": 5, "mindie_server_control_port": 1026, "mindie_server_port": 1025, "mindie_server_metric_port": 1027, "controller_alarm_port": 1027, "mindie_ms_coordinator_port": 1026, "mindie_ms_coordinator_external_port": 1028, "http_timeout_seconds": 5, "http_retries": 3, "role_decision_methods": "digs", "digs_request_summary_input_length": 3000, "digs_request_summary_output_length": 200, "digs_model_config_path":"./conf/model_config/llama3-70B.json", "digs_machine_config_path":"./conf/machine_config/800IA2.json", "digs_prefill_slo": 1000, "digs_decode_slo": 50, "multi_node_infer_config": { "multi_node_infer_enable": false, "p_node_config": { "enable_dist_dp_server": false, "node_machine_num": 2, "tp_size": 4, "dp_size": 4, "sp_size": 1 }, "d_node_config": { "enable_dist_dp_server": false, "node_machine_num": 2, "tp_size": 4, "dp_size": 4, "sp_size": 1 } }, "model_type": "llama3-70B", "transfer_type": "D2DTransfer", "digs_pp": 1, "digs_periodic_role_decision": { "auto_pd_role_switching_enable": true, "role_decision_time_period": 86400, "tasks_end_wait_seconds": 300 }, "http_server": { "ip" : "127.0.0.1", "port": 1026 }, "tls_config": { "request_coordinator_tls_enable": true, "request_coordinator_tls_items": { "ca_cert" : "./security/request_coordinator/security/certs/ca.pem", "tls_cert": "./security/request_coordinator/security/certs/cert.pem", "tls_key": "./security/request_coordinator/security/keys/cert.key.pem", "tls_passwd": "./security/request_coordinator/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/request_coordinator/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/request_coordinator/tools/pmt/standby/ksfb", "tls_crl": "" }, "request_server_tls_enable": true, "request_server_tls_items": { "ca_cert" : "./security/request_server/security/certs/ca.pem", "tls_cert": "./security/request_server/security/certs/cert.pem", "tls_key": "./security/request_server/security/keys/cert.key.pem", "tls_passwd": "./security/request_server/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/request_server/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/request_server/tools/pmt/standby/ksfb", "tls_crl": "" }, "http_server_tls_enable": true, "http_server_tls_items": { "ca_cert" : "./security/http_server/security/certs/ca.pem", "tls_cert": "./security/http_server/security/certs/cert.pem", "tls_key": "./security/http_server/security/keys/cert.key.pem", "tls_passwd": "./security/http_server/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/http_server/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/http_server/tools/pmt/standby/ksfb", "tls_crl": "" }, "cluster_tls_enable": true, "cluster_tls_items": { "ca_cert" : "./security/cluster/security/certs/ca.pem", "tls_cert": "./security/cluster/security/certs/cert.pem", "tls_key": "./security/cluster/security/keys/cert.key.pem", "tls_passwd": "./security/cluster/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/cluster/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/cluster/tools/pmt/standby/ksfb", "tls_crl": "" }, "etcd_server_tls_enable": true, "etcd_server_tls_items": { "ca_cert" : "./security/etcd_server/security/certs/ca.pem", "tls_cert": "./security/etcd_server/security/certs/cert.pem", "tls_key": "./security/etcd_server/security/keys/cert.key.pem", "tls_passwd": "./security/etcd_server/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/etcd_server/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/etcd_server/tools/pmt/standby/ksfb", "tls_crl": "" }, "ccae_tls_enable": true, "ccae_tls_items": { "ca_cert" : "./security/ccae/security/certs/ca.pem", "tls_cert": "./security/ccae/security/certs/cert.pem", "tls_key": "./security/ccae/security/keys/cert.key.pem", "tls_passwd": "./security/ccae/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/ccae/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/ccae/tools/pmt/standby/ksfb", "tls_crl": "" }, "alarm_tls_enable": true, "alarm_tls_items": { "ca_cert" : "./security/alarm_server/security/certs/ca.pem", "tls_cert": "./security/alarm_server/security/certs/cert.pem", "tls_key": "./security/alarm_server/security/keys/cert.key.pem", "tls_passwd": "./security/alarm_server/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/alarm_server/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/alarm_server/tools/pmt/standby/ksfb", "tls_crl": "" }, "external_coordinator_tls_enable": true, "external_coordinator_tls_items": { "ca_cert" : "./security/external_coordinator/security/certs/ca.pem", "tls_cert": "./security/external_coordinator/security/certs/cert.pem", "tls_key": "./security/external_coordinator/security/keys/cert.key.pem", "tls_passwd": "./security/external_coordinator/security/pass/key_pwd.txt", "kmc_ksf_master": "./security/external_coordinator/tools/pmt/master/ksfa", "kmc_ksf_standby": "./security/external_coordinator/tools/pmt/standby/ksfb", "tls_crl": "" } }, "log_info": { "log_level": "INFO", "to_file": true, "to_stdout": true, "run_log_path": "./logs/ms_controller_run_log.txt", "operation_log_path": "./logs/ms_controller_operation_log.txt", "max_log_str_size": 4096, "max_log_file_size": 20, "max_log_file_num": 10 } } |
参数名称 |
取值范围 |
配置说明 |
|---|---|---|
allow_all_zero_ip_listening |
|
必填;默认值为false。 是否允许全零监管,在取值为false状态下,如果使用全零监管将导致程序运行失败并报错。 说明:
全零监管会导致三面隔离失效,不满足安全配置要求,故默认禁止绑定IP地址为0.0.0.0。若仍需绑定IP地址为0.0.0.0,那么在保证安全前提下,需要将该参数设置为true。 |
deploy_mode |
|
必填;默认值为pd_separate。 部署模式。 |
initial_dist_server_port |
[1024, 65535] |
在DeepSeek大EP分布式并行场景下,配置的D节点Server实例起始端口号,在其他场景该参数不生效。 |
cluster_port |
- |
选填;默认值8899。 MindCluster ClusterD gRPC服务端端口。 |
process_manager:进程状态备份功能 |
||
to_file |
|
必填;默认值为true。 是否开启进程状态备份功能。 如果开启,会在程序启动时,自动加载进程状态备份文件。在程序运行的过程中,自动生成进程状态备份文件。备份文件详情请参见表2。 |
file_path |
- |
开启to_file开关时必填。 进程状态备份文件路径,要求该路径为真实存在且可读,同时确保该路径安全可靠,运行时会自动创建进程状态备份文件至该路径。如果进程文件保存在容器中的临时路径,在controller容器重启后,将发生文件丢失,需要重启整个集群才能恢复正常服务。 如果修改身份决策的相关配置,则需要删除进程状态备份文件,重启整个集群,否则将继承历史的身份决策结果。 |
cluster_status:集群服务状态导出功能 |
||
to_file |
|
必填;默认值为true。 是否开启集群服务状态导出功能。 如果开启,在程序运行的过程中会输出集群状态至文件。集群服务状态输出文件详情请参见表3。 |
file_path |
- |
开启to_file开关时必填。 集群状态导出文件路径,要求该文件所在的路径真实存在且可读,同时确保该路径安全可靠,运行时会自动创建文件至该路径。 |
ccae:端到端运维管理功能 ms_controller.json配置文件默认不带CCAE相关参数,如需开启,需自行添加,样例如下: "ccae" : {
"ip": "",
"port": 0
},
|
||
ip |
IPv4或IPv6 |
开启CCAE时必填。 CCAE服务端IP。 |
port |
[1024,65535] |
开启CCAE时必填。 CCAE服务端端口。 |
controller_backup_cfg:配置Controller主备倒换 |
||
function_sw |
|
Controller主备倒换功能开关,默认值为false。 |
database_server_dns |
- |
ETCD服务端的域名,默认值为etcd.default.svc.cluster.local。 |
database_server_port |
- |
ETCD服务端的端口号,默认值为2379。 |
global_rank_table_file_path |
- |
必填。 全局集群信息表路径,要求该文件真实存在且可读,同时确保该路径安全可靠。 如设置环境变量GLOBAL_RANK_TABLE_FILE_PATH,则优先读取环境变量的值。 说明:
全局集群信息表是Controller管控集群状态、管理Server节点的信息源。需要保证文件的安全性和内容的正确性。 |
cluster_synchronization_seconds |
[1,65535],单位为秒。 |
必填;默认值为1秒。 同步集群信息的时间周期。 |
rank_table_detecting_seconds |
[1,65535],单位为秒。 |
必填;默认值为5秒。 读取集群信息表的周期。 |
disappeared_server_waiting_seconds |
[1,65535],单位为秒。 |
必填;默认值为7200秒。 全局集群信息表中,删除Server的等待时间,到此时间时Server将会被移除。 |
default_p_rate |
[0,15] |
必填;默认值为0。 PD分离部署模式下,P所占的比例。
如设置环境变量MINDIE_MS_P_RATE,则优先读取环境变量的值。 |
default_d_rate |
[0,15] |
必填;默认值为0。 PD分离部署模式下,D所占的比例。
如设置环境变量MINDIE_MS_D_RATE,则优先读取环境变量的值。 |
is_heterogeneous |
|
必填;默认值为false。 是否为异构场景,异构场景需要同步修改集群信息表,增加hardware_type字段。 说明:
异构场景下,P节点hardware-type标签必须为"800I A2(32G)",D节点hardware-type标签必须为"800I A2(64G)"。 |
server_online_attempt_times |
[1,65535] |
必填;默认值为4。 集群初始化时,Server节点上线状态的检查次数 |
server_online_wait_seconds |
[1,65535],单位为秒。 |
必填;默认值为5。 集群初始化时,Server节点上线状态的检查间隔 |
init_role_attempt_times |
[1,65535] |
必填;默认值为2。 Server身份初始化时的重试次数,只有当检查到身份为Unkonwn才会触发重新下发身份的操作。 |
check_role_attempt_times |
[1,65535] |
必填;默认值为300。 Server身份初始化的检查次数。 |
check_role_wait_seconds |
[1,65535],单位为秒。 |
必填;默认值为5秒。 Server身份初始化的检查间隔。 |
mindie_server_control_port |
[1024,65535] |
必填;默认值为1026。 Server的管理端口。 |
mindie_server_port |
[1024,65535] |
必填;默认值为1025。 Server的数据端口。 |
mindie_server_metric_port |
[1024,65535] |
必填;默认值为1027。 Server的metrics端口。 |
controller_alarm_port |
[1024,65535] |
必填;默认值为1027。 Controller作为告警服务端端口。 |
mindie_ms_coordinator_port |
[1024,65535] |
必填;默认值为1026。 MindIE Coordinator的管理端口。 |
mindie_ms_coordinator_external_port |
[1024,65535] |
必填;默认值为1028。 MindIE Coordinator的外部端口。 |
http_timeout_seconds |
[1,65535],单位为秒。 |
必填;默认值为5秒。 通信超时时间。 |
http_retries |
[0,65535] |
必填;默认值为3。 通信异常重试次数。 |
role_decision_methods |
digs |
必填;默认值为digs。 PD身份决策算法;目前仅支持digs。 |
digs_request_summary_input_length |
[1,65535] |
必填;默认值为3000。 推理请求的平均输入长度。 确定模型及设备配置后,此参数和digs_request_summary_output_length是影响PD最佳比例计算的主要参数。
|
digs_request_summary_output_length |
[1,65535] |
必填;默认值为200。 推理请求的平均输出长度。 确定模型及设备配置后,此参数和digs_request_summary_input_length是影响PD最佳比例计算的主要参数。
|
digs_model_config_path |
- |
必填;默认值为llama3-70B模型的配置文件路径。 身份决策算法需要使用的模型参数信息,要求该文件真实存在且可读,格式参考模型配置文件描述。 |
digs_machine_config_path |
- |
必填;默认值为Atlas 800I A2 推理服务器的硬件参数文件路径。 身份决策算法需要使用的机器参数信息,要求该文件真实存在且可读,格式参考硬件设备文件描述。 |
digs_prefill_slo |
[1,65535] |
必填;默认值为1000。 Prefill速率。 |
digs_decode_slo |
[1,65535] |
必填;默认值为50。 Decode速率。 |
multi_node_infer_config |
||
multi_node_infer_enable |
|
选填;默认值为false。 该参数仅在DeepSeek大规模专家并行场景下生效,配置是否开启多节点推理。 |
p_node_config |
- |
配置P节点。 |
d_node_config |
- |
配置D节点。 |
enable_dist_dp_server |
|
选填;默认值为false。 该参数仅在DeepSeek大规模专家并行场景下生效,表示是否开启分布式并行策略。 |
node_machine_num |
[1, 768] |
选填;默认值为2。 该参数仅在DeepSeek大规模专家并行场景下生效,表示P/D实例数。 |
tp_size |
[1, 16] |
选填;默认值为4。 该参数仅在DeepSeek大规模专家并行场景下生效,tp数据并行大小。 |
dp_size |
[1, 512] |
选填;默认值为4。 该参数仅在DeepSeek大规模专家并行场景下生效,dp数据并行大小。 |
sp_size |
[1, 16] |
选填;默认值为1。 该参数仅在DeepSeek大规模专家并行场景下生效,sp数据并行大小。 |
model_type |
- |
必填;默认值为llama3-70B。 推理模型的名称。 上报CCAE的模型名称默认为该参数的值,如需上报的模型名称为使用的模型,请自行修改该参数值。 |
transfer_type |
D2DTransfer |
必填;默认值为D2DTransfer。 传输类型。 |
digs_pp |
[1,65535] |
必填;默认值为1。 任务并行数。 |
digs_periodic_role_decision |
||
auto_pd_role_switching_enable |
|
必填;默认值为true。 是否开启PD节点身份切换。 |
role_decision_time_period |
[3600, 1296000] |
必填;默认值为86400。 PD节点身份切换时间间隔,单位为秒。 |
tasks_end_wait_seconds |
[1, 65535] |
必填;默认值为300。 PD节点身份切换场景,任务执行后等待时长,单位为秒。 |
http_server:Controller HTTPS服务端配置 |
||
ip |
IPv4或IPv6 |
必填;默认值为127.0.0.1。 Controller服务端IP,用于健康检查。 如设置环境变量POD_IP,则优先读取环境变量的值。 |
port |
[1024,65535] |
必填;默认值为1026。 Controller服务端端口,用于健康检查。 |
tls_config:证书配置 |
||
request_coordinator_tls_enable |
|
必填;默认值为true。 是否开启与Coordinator通信接口的tls安全认证。建议用户开启,确保与Coordinator的通信安全。如果关闭则存在较高的网络安全风险。 |
request_coordinator_tls_items:Coordinator HTTPS客户端的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 Coordinator HTTPS客户端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 Coordinator HTTPS客户端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 Coordinator HTTPS客户端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 Coordinator HTTPS客户端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 Coordinator HTTPS客户端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 Coordinator HTTPS客户端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 Coordinator HTTPS客户端校验证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
request_server_tls_enable |
|
必填。默认值为true。 是否开启与Server通信接口的tls安全认证。建议用户开启,确保与Server的通信安全。如果关闭则存在较高的网络安全风险。 |
request_server_tls_items:Server HTTPS客户端的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 Server HTTPS客户端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 Server HTTPS客户端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 Server HTTPS客户端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 Server HTTPS客户端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 Server HTTPS客户端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 Server HTTPS客户端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 Server HTTPS客户端校验证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
http_server_tls_enable |
|
必填。默认值为true。 是否开启Controller HTTPS服务端tls。建议用户开启,确保Controller与客户端之间的通信安全。如果关闭则存在较高的网络安全风险。 |
http_server_tls_items属性:Controller HTTPS服务端的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 Controller HTTPS服务端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 Controller HTTPS服务端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 Controller HTTPS服务端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 Controller HTTPS服务端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 Controller HTTPS服务端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 Controller HTTPS服务端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 Controller HTTPS服务端校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
cluster_tls_enable |
|
必填。默认值为true。 是否开启与MindCluster ClusterD通信接口的tls安全认证。建议用户开启,确保与MindCluster ClusterD的通信安全。如果关闭则存在较高的网络安全风险。 |
cluster_tls_items属性:MindCluster ClusterD gRPC服务端的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 MindCluster ClusterD gRPC服务端校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
etcd_server_tls_enable |
|
必填。默认值为true。 是否开启与ETCD通信接口的tls安全认证。建议用户开启,确保与ETCD的通信安全。如果关闭则存在较高的网络安全风险。 |
etcd_server_tls_items属性:查询分布式存储系统(ETCD)状态信息的通信证书配置 |
||
ca_cert |
PD分离 |
开启tls时必填。 ETCD服务端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
PD分离 |
开启tls时必填。 ETCD服务端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
PD分离 |
开启tls时必填。 ETCD服务端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
PD分离 |
开启tls时必填。 ETCD服务端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmcKsfMaster |
PD分离 |
开启tls时必填。 ETCD服务端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmcKsfStandby |
PD分离 |
开启tls时必填。 ETCD服务端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
PD分离 |
开启tls时必填。 ETCD服务端校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
ccae_tls_enable |
|
选填。默认值为true。 是否开启CCAE HTTPS服务端tls,开启CCAE时必填。 |
ccae_tls_items属性:CCAE HTTPS服务端的证书相关配置 |
||
ca_cert |
- |
开启CCAE时必填。 CCAE HTTPS服务端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启CCAE时必填。 校验CCAE HTTPS服务端校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
alarm_tls_enable |
|
必填。默认值为true。 是否开启与Coordinator告警通信接口的tls安全认证。建议用户开启,确保与Coordinator告警的通信安全。如果关闭则存在较高的网络安全风险。 |
alarm_tls_items属性:Controller作为告警服务端的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 Controller告警服务端ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 Controller告警服务端tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 Controller告警服务端tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 Controller告警服务端的KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 Controller告警服务端加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 Controller告警服务端加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 Controller告警服务端校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
external_coordinator_tls_enable |
|
必填。默认值为true。 是否开启与Controller作为客户端访问Coordinator外部端口的tls安全认证。建议用户开启,确保与Coordinate外部端口的通信安全。如果关闭则存在较高的网络安全风险。 |
external_coordinator_tls_items属性:Controller作为客户端访问Coordinator外部端口的证书相关配置 |
||
ca_cert |
- |
开启tls时必填。 访问Coordinator外部端口的ca根证书文件路径,要求该文件真实存在且可读。 |
tls_cert |
- |
开启tls时必填。 访问Coordinator外部端口的tls证书文件路径,要求该文件真实存在且可读。 |
tls_key |
- |
开启tls时必填。 访问Coordinator外部端口的tls私钥文件路径,要求该文件真实存在且可读。 |
tls_passwd |
- |
开启tls时必填。 访问Coordinator外部端口KMC加密的私钥口令的文件路径,要求该文件真实存在且可读。 |
kmc_ksf_master |
- |
开启tls时必填。 访问Coordinator外部端口加密口令的KMC密钥库文件,要求该文件真实存在且可读。 |
kmc_ksf_standby |
- |
开启tls时必填。 访问Coordinator外部端口加密口令的KMC standby密钥库备份文件,要求该文件真实存在且可读。 |
tls_crl |
- |
开启tls时必填。 访问Coordinator外部端口校验客户端的证书吊销列表CRL文件路径,要求该文件真实存在且可读。如为空,则不进行吊销校验。 |
log_info:日志功能(建议使用环境变量配置日志,详情请参见日志配置) |
||
log_level |
|
可选;默认值为INFO。 设置日志级别。 如设置环境变量MINDIEMS_LOG_LEVEL或者MINDIE_LOG_LEVEL,则优先读取环境变量的值。 |
to_file |
|
可选;默认值为true。 是否输出到文件。 如设置环境变量MINDIE_LOG_TO_FILE,则优先读取环境变量的值。 |
to_stdout |
|
可选;默认值为false。 是否输出到标准输出流。 如设置环境变量MINDIE_LOG_TO_STDOUT,则优先读取环境变量的值。 |
run_log_path |
- |
可选。默认路径与MINDIE_LOG_PATH环境变量的默认路径相同,详情请参见日志配置。如设置环境变量MINDIE_LOG_PATH,则优先读取环境变量的值。当to_file为true时生效。 运行日志路径,要求该文件所在的路径真实存在且可读,运行时会自动创建文件。 |
operation_log_path |
- |
可选。默认路径与MINDIE_LOG_PATH环境变量的默认路径相同,详情请参见日志配置。如设置环境变量MINDIE_LOG_PATH,则优先读取环境变量的值。当to_file为true时生效。 审计日志路径,要求该文件所在的路径真实存在且可读,运行时会自动创建文件。 |
max_log_str_size |
[128,65535] |
可选;默认值为4096。 单条日志最大长度。 |
max_log_file_size |
[1,500],单位MB。 |
可选;默认值为20,当to_file为true时生效。 单个日志文件存储上限。如设置环境变量MINDIE_LOG_ROTATE,则优先读取环境变量的值。 |
max_log_file_num |
[1,64] |
可选;默认值为10,当to_file为true时生效。 最大日志文件存储数量。如设置环境变量MINDIE_LOG_ROTATE,则优先读取环境变量的值。 |
如果推理服务所在的计算节点的网络为跨公网和局域网,绑定0.0.0.0的IP地址可能导致网络隔离失效,存在较大安全风险。故该场景下默认禁止EndPoint的IP地址绑定为0.0.0.0。若用户仍需要使用0.0.0.0,请在环境具备全零监管防护能力的前提下,通过设置配置项“allow_all_zero_ip_listening”为true手动打开允许配置0.0.0.0的IP地址开关,启用全零监管的安全风险由用户自行承担。
进程备份文件
- 在集群初始化阶段,如果超过Server节点上线状态的检查总时间,Server节点的静态配置采集接口或者动态状态采集接口仍然返回非200,则认为Server节点上线失败,为故障节点。
- 在集群初始化阶段,如果Server节点指定身份接口请求失败,则认为身份下发失败。如果身份下发成功,但是Server节点在身份初始化检查总时间内一直切换失败,则认为Server节点为故障节点。可能有以下两种场景:
- Server节点被指定为P节点,超过身份初始化的检查总时间,仍然为RoleUnknown或者RoleSwitching状态。
- Server节点被指定为D节点,超过身份初始化的检查总时间,仍然为RoleUnknown状态或者该D节点和全部的P节点建链失败。
进程备份文件样例如下所示,参数解释请参见表2所示。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | { "server": [ { "delete_time": 0, "id": xx, "ip": "xx.xx.xx.1", "is_faulty": false, "is_initialized": true, "peers": [ xx, ], "static_info": { "group_id": 0, "label": 2, "role": 80, "total_block_num": 320, "total_slots_num": 200 } }, { "delete_time": 0, "id": xx, "ip": "xx.xx.xx.2", "is_faulty": false, "is_initialized": true, "peers": [ xx ], "static_info": { "group_id": 0, "label": 3, "role": 68, "total_block_num": 320, "total_slots_num": 200 } } ] } |
参数 |
类型 |
描述 |
|---|---|---|
delete_time |
int64_t |
Server节点在ranktable中的删除时间。 |
id |
uint64_t |
Server节点的IP地址转换得到的唯一ID。 |
ip |
string |
Server节点的IP地址。 |
is_faulty |
bool |
Server节点是否为故障节点。 |
is_initialized |
bool |
Server节点是否已经完成身份下发。 无身份部署模式下,此字段永远为false。 |
peers |
size_t数组 |
Server节点需要连接的其他节点ID。
|
static_info属性 |
||
group_id |
uint64_t |
Server节点所在的GroupID。 |
label |
枚举类型 |
Server节点的标签类型:
当前版本仅支持2和3标签。 |
role |
枚举类型 |
Server节点的身份:
|
total_block_num |
size_t |
Server节点的block总量。 |
total_slots_num |
size_t |
Server节点的slot总量。 |
集群服务状态输出文件
集群状态输出文件主要包含以下内容:
- Coordinator的健康状态,Controller和Coordinator之间的通信接口请求成功,则认为Coordinator为健康状态。
- Server是否为故障节点,以及非故障节点的健康状态。
- 在集群初始化阶段,如果超过Server节点上线状态的检查总时间后,Server节点的静态配置采集接口或者动态状态采集接口仍然返回非200,则认为Server节点上线失败,为故障节点。
- 在集群初始化阶段,如果Server节点身份初始化失败,则认为Server节点上线失败,为故障节点。可能有以下两种场景:
- Server节点被指定为P节点,超过身份初始化的检查总时间,仍然为RoleUnknown或者RoleSwitching状态。
- Server节点被指定为D节点,超过身份初始化的检查总时间,仍然为RoleUnknown状态或者该D节点和全部的P节点建链失败。
- 集群初始化完成后,Controller和非故障的Server之间的通信接口请求成功,则认为Server为健康状态。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | { "coordinator": [ { "ip": "xx.xx.xx.xx", "is_healthy": true } ], "server": [ { "delete_time": 0, "dynamic_info": { "avail_block_num": 320, "avail_slots_num": 200 }, "ip": "xx.xx.xx.1", "is_faulty": false, "is_healthy": true, "model_name": "llama3-70b", "peers": [ "xx.xx.xx.2" ], "static_info": { "block_size": 128, "group_id": 1, "label": 2, "max_output_len": 512, "max_seq_len": 2560, "role": 80, "total_block_num": 320, "total_slots_num": 200 } }, { "delete_time": 0, "dynamic_info": { "avail_block_num": 244, "avail_slots_num": 181 }, "ip": "xx.xx.xx.2", "is_faulty": false, "is_healthy": true, "model_name": "llama3-70b", "peers": [ "xx.xx.xx.1" ], "static_info": { "block_size": 128, "group_id": 1, "label": 3, "max_output_len": 512, "max_seq_len": 2560, "role": 68, "total_block_num": 320, "total_slots_num": 200 } }, { "delete_time": 0, "dynamic_info": { "avail_block_num": 0, "avail_slots_num": 200 }, "ip": "xx.xx.xx.3", "is_faulty": true, "is_healthy": false, "model_name": "llama3-70b", "peers": [ "xx.xx.xx.4" ], "static_info": { "block_size": 128, "group_id": 0, "label": 2, "max_output_len": 512, "max_seq_len": 2560, "role": 80, "total_block_num": 1024, "total_slots_num": 200 } }, { "delete_time": 0, "dynamic_info": { "avail_block_num": 0, "avail_slots_num": 200 }, "ip": "xx.xx.xx.4", "is_faulty": true, "is_healthy": true, "model_name": "llama3-70b", "peers": [ "xx.xx.xx.3" ], "static_info": { "block_size": 128, "group_id": 0, "label": 3, "max_output_len": 512, "max_seq_len": 2560, "role": 68, "total_block_num": 1024, "total_slots_num": 200 } } ] } |
参数 |
类型 |
描述 |
|---|---|---|
Coordinator信息 |
||
ip |
string |
Coordinator节点的IP地址。 |
is_healthy |
bool |
Coordinator节点的健康状态。
|
Server信息 |
||
delete_time |
int64_t |
Server节点在ranktable中的删除时间。 |
dynamic_info属性 |
||
avail_block_num |
size_t |
Server节点的可用block数量。 |
avail_slots_num |
size_t |
Server节点的可用slot数量。 |
ip |
string |
Server节点的IP地址。 |
is_faulty |
bool |
是否为故障节点。 |
is_healthy |
bool |
是否为健康节点。 当节点为故障节点时,此字段仅表示Controller与该Server的最后一次通信是否成功。 |
model_name |
string |
推理使用的模型。 |
peers |
string数组 |
Server节点需要连接的其他节点。
|
static_info属性 |
||
block_size |
size_t |
KV Cache block的size大小。 |
group_id |
uint64_t |
Server节点所在的GroupID。 |
label |
枚举类型 |
Server节点的标签类型:
当前版本仅支持2和3标签。 |
max_output_len |
size_t |
最大输出长度。 |
max_seq_len |
size_t |
最大序列长度。 |
role |
枚举类型 |
Server节点的身份:
|
total_block_num |
size_t |
Server节点的block总量。 |
total_slots_num |
size_t |
Server节点的slot总量。 |
环境变量名称 |
含义 |
|---|---|
MINDIE_MS_CONTROLLER_CONFIG_FILE_PATH |
ms_controller配置文件的读取路径。 |
GLOBAL_RANK_TABLE_FILE_PATH |
集群信息文件的读取路径。集群信息文件请参见8中的global_ranktable.json文件。 环境变量的优先级高于ms_controller配置文件的global_rank_table_file_path属性。 |
POD_IP |
ms_controller所在Pod的IP。 环境变量的优先级高于ms_controller配置文件的http_server.ip属性。 |
MINDIE_MS_P_RATE |
PD分离部署模式下,P的比例。
环境变量的优先级高于ms_controller配置文件的default_p_rate属性。 |
MINDIE_MS_D_RATE |
PD分离部署模式下,D的比例。
环境变量的优先级高于ms_controller配置文件的default_d_rate属性。 |
MINDIEMS_LOG_LEVEL |
用户可动态设置Controller输出的日志等级。 默认值为空,环境变量的优先级高于表1中log_level参数。日志级别如下所示:
说明:
|
MINDIE_CHECK_INPUTFILES_PERMISSION |
用户可设置是否需要检查外部挂载文件,具体包括ms_controller.json, rank_table.json以及证书相关文件。默认值为空,表示需要做权限校验。
说明:当用户使用MINDIE_MS_CONTROLLER_CONFIG_FILE_PATH设置配置文件路径时,ms_controller.json为外部挂载文件。 |
MODEL_ID |
部署模型的唯一标识。 |
注:日志相关环境变量详情请参见日志配置。 |
|
模型配置文件
模型配置文件信息如下所示。
参数名称 |
含义 |
类型 |
默认值 |
有效值 |
|---|---|---|---|---|
hidden_size |
隐藏层的特征维度。 |
|
8129 |
[0.000001, 2147483647.000000] |
initializer_range |
权重参数初始化的范围。 |
|
0.02 |
[0.000001, 2147483647.000000] |
intermediate_size |
FFN隐藏层大小。 |
|
28672 |
[0.000001, 2147483647.000000] |
max_position_embeddings |
最大位置嵌入数量。 |
|
4096 |
[0.000001, 2147483647.000000] |
num_attention_heads |
attention头数量。 |
|
64 |
[0.000001, 2147483647.000000] |
num_hidden_layers |
隐藏层数。 |
|
80 |
[0.000001, 2147483647.000000] |
num_key_value_heads |
kv头数量。 |
|
8 |
[0.000001, 2147483647.000000] |
torch_dtype |
PyTorch所用数据类型。 |
string |
float16 |
|
硬件设备信息文件
硬件设备信息文件如下所示。
参数名称 |
含义 |
类型 |
配置值 |
有效值 |
|---|---|---|---|---|
BW_GB |
节点内卡间通信带宽。 |
|
392 |
[0.000001, 2147483647.000000] |
BW_RDMA_Gb |
节点间通信带宽。 |
|
200 |
[0.000001, 2147483647.000000] |
BWeff |
节点内通信带宽效率。 |
|
0.5 |
[0.000001, 1.000000] |
TFLOPS |
单卡算力。 |
|
246 |
[0.000001, 2147483647.000000] |
TFLOPSeff |
算力效率。 |
|
0.5 |
[0.000001, 1.000000] |
MBW_TB |
NPU访存带宽。 |
|
0.8 |
[0.000001, 2147483647.000000] |
MBW_TBeff |
NPU访存带宽效率。 |
|
0.3 |
[0.000001, 1.000000] |
alpha |
集合通信启动时延。 |
|
2 |
[0.000001, 2147483647.000000] |
MEMCapacity |
显存大小(GB)。 |
|
32 |
[0.000001, 2147483647.000000] |
eta_OOM |
显存OOM水线。 |
|
0.9 |
[0.000001, 1.000000] |
staticTransferDelay |
节点间通信静态时延。 |
|
0.00001 |
[0.000001, 2147483647.000000] |
其他配置要求:
- ms_controller运行时需要依赖对应lib目录下的so,主要涉及:libboundscheck.so、libcrypto.so.3、libhse_cryption.so、libmie_role_manager.so和libssl.so.3。
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MIES_INSTALL_PATH/lib(该目录需要替换为对应依赖的so的路径)
- 开启tls校验或者将日志写入日志文件时,需要导入以下KMC依赖的环境变量。
1export HSECEASY_PATH=$MIES_INSTALL_PATH/lib
- 设置输出的日志等级,例如将日志等级设置为INFO。
1export MINDIE_LOG_LEVEL=INFO