文档
注册

Ascend Docker Runtime组件参考信息说明

Ascend Docker Runtime组件信息分为边缘应用容器日志输出指导、Ascend Docker Runtime默认挂载内容和Ascend Docker Runtime命令说明。可根据实际情况选择对应信息参考,示例如下:

背景

由于边缘设备存储空间有限,并且很多边缘设备采用EMMC等flash作为存储介质,这些介质有使用寿命的限制。为避免存储空间很快被写满从而影响业务或存储介质很快达到使用寿命,本文描述边缘容器日志的输出建议,指导边缘容器以合适的方式输出日志。

简介

当前Atlas硬件上运行的边缘应用容器一般通过K8s兼容的边缘管理平台来管理,如华为云IEF、或基于kubeedge搭建的第三方边缘平台等。在此类平台下,容器日志的输出方式主要分为以下三种:

  • 容器控制台标准输出(STDOUT和STDERR)方式
  • 挂载到主机目录方式
  • 容器日志直接输出到日志服务

如果系统中有日志服务器,建议直接在容器中将日志输出到日志服务中;如果没有,建议采用挂载到主机目录的方式输出日志,减少日志对硬件和其他业务影响的风险。

容器控制台标准输出方式

在这种方式下,应用将容器的日志输出到标准输出。缺省情况下,Docker引擎捕捉所有容器的标准输出,使用JSON格式写入到文件里,该文件会保存到主机的“/var/lib/docker/containers/containerid”目录下,如图1所示。

图1 containerid-json.log文件所在路径示例

如果边缘管理平台不支持该目录下日志文件的绕接或日志绕接配置错误,会导致/var/lib/docker被占满,从而影响新容器的部署及其他容器业务的正常运行。故不建议采用该方式。

挂载到主机目录方式

该方式下边缘平台日志收集的方式如图2所示。

图2 方案架构

应用将容器日志挂载到边缘主机上。边缘管理平台提供主机上日志收集能力,并将主机文件日志进行绕接。

  • 应用可以将容器日志挂载到主机上的非关键大容量目录,建议不要挂载到EMMC等存储介质上,避免影响硬件整体寿命。
  • 边缘容器管理平台一般会支持该能力,建议使用该方案,以减少对系统目录var/lib/docker的影响。基于安全性考虑,该配置需要符合所在组织的安全要求。

容器日志直接输出到日志服务

图3所示,应用环境里如果有日志服务器,可以将日志直接送到外部的日志服务器,这样日志不用在边缘环境里落盘,最大限度减少对硬件和其他业务的影响。

图3 方案架构

Ascend Docker Runtime默认挂载内容

Ascend Docker Runtime会根据实际环境情况默认以只读方式挂载以下目录和文件到容器中。

表1 默认挂载目录和文件(Atlas 200 AI加速模块 RC场景)

路径

说明

/dev/davinciX

NPU设备,X是ID号。例如:davinci0。

/dev/davinci_manager

管理设备。

/usr/local/Ascend/driver/tools

目录,驱动提供的工具包。

/usr/local/Ascend/driver/lib64

目录,驱动提供的用户态库。

/usr/local/sbin/npu-smi

文件,NPU-SMI工具。

/etc/hdcBasic.cfg

文件,hdc基础文件。

/etc/sys_version.conf

文件,驱动的版本信息。

表2 默认挂载目录和文件( Atlas 200I SoC A1核心板)

路径

说明

/dev/davinciX

NPU设备,X是ID号。例如:davinci0。

/dev/davinci_manager

davinci相关的设备管理的设备。

/usr/local/bin/npu-smi

文件,NPU-SMI工具。

/etc/hdcBasic.cfg

文件,hdc基础文件。

/etc/sys_version.conf

文件,驱动的版本信息。

表3 默认挂载目录和文件(Atlas 500 智能小站(型号 3000)

路径

说明

/dev/davinciX

NPU设备,X是ID号。例如:davinci0。

/dev/davinci_manager

管理设备。

/dev/hisi_hdc

管理设备。

/dev/devmm_svm

管理设备。

/home/data/miniD/driver/lib64

目录,驱动提供的用户态库。

/usr/local/lib/libdcmi.so

文件,DCMI动态库。

/usr/local/bin/npu-smi

文件,NPU-SMI工具。

表4 默认挂载目录和文件(其他设备)

路径

说明

/dev/davinciX

NPU设备,X是ID号。例如:davinci0。

/dev/davinci_manager

管理设备。

/dev/hisi_hdc

管理设备。

/dev/devmm_svm

管理设备。

/usr/local/Ascend/driver/lib64

目录,驱动提供的用户态库。

/usr/local/Ascend/driver/include

目录,驱动提供的头文件。

/usr/local/dcmi

目录,DCMI头文件和库。

/usr/local/bin/npu-smi

文件,NPU-SMI工具。

Ascend Docker Runtime命令说明

Ascend Docker Runtime安装后,会在安装目录生成可执行工具,涉及到的指令为内部命令,用户请勿直接使用,相关指令如表 命令说明所示。

表5 命令说明

工具名

短指令

长指令

ascend-docker-cli

d

devices

p

pid

r

rootfs

o

options

f

mount-file

i

mount-dir

ascend-docker-plugin-install-helper

-

add

-

rm

h

-

ascend-docker-runtime

-

create

b

bundle

ascend-docker-destroy

-

-

  • 因为Ascend Docker Runtime会将输入参数直接传递至runc或者docker-runc,所以runc/docker-runc的相关参数也会被Ascend Docker Runtime接受,用户请自行参考所在环境的runc/docker-runc的命令行选项使用相关参数。
  • ascend-docker-hook工具会忽略参数运行,运行时会接受标准输入。
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词