检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
镜像、容器、工作负载的关系是什么? 镜像:容器镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。 容器:镜像(Image)和容器(
定位思路 当工作负载状态异常时,建议先查看事件。 在CCI控制台中,单击左侧导航栏的“工作负载”,单击异常工作负载名称,进入详情页面,在Pod列表中,单击异常实例左边的,显示该实例的详情,单击事件页签。 图1 查看事件 父主题: 工作负载异常
修改/dev/shm容量大小 应用场景 /dev/shm由tmpfs文件系统构成,tmpfs是Linux/Unix系统上的一种基于内存的文件系统,故读写效率非常高。 目前有用户希望通过/dev/shm实现进程间数据交互或通过/dev/shm实现临时数据存储,此时CCI场景/dev
使用Tensorflow训练神经网络 应用场景 当前主流的大数据、AI训练和推理等应用(如Tensorflow、Caffe)均采用容器化方式运行,并需要大量GPU、高性能网络和存储等硬件加速能力,并且都是任务型计算,需要快速申请大量资源,计算任务完成后快速释放。本文将演示在云容器
容器生命周期 设置容器生命周期 云容器实例基于Kubernetes,提供了容器生命周期钩子,在容器的生命周期的特定阶段执行调用,比如容器在停止前希望执行某项操作,就可以注册相应的钩子函数。目前提供的生命周期钩子函数如下所示。 启动后处理(PostStart):容器启动后触发。 停
容器实例被驱逐 如果节点超负荷运行,无法承受的话,系统会自动清理一些任务。 建议根据实际使用量来申请资源。 父主题: 容器工作负载类
如何查看资源配额? 云容器实例对单个用户的资源数量和容量限定了配额,配额的详细信息请参见关于配额。 登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面右上角,选择“资源 > 我的配额”。 系统进入“服务配额”页面。 图1 我的配额 您可以在“服务配额”页面,查看各项资源的总配额及使用情况。
使用Docker run运行容器 Docker是一个开源的应用容器引擎。容器引擎是Kubernetes(k8s)最重要的组件之一,负责管理镜像和容器的生命周期。使用Docker,无需配置运行环境,镜像中会包含一整套环境,同时进程间是隔离的,不会相互影响。 Docker容器都是由d
定时任务(CronJob) 定时任务(CronJob)是基于时间控制的任务(Job),类似于Linux系统的crontab,在指定的时间周期运行指定的任务。 创建定时任务 登录云容器实例管理控制台,左侧导航栏中选择“工作负载 > 定时任务(CronJob)”,在右侧页面单击“镜像创建”。
使用Job和CronJob创建任务负载 任务负载是负责批量处理短暂的一次性任务(short lived one-off tasks),即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束。 短时任务(Job):是Kubernetes用来控制批处理型任务的资源对象。批
如何设置应用的探针? 云容器实例基于Kubernetes,提供了应用存活探针和应用业务探针,您可以在创建工作负载的时候设置,具体请参见健康检查。 父主题: 容器工作负载类
弹性伸缩策略如何配置? 云容器实例支持告警、定时、周期三种弹性伸缩策略。具体配置方法请参见伸缩负载。 父主题: 容器工作负载类
事件一:重新拉取镜像失败 工作负载详情中,如果事件中提示“重新拉取镜像失败”,请参照如下方式来排查原因。 排查项一:kubectl创建工作负载时未指定imagePullSecret 以创建一个名为nginx的deployment为例,请排查yaml文件中是否存在imagePull
Dockerfile参数在云容器实例中如何使用 应用场景 如果您了解容器引擎的使用,明白定制镜像时,一般使用Dockerfile来完成。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建镜像的其中一层,因此每一条指令的内容,就是描述该层应该如何构建。 本章
事件二:重新启动容器失败 工作负载详情中,如果事件中提示“重新启动容器失败”,请按照如下方式来排查原因。 排查项一:查看端口是否冲突 按照使用kubectl配置好kubectl。 在页面上单击失败的工作负载,进入负载详情界面,查看Pod列表,获取Pod名字。 查看失败的容器的名称。
在容器中通过环境变量获取Pod基础信息 客户如果需要在容器内获取POD的基础信息,可以通过kubernetes中的Downward API注入环境变量的方式实现。本操作实践展示如何在Deployment和POD的定义中增加环境变量配置,获取Pod的namespace、name、uid、IP、Region和AZ。
为什么业务运行性能不达预期? 由于CCI服务底层资源是多租户共享的,为了保障用户业务稳定,CCI服务底层对于磁盘IO等是有流控限制的。体现在容器内,主要影响是负载对根目录rootfs的读写、负载标准日志输出数据量都会受到一定限制。如果您的业务运行性能不达预期,可以从以下几个可能的原因进行排查:
调用接口删除Deployment后怎么还能查看到Pod? Deployment接口提供级联删除Pod的选项propagationPolicy,可以设置propagationPolicy的值为Orphan、Foreground和Background,具体请参见删除Deployment。
为什么exec进入容器后执行GPU相关的操作报错? 问题现象: exec进入容器后执行GPU相关的操作(例如nvidia-smi、使用tensorflow运行GPU训练任务等)报错“cannot open shared object file: No such file or directory”。
Intel oneAPI Toolkit运行VASP任务,为什么概率性运行失败? Intel oneAPI Toolkit(Intel并行计算平台)运行的VASP(用于电子结构计算和量子力学-分子动力学模拟)任务对CPU硬件版本有深度依赖,在小规格Pod场景下概率性运行失败,建议