检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
K8s组件内存资源限制检查异常处理 检查项内容 检查K8s组件例如etcd、kube-controller-manager等组件是否资源超出限制。 解决方案 方案一:适当减少K8s资源。 方案二:扩大集群规格,详情请参见变更集群规格。 父主题: 升级前检查异常问题排查
存储基础知识 Volume(卷) 容器中的文件在磁盘上是临时存放的,这给容器中运行的较重要的应用程序带来如下两个问题: 当容器重建时,容器中的文件将会丢失。 当在一个Pod中同时运行多个容器时,容器间需要共享文件。 Kubernetes抽象出了Volume(卷)来解决以上两个问题
SIGCHLD 17 Ign 子进程结束或中断时产生该信号 SIGCONT 18 Cont 让一个暂停(stopped)的进程继续执行 SIGSTOP 19 Stop 暂停进程的执行 SIGTSTP 20 Stop 停止进程的运行 SIGTTIN 21 Stop 后台进程从终端读取输入值 SIGTTOU
合理分配容器计算资源 只要节点有足够的内存资源,那容器就可以使用超过其申请的内存,但是不允许容器使用超过其限制的资源。如果容器分配了超过限制的内存,这个容器将会被优先结束。如果容器持续使用超过限制的内存,这个容器就会被终结。如果一个结束的容器允许重启,kubelet就会重启它,但是会出现其他类型的运行错误。
修改最大文件句柄数 最大文件句柄数即打开文件数的最大限制,Linux系统中包含两个文件句柄限制:一个是系统级的,即所有用户的进程同时打开文件数的上限;一种是用户级的,即单个用户进程打开文件数的上限。但是在容器中,还有另一个文件句柄限制,即容器内部单进程最大文件句柄数。 修改节点系
数量不超过其申请的内存GiB数量,如负载的申请的内存规格为4GiB,则建议其使用的对象存储数不超过4。 表1 单个对象存储常驻进程内存消耗 测试项目 内存消耗 长稳运行 约50m 2并发写10M文件 约110m 4并发写10M文件 约220m 单写100G文件 约300m 使用场景
为工作负载配置seccomp,限制unshare系统调用,详情请参考Kuberenetes社区文档。 限制容器内进程权限,最小化容器内的进程权限,如使用非root启动进程、通过capability机制细化进程权限等。 相关链接 内核修复commit:https://git.kernel.org/pu
24及以前版本,该检查项未考虑thread-max。 内存资源不足 MemoryPressure 检查容器可分配空间(allocable)内存是否充足 周期:10秒 阈值:最大值-100MiB 最大值(Allocable):节点总内存-节点预留内存 缺点:该检测项没有从节点整体内存维度检查内存耗尽情况,只关注了容器部分(Allocable)。
256MiB,那么该Pod最终会申请0.6Core的CPU和356MiB的内存。 无 最小规格 内存:256MiB CPU:0.25Core 安全容器的CPU核数(单位为Core)与内存(单位为GiB)配比建议在1:1至1:8之间。例如CPU为0.5Core,则内存范围建议在512MiB-4GiB间。 无 容器引擎命令行
业务检查 检查项内容 集群升级完毕,由用户验证当前集群正在运行的业务是否正常。 检查步骤 业务不同,验证的方式也有所不同,建议您在升级前确认适合您业务的验证方式,并在升级前后均执行一遍。 常见的业务确认方式有: 业务界面可用 监控平台无异常告警与事件 关键应用进程无错误日志 API拨测正常等
flavor 是 表2 object 插件规格参数 custom 是 表3 object 插件自定义参数 表2 flavor 参数 是否必选 参数类型 描述 description 否 String 插件相关的描述信息 name 是 String 插件规格名称,固定为:Single-instance
富的七层负载均衡能力。而在高并发场景下,插件的CPU内存等预分配资源和网络连接数的不足会影响应用的性能。本文介绍如何通过调优NGINX Ingress控制器来支撑高负载业务。 调优过程涉及NGINX Ingress容器滚动升级,建议在业务低峰期进行调优操作。 前提条件 CCE集群中已经部署NGINX
为容器。在一个节点(宿主机)上可以运行多个容器。容器的实质是进程,但与直接在宿主机上执行的进程不同,容器进程运行于属于自己的独立的命名空间中。这些命名空间提供了一种隔离机制,使得每个容器都有自己的文件系统、网络接口、进程 ID 等,从而实现了操作系统级别的隔离。 图3 实例Pod
<mount-path>: target is busy 问题根因 出现以上问题的原因是宿主机上有其他进程正在使用该设备。 解决方法 您需要登录到Pod所在宿主机上查找正在使用该设备的进程,并终止对应的进程。 登录Pod所在节点。 执行以下命令,找到对应挂载路径下的云存储设备,其中<mount
节点上的容器占用内存过多导致节点的内存不足。CCE默认节点可用内存值为100 Mi。 问题现象 当节点的可用内存低于memory.available配置项时,则节点状态中MemoryPressure为True,同时该节点上的容器被驱逐。关于节点驱逐,可参考社区文档节点压力驱逐。 当节点内存不足时,会有以下常见错误信息:
租户是否欠费。 查看节点池配置的规格是否资源不足。 租户的ECS或内存配额是否不足。 如果一次创建节点太多,可能会出现租户的ECS容量校验不过的情况发生。 解决方案: 若租户已经欠费,请尽快续费。 若ECS节点资源不足,使用其他规格节点替代。 若ECS或内存配额不足,请扩大配额。 若ECS容量校验不通过,请重新校验。
24及以前版本,该检查项未考虑thread-max。 内存资源不足 MemoryPressure 检查容器可分配空间(allocable)内存是否充足 周期:10秒 阈值:最大值-100MiB 最大值(Allocable):节点总内存-节点预留内存 缺点:该检测项没有从节点整体内存维度检查内存耗尽情况,只关注了容器部分(Allocable)。
% GPU进程 GPU各进程算力使用率 - cce_gpu_memory_utilization_process Gauge % GPU进程 GPU各进程显存使用率 - cce_gpu_encoder_utilization_process Gauge % GPU进程 GPU各进程编码使用率
值小于1时,说明部分CPU资源在处理请求。 值等于1时,说明所有的CPU资源都在处理请求。 值大于1时,说明有部分线程在等待处理。 内存使用量 字节 不同模式的内存使用情况 内存使用率 百分比 主机内存使用率 磁盘写入速率 字节/秒 不同的磁盘的写入速率 磁盘读取速率 字节/秒 不同的磁盘的读取速率 磁盘空间使用
containerd`/limits | grep files 修改容器单进程最大文件句柄数 file-max /etc/sysctl.conf 系统整体最大文件句柄数,可视业务情况调整。 查看参数: sysctl fs.file-max 修改节点系统级最大文件句柄数 nf_conntrack_buckets