4. mxkind使用说明
本章描述mxkind命令行工具的使用,包括mxkind新增命令接口介绍以及如何兼容使用原生kind命令。
4.1. 创建集群
mxkind通过给原生 kind create cluster 命令新增一个flag来指定集群中每个worker节点的GPU个数。
4.1.1. 原型
mxkind create cluster [mx-flag] -- [kind-flag]
其中 mx-flag 为mxkind新增的flag, kind-flag 为kind原生 create cluster 支持的flag,中间通过 -- 分隔。
4.1.1.1. kind-flag
kind-flag 是kind原生create cluster支持的flag,mxkind兼容原生 kind create cluster 指令的所有用法。
kind-flag 可通过 mxkind create cluster -- -h 获得,或者参考kind官网。
4.1.1.2. mx-flag
mx-flag 是mxkind新增的flag,用来给待创建集群中的每个worker节点指定其可见的GPU数量。
mx-flag |
说明 |
|---|---|
–worker-gpus |
指定worker节点的沐曦GPU 数量,节点间用逗号分隔(例如:“2,2,2”标识3个worker节点,每个节点分配2个GPU) |
–help, -h |
显示帮助信息 |
4.1.2. 输出
输出 |
说明 |
|---|---|
成功 |
输出分成两部分,mxkind新增部分和kind原生部分:
|
失败 |
输出分成两部分,mxkind新增部分和kind原生部分:
|
4.2. 查询
mxkind通过在原生 kind get 指令下新增一个二级指令,来获取给各worker节点分配的GPU列表,同时兼容 get 原生的所有子命令。
4.2.1. 原型
4.2.1.1. 获取worker节点GPU列表
mxkind get [mx-command]
其中 mx-command 为mxkind新增的二级指令,详细说明见下表:
mx-command |
说明 |
|---|---|
gpus |
|
4.2.1.2. 兼容get原生命令
mxkind get -- [kind-command]
kind-command 是kind原生 get 指令的二级命令,可通过 mxkind get -- -h 查看支持的二级指令集合。
4.2.2. 输出
指令类型 |
输出 |
|---|---|
mxkind get gpus |
输出各个节点的名字和对应的GPU device ID列表。 示例: root@luwu:/home/metax/# ./mxkind get gpus
GPU Allocation:
kind-worker : GPUs [0,1]
kind-worker2 : GPUs [2,3,4]
|
mxkind get – [kind get command] |
直接输出对等kind原生指令的输出。 示例:
|
4.3. kind原生指令兼容
本章节描述mxkind如何兼容它没有扩展过的,也是上文没有提到过的其他kind原生指令。
kind原生指令列表可通过 mxkind -- -h 获得。
4.3.1. 原型
可以使用下面两种方式访问mxkind没有扩展过的命令。
mxkind命令后用
--标识后面跟的都是kind原生命令和flag,mxkind会将--后的内容直接透传给它封装的原生kind。mxkind命令后直接跟kind原生命令和flag,不用
--隔离。
推荐使用第一种方式,也就是用 -- 隔离mxkind和kind原生命令,提高可读性,其原型如下:
mxkind -- [kind-command]
#kind-command指原生kind支持的指令,可以通过mxkind -- -h查看支持的所有指令
4.3.2. 输出
这类透传指令输出和原生kind完全一致,以下是一个调用kind原生 delete 命令删除一个集群的示例:
root@luwu:/home/metax# ./mxkind -- delete cluster --name=kind-2node
Deleting cluster "kind-2node" ...
Deleted nodes: ["kind-2node-worker2" "kind-2node-control-plane"]