云服务器内容精选

  • 命令说明 表1 ma-cli支持的命令 命令 命令详情 configure ma-cli鉴权命令,支持用户名密码、AK/SK image ModelArts镜像构建、镜像注册、查询已注册镜像信息等 obs-copy 本地和OBS文件/文件夹间的相互复制 ma-job ModelArts训练作业管理,包含作业提交、资源查询等 dli-job DLI Spark任务提交及资源管理 auto-completion 命令自动补全
  • 功能介绍 ModelArts CLI,即ModelArts命令行工具,是一个跨平台命令行工具,用于连接ModelArts服务并在ModelArts资源上执行管理命令。用户可以使用交互式命令行提示符或脚本通过终端执行命令。为了方便理解,下面将ModelArts CLI统称为ma-cli。ma-cli支持用户在ModelArts Notebook及线下虚拟机中与云端服务交互,使用ma-cli命令可以实现命令自动补全、鉴权、镜像构建、提交ModelArts训练作业、提交DLI Spark作业、OBS数据复制等。
  • 命令预览 $ ma-cli -h Usage: ma-cli [OPTIONS] COMMAND [ARGS]... Options: -V, -v, --version 1.2.1 -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -h, -H, --help Show this message and exit. Commands: configure Configures authentication and endpoints info for the CLI. image Support get registered image list、register or unregister image、debug image, build image in Notebook. obs-copy Copy file or directory between OBS and local path. ma-job ModelArts job submission and query job details. dli-job DLI spark job submission and query job details. auto-completion Auto complete ma-cli command in terminal, support "bash(default)/zsh/fish".
  • 安装Gallery CLI配置工具 当Gallery CLI配置工具包下载完成后,进入服务器安装工具。不管是ModelArts Lite云服务,还是本地Windows/Linux等服务器,安装操作都相同。 登录服务器,激活python虚拟环境。 conda activate [env_name] # 例如使用conda管理python环境(需要确认环境已安装Anaconda) 在python环境中安装CLI工具。 pip install ./gallery_cli-0.0.4-py3-none-any.whl 配置CLI工具的环境信息。 在服务器的任意目录下(本文以“/gallerycli”为例)新建CLI配置文件“config.env”,包含如下配置信息。 # IAM 相关配置 iam_url=https://iam.myhuaweicloud.com/v3/auth/tokens iam_project=cn-north-7 iam_timeout=15 # 账号密码,和AK/SK二选一 iam_domain=xxx iam_user=xxx iam_password=xxx # AK/SK,和账号密码二选一 iam_ak=xxx iam_sk=xxx # 托管仓库相关配置 repo_url=https://{ModelArts-Endpoint}.myhuaweicloud.com # 系统相关配置 cached_dir=/test # 加解密配置 sdk_encrypt_implementation_func=/path/to/crypt.py.my_encrypt_func sdk_decrypt_implementation_func=/path/to/crypt.py.my_decrypt_func 表1 配置项参数说明 参数名称 说明 iam_url IAM地址,默认为“https://iam.myhuaweicloud.com/v3/auth/tokens”。 iam_project 服务器所在区域的项目名称,获取方式请参见获取项目ID和名称。如果是本地服务器则默认是北京四区域,此处填写“cn-north-4”。 iam_timeout (可选)IAM访问超时时间,单位为秒,缺省值是5。当环境网络不稳定时,建议将该值改大。如果超过该时间IAM还没有响应,系统会返回超时错误码,便于定位链接故障。 iam_domain 用户的账号ID,获取方式请参见获取账号名和账号ID。 iam_user IAM用户名,获取方式请参见获取用户名和用户ID。 iam_password IAM用户密码,即账号的登录密码。 iam_ak 访问密钥AK,获取方式请参见访问密钥。 iam_sk 访问密钥SK,获取方式请参见访问密钥。 repo_url AI Gallery仓库的地址,格式为“http://{ModelArts-Endpoint}.myhuaweicloud.com”,其中不同区域的Endpoint可以在ModelArts地区和终端节点获取。 cached_dir 缓存目录,默认AI Gallery仓库的文件下载至该目录下。 sdk_encrypt_implementation_func 自定义加密函数,认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件中密文存放,使用时解密,确保安全。 sdk_decrypt_implementation_func 自定义解密函数,认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件中密文存放,使用时解密,确保安全。 配置文件中,账号密码认证和AK/SK认证二选一即可。如果使用账号密码认证,则需要填写配置项“iam_domain”、“iam_user”和“iam_password”;如果使用AK/SK认证,则需要填写配置项“iam_ak”、“iam_sk”和加密配置。 华为账号只能使用AK/SK认证。如果要使用账号密码认证,且必须先创建一个IAM用户再获取IAM用户名和密码进行认证,操作指导请参见创建IAM用户。 配置项中的认证凭据信息不建议使用明文,可以通过下述方式扩展自定义的加解密组件。 在module(yourmodule)自定义一个解(加)密方法,例如decrypt_func(cipher),要求可以通过“from yourmodule import decrypt_func”的方式获取认证凭据信息。 在配置文件中配置“sdk_decrypt_implementation_func=yourmodule.decrypt_func”指向自定义的解密方法的引用。程序加载时会通过import_lib加载认证凭据信息。 配置文件中配置密文的格式“iam_ak={Crypto}cipher”,其中cipher会在配置项读取认证凭据信息时被解析传递进decrypt_func方法中,进行解密。 其他类似自定义加密的方法,会在保存Token到本地时进行加密。 配置CLI工具的环境变量,指定到上一步新建的配置文件。 export SDK_CONFIG_PATH=/gallerycli/config.env # 填写正确的config.env路径 配置完成后,执行如下命令查看CLI工具是否安装成功。 gallery-cli --help 如果安装成功会显示CLI中所有可用选项的列表,如下所示。 Usage: gallery-cli [OPTIONS] COMMAND [ARGS]... ╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --install-completion Install completion for the current shell. | │ --show-completion Show completion for the current shell, to copy it or customize the installation. | │ --help Show this message and exit. | ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ download Download files from the AI Gallery | │ login Log in using ak sk from huawei cloud iam | │ logout Log out | ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ “--help”选项可以用于获取命令的更多详细信息,可以随时使用它来列出所有可用选项及其详细信息。例如,“gallery-cli download --help”可以获取使用CLI下载文件的更多帮助信息。
  • 约束限制 Gallery CLI配置工具下载文件时依赖集群的公网访问权限,所以在使用CLI时要求集群配置NAT网关,具体操作请参见公网NAT网关。 只有托管到AI Gallery仓库的资产才支持使用Gallery CLI配置工具下载文件,如果在资产详情页有“复制完整资产名称”按钮即表示该资产支持使用Gallery CLI配置工具下载,如图1所示。 图1 复制完整资产名称 “运行平台”设置为“Pangu Studio”的数据集,不支持使用CLI工具下载。
  • 请求示例 HTTP的示例 POST /controller/campus/v3/networkconfig/site-templates/fbb684c8-0d37-496f-bafa-4b06d5151e2e/type/AP/cli/batch-delete HTTP/1.1 Host: 192.168.1.125:18002 Content-Type: application/json Accept: application/json Accept-Language: en-US X-AC CES S-TOKEN: x-yyyyyy { "ids" : [ "fbb684c80d37496fbafa4b06db151e2a" ] }
  • URI /controller/campus/v3/networkconfig/site-templates/{siteTemplateId}/type/{deviceType}/cli/batch-delete 表1 path参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 siteTemplateId 是 string 36个字符。 - 站点模板ID, UUID格式。 "fbb684c8-0d37-496f-bafa-4b06d5151e2e" deviceType 是 string AP LSW FW AR - 设备类型,取值范围:AP、LSW、FW、AR。 "AP"
  • 响应参数 返回状态码为200:成功删除CLI配置信息。 表4 DeleteCLIResponseDto对象的参数列表 参数名称 类型 参数值域 默认值 参数说明 参数示例 errcode string - - 错误码。 "0" errmsg string - - 错误信息。 "" 返回状态码为400:校验异常。 详细信息请参见实际响应消息体。 返回状态码为500:内部服务错误。 详细信息请参见实际响应消息体。
  • 响应示例 返回状态码为200:成功删除CLI配置信息。 HTTP/1.1 200 OK Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive { "errcode" : "0", "errmsg" : "" } 返回状态码为400:校验异常。 HTTP/1.1 400 Bad Request Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive 返回状态码为500:内部服务错误。 HTTP/1.1 500 Internal Server Error Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive
  • 请求示例 HTTP的示例 DELETE /restconf/v2/data/huawei-ac-nes-device:nes/ne/00000000-0000-0000-0000-000000000000/huawei-nce-e-cli:command-aliases/command-alias/test1 HTTP/1.1 Host: 192.168.1.125:18002 Content-Type: application/json Accept: application/json Accept-Language: en-US X-ACCESS-TOKEN: x-yyyyyy restconf-transaction-id: "00000000-0000-0000-0000-000000000000"
  • 响应示例 返回状态码为200:操作成功。 HTTP/1.1 200 OK Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive 返回状态码为400:请求参数错误。 HTTP/1.1 400 Bad Request Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive 返回状态码为500:内部错误。 HTTP/1.1 500 Internal Server Error Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive
  • URI /restconf/v2/data/huawei-ac-nes-device:nes/ne/{id}/huawei-nce-e-cli:command-aliases/command-alias/{alias} 表1 path参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 id 是 string 36个字符。满足正则表达[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}。 - 设备ID。 "00000000-0000-0000-0000-000000000000" alias 是 string 1~63个字符。满足正则表达[a-zA-Z][a-zA-Z0-9-]*。 - 指定别名。必填,支持大、小写字母,数字及连字符"-",字母开头,不区分大小写,字符间不能有空格。别名定义出现循环嵌套或嵌套层次超过16层时,该别名节点无效,不会用于进行字符串替换。单一主键字段。 "test1"
  • 请求示例 HTTP的示例 PATCH /restconf/v2/data/huawei-ac-nes-device:nes/ne/00000000-0000-0000-0000-000000000000/huawei-nce-e-cli:command-aliases HTTP/1.1 Host: 192.168.1.125:18002 Content-Type: application/json Accept: application/json Accept-Language: en-US X-ACCESS-TOKEN: x-yyyyyy restconf-transaction-id: "00000000-0000-0000-0000-000000000000" { "huawei-nce-e-cli:command-aliases" : { "command-alias" : [ { "alias" : "test1", "command" : "test2", "parameter" : "$test3" } ] } }
  • 响应示例 返回状态码为200:操作成功。 HTTP/1.1 200 OK Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive 返回状态码为400:请求参数错误。 HTTP/1.1 400 Bad Request Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive 返回状态码为500:内部错误。 HTTP/1.1 500 Internal Server Error Date: Sun,11 May 2025 10:00:00 GMT Server: example-server Content-Type: application/json;charset=UTF-8 Content-Length: 250 Connection: keep-alive
  • 请求参数 表2 header参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 restconf-transaction-id 否 string - - 事务ID。 "00000000-0000-0000-0000-000000000000" 表3 body参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 huawei-nce-e-cli:command-aliases 是 REFERENCE 详细请参见表4。 别名配置参数。 - 表4 command-aliases-exclude-patch-false-augment对象的参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 huawei-nce-e-cli:command-aliases 否 REFERENCE 详细请参见表5。 别名配置参数。 - 表5 command-aliases-patch-false对象的参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 command-alias 否 ARRAY_REFERENCE 0-200个列表项,详细请参见表6。 别名实例。 - 表6 command-aliases-command-alias-patch-false对象的参数列表 参数名称 必选 类型 参数值域 默认值 参数说明 参数示例 alias 否 string 1~63个字符。满足正则表达[a-zA-Z][a-zA-Z0-9-]*。 - 指定别名。必填,支持大、小写字母,数字及连字符"-",字母开头,不区分大小写,字符间不能有空格。别名定义出现循环嵌套或嵌套层次超过16层时,该别名节点无效,不会用于进行字符串替换。单一主键字段。 "test1" command 否 string 1~511个字符。满足正则表达[^?]+。 - 指定别名命令行。必填,不支持英文问号,如果字符之间有空格,则字符串外必须使用双引号。指定别名参数配置后,必须在指定别名命令行里面包含进去。例如参数包含$a,则命令行格式应该为$a,"$a","xxx $a","xxx $a $xx"这样的形式。多个$参数必须连续保持在最后。 "test2" parameter 否 string 2~511个字符。 - 指定别名参数。支持大、小写字母,数字及连字符"-",必须以"$"符号开头,不区分大小写,取值范围是2~63,最多支持32个参数,参数之间以空格进行分隔。指定别名命令行配置后,必须在指定别名参数里面定义。例如命令行格式为$a,"$a","xxx $a","xxx $a $xx"这样的形式,则指定别名参数必须包含$a。 "$test3"
提示

您即将访问非华为云网站,请注意账号财产安全