下载
中文
注册

使用msctl部署服务

工具使用

MindIE MS Deployer提供命令行工具,可供用户使用,当前提供的对外命令为:

表1 客户端命令

指令

类型

说明

./bin/msctl create infer_server -f ./conf/infer_server.json

create

客户端服务部署。

配置文件需要不大于640权限,否则启动失败。

./bin/msctl delete infer_server -n {服务名称}

delete

卸载服务,删除服务相关的Kubernetes资源,停止对外服务。

./bin/msctl get infer_server -n {服务名称}

get

获取服务状态,包括服务是否已就绪。

./bin/msctl -h/--help

-

命令使用帮助。

./bin/msctl update infer_server -f ./conf/update_server.json

update

更新推理服务配置。

客户端部署命令

使用MindIE MS命令行客户端msctl发送部署请求命令,如下所示。

./bin/msctl create infer_server -f ./conf/infer_server.json

回显如下所示,则表示部署请求命令下发成功。

{
    "message": "creating the server!",
    "status": "0"
}

执行以下Kubernetes查询指令,查询是否部署成功。

kubectl get pod -A

如下图所示,在Kubernetes的Pod资源用户自定义的{namespace}中,存在{server_name}-deployment-0-xxx且状态为Running时,则表示部署成功。

{server_name}{namespace}RESTful接口API中用户自行编写的json配置文件中的“server_name”“namespace”参数值。

如果部署失败,请参见表2中的volumes参数,根据挂载的物理日志路径中的日志文件定位具体问题。

客户端卸载命令

使用msctl在MindIE MS客户端发送卸载请求命令,如下所示。
./bin/msctl delete infer_server -n {server_name}

回显如下所示,则表示卸载请求命令下发成功且服务删除成功。

{
    "message": "succeed to clear resources",
    "status": "0"
}

也可以使用Kubernetes命令查看该服务是否已删除或者处于非Running状态,如下图所示。

kubectl get pod -A

客户端查询命令

使用msctl在MindIE MS客户端发送查询请求命令,如下所示。
./bin/msctl get infer_server -n {server_name}

回显如下所示,则表示查询请求命令下发成功。

{
    "data": {
        "instances_status": [
            {
                "liveness": true,
                "pod_name": "mindie-server-zsm-586c8fb5f8-vtx2n",
                "readiness": true
            }
        ],
        "model_info": {
            "docker_label": null,
            "max_batch_total_tokens": 8192,
            "max_best_of": 1,
            "max_concurrent_requests": 200,
            "max_input_length": 2048,
            "max_stop_sequences": null,
            "max_waiting_tokens": null,
            "models": [
                {
                    "max_total_tokens": 2560,
                    "model_device_type": "npu",
                    "model_dtype": "float16",
                    "model_id": "llama2_7b",
                    "model_pipeline_tag": "text-generation",
                    "model_sha": null
                }
            ],
            "sha": null,
            "validation_workers": null,
            "version": "1.0.RC3",
            "waiting_served_ratio": null
        },
        "server_name": "mindie-server-zsm"
    },
    "message": "success",
    "status": "0"
}

重要参数解释:

  • “liveness”:表示服务存活状态。
    • “true”:表示服务存活。
    • “false”:表示服务未存活。
  • “readiness”:表示服务实例启动状态。
    • “true”:表示服务实例已启动完成并进入就绪状态。
    • “false”:表示服务实例未启动完成。

客户端滚动更新命令

使用msctl在MindIE MS客户端发送更新请求命令,如下所示。
./bin/msctl update infer_server -f ./conf/update_server.json

回显如下所示,则表示更新请求命令下发成功。

{
    "message": "update server success.",
    "status": "0"
}