• 沒有找到結果。

使用场景

在某些场景下,您可能需要对大量的边缘节点部署相同的应用,IEF提供批量应用部署 功能。

说明

● 仅IEF铂金版支持批量应用部署。

● 节点架构必须全部是同一架构的节点,比如全部为x86或arm。

● 容器镜像的架构必须与节点架构一致,比如节点为x86,那容器镜像的架构也必须是x86。

操作步骤

步骤1 登录IEF管理控制台,切换到铂金版实例。

步骤2 选择左侧导航栏的“批量管理 > 应用部署”,单击页面右上角的“批量应用部署”。

步骤3 配置应用部署作业基本信息。

10-4 创建批量应用部署作业

● 名称:创建的应用部署作业名称。

● 描述:应用部署作业描述。

● 部署对象:需要部署容器应用的边缘节点。

单击“选择边缘节点”,勾选需要选择的边缘节点。

您还可以单击页面右上角的“标签搜索”,输入标签名和标签值,单击“搜 索”,筛选出指定标签的边缘节点。然后勾选边缘节点,单击“确定”。

10-5 选择标签

● 重启策略

– 总是重启:当应用容器退出时,无论是正常退出还是异常退出,系统都会重 新拉起应用容器。

– 失败时重启:当应用容器异常退出时,系统会重新拉起应用容器,正常退出 时,则不再拉起应用容器。

– 不重启:当应用容器退出时,无论是正常退出还是异常退出,系统都不再重 新拉起应用容器。

Host PID:容器与宿主机共享PID命名空间,启用此选项要求边缘节点软件版本 大于等于2.8.0。

步骤4 单击“下一步”,配置容器信息。

10-6 容器信息

● 名称前缀:应用部署的名称前缀。IEF会根据前缀生成完整的名称。

● 实例数量:应用部署的实例数量。

● 配置方式

– 自定义配置:即从零开始配置容器应用,具体请参见步骤5。

– 应用模板配置:选择一个已经定义好的应用模板,可以在模板的基础上进行 修改,使用应用模板能够帮助您省去重复的工作量。模板的定义与步骤5需要 的配置相同,创建模板的方法请参见应用模板。

步骤5 配置容器。

选择需要部署的镜像,单击“使用镜像”。

● 我的镜像:展示了您在容器镜像服务中创建的所有镜像。

● 他人共享:展示了其他用户共享的镜像,共享镜像是在SWR中操作的,具体请参 见共享私有镜像。

选择镜像后,您可以配置容器的规格。

● 镜像版本:请选择需要部署的镜像版本。

须知

在生产环境中部署容器时,应避免使用latest版本。因为这会导致难以确定正在运 行的镜像版本,并且难以正确回滚。

● 容器规格:根据需要选择容器CPU、内存、AI加速卡的配额,注意一个容器应用 只能使用一种昇腾芯片。

10-7 容器配置

您还可以对容器进行如下高级配置。

● 运行命令

容器镜像拥有存储镜像信息的相关元数据,如果不设置生命周期命令和参数,容 器运行时会运行镜像制作时提供的默认的命令和参数,Dockerfile这两个字段为

“Entrypoint”和“CMD”。

如果在创建容器应用时填写了容器的运行命令和参数,将会覆盖镜像构建时的默 认命令"Entrypoint"、"CMD",规则如下:

10-1 容器如何执行命令和参数

镜像Entrypoint 镜像CMD 容器运行命令 容器运行参数 最终执行

[touch] [/root/test] 未设置 未设置 [touch /root/

test]

[touch] [/root/test] [mkdir] 未设置 [mkdir]

[touch] [/root/test] 未设置 [/opt/test] [touch /opt/

test]

[touch] [/root/test] [mkdir] [/opt/test] [mkdir /opt/

test]

10-8 运行命令

– 运行命令

输入可执行的命令,例如/run/start。

若可执行命令有多个,多个命令之间用空格进行分隔。若命令本身带空格,

则需要加引号("")。

说明

多命令时,运行命令建议用/bin/sh或其他shell,其他全部命令作为参数来传入。

– 运行参数

输入控制容器运行命令的参数,例如--port=8080。

若参数有多个,多个参数以换行分隔。

● 选项配置

可以通过开启“特权选项”,使容器拥有root权限,可以访问主机上的设备(如 GPU、FPGA)。

● 环境变量配置

容器运行环境中设定的变量。可以在应用部署后修改,为应用提供极大的灵活 性。当前支持手动添加、密钥导入、配置项导入和变量引用方式。

– 手动添加支持自定义变量名称和变量值。

– 使用密钥导入,环境变量名称可自定义输入,环境变量值支持引用密钥的属 性值,密钥创建方法请参见密钥。

– 使用配置项导入,环境变量名称可自定义输入,环境变量值支持引用配置项 的属性值,配置项创建方法请参见配置项。

– 变量引用支持引用“hostIP”,即边缘节点的IP地址。

– 当使用Atlas 500等NPU时,请勿挂载在“/var/dlog”目录,因为这个目录被 Atlas的NPU-Plugin容器挂载占用。

步骤6 单击“下一步”,进行访问配置。

容器访问支持主机网络和端口映射两种方式。

● 端口映射

容器网络虚拟化隔离,容器拥有单独的虚拟网络,容器与外部通信需要与主机做 端口映射。配置端口映射后,流向主机端口的流量会映射到对应的容器端口。例 如容器端口80与主机端口8080映射,那主机8080端口的流量会流向容器的80端 口。

端口映射可以选择主机网卡,请注意端口映射不支持选择IPv6地址类型的网卡。

10-10 端口映射

● 主机网络

使用宿主机(边缘节点)的网络,即容器与主机间不做网络隔离,使用同一个 IP。

步骤7 单击“下一步”,确认容器应用的规格,确认无误后单击“创建”。

----结束

状态说明

批量应用部署作业有以下八种状态。

● 排队中:作业等待执行

● 执行中:作业处于执行状态

● 成功:全部任务执行成功

● 部分成功:部分任务执行成功

● 失败:全部任务执行失败

● 停止中:作业处于停止中

● 已停止:作业已停止

● 更新超时:作业排队和执行时间超过10分钟仍未完成 批量作业执行过程中可以停止,停止后可以继续。

如果批量作业执行失败、部分成功或更新超时,可以重试执行作业,将未执行成功的 作业再次执行一遍。