检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
基于ELB监控指标的弹性伸缩实践 应用现状 在使用工作负载弹性伸缩时,Kubernetes默认提供基于CPU/内存等资源使用率指标进行伸缩。但是在流量突发的场景下,基于CPU/内存使用率资源使用率数据会滞后于ELB流量指标,无法及时反映应用实际需求。因此,对于某些需要快速弹性扩缩容的业
ress-contoller的pod一直处于pending状态。 解决方案 nginx限制的内存资源不足导致无法启动,取消限制后正常。 场景模拟 新集群3个节点,规格 6cpu,12G内存,每个节点2U4G。 单击nginx-ingress插件安装,选择规格2核2G。 nginx-ingress
name: mysql spec: replicas: 1 selector: matchLabels: name: mysql template: metadata: labels: name: mysql
limitsMem 是 String 内存大小限制,单位:Mi name 是 String 插件名称,固定为:customedhpa-controller requestsCpu 是 String 申请的CPU大小,单位:m requestsMem 是 String 申请的内存大小,单位:Mi 表5
务。请前往监控中心,查询节点CPU使用状况,合理规划节点资源,或者对节点进行扩容。 节点24小时内内存使用率最大值是否超过80% 是 节点内存过高,存在节点OOM风险,影响节点上服务的可用性。请前往监控中心,查看节点内存使用状况,合理规划节点资源,或者对节点进行扩容。 节点磁盘使用率是否超过80%
导致当前集群的CPU和内存使用量计算存在偏差,使扩容时节点池的资源总数可以部分超出CPU/内存的扩容上限。 节点池缩容时,如果缩容已变更规格的节点,将导致实际缩容的CPU/内存数(4U8G)大于预期缩容的CPU/内存数(2U4G),使得被缩容的CPU/内存资源过多。 解决方案 不
apiVersion: v1 kind: PersistentVolume metadata: name: mysql-pv labels: app: mysql spec: accessModes: - ReadWriteOnce capacity:
用情况,以便做出合理的调度策略。 下面是一个Nginx Pod设置Request和Limit的例子,Request声明这个Pod会占用0.5核CPU、128MB的内存,并且在实际运行中允许Pod使用超过Request值的资源,但是不能超过1核CPU和256MB内存的Limit值。
Volume字段下即为该Pod挂载的所有持久卷名称。 对Wordpress和MySQL的Pod添加annotation,pod名称分别为wordpress-758fbf6fc7-s7fsr和mysql-5ffdfbc498-c45lh。由于Pod在默认命名空间default下,-n
13s 数据库更新适配 本例中数据库为本地MySQL数据库,迁移后无需重新配置。若您通过数据复制服务DRS将本地数据库迁移至云数据库RDS,则在迁移后需重新配置数据库的访问,请您根据实际情况进行配置。 若云数据库RDS实例与CCE集群处于同一VPC下,则可通过内网地址访
当节点cpu和内存负载过高时,会导致节点网络时延过高,或系统OOM,最终展示为不可用。 解决方案: 建议迁移业务,减少节点中的工作负载数量,并对工作负载设置资源上限,降低节点CPU或内存等资源负载。 将集群中对应的cce节点进行数据清理。 限制每个容器的CPU和内存限制配额值。 对集群进行节点扩容。
个IP地址,会占用容器网络的IP。 主机网络:Pod直接使用宿主机的网络,即在Pod中配置hostNetwork: true参数,详情请参见在Pod中配置主机网络(hostNetwork)。配置完成后的Pod会占用宿主机的端口,Pod的IP就是宿主机的IP,不会占用容器网络的IP
问题原因 由于GPU/NPU节点同样提供CPU、内存资源,在一般情况下,即使工作负载未声明使用GPU/NPU资源,调度器也会根据打分机制将工作负载调度到GPU/NPU节点运行,于是可能会出现GPU/NPU节点的CPU、内存资源被普通工作负载占用的情况,导致GPU/NPU资源闲置。 解决方案
值小于1时,说明部分CPU资源在处理请求。 值等于1时,说明所有的CPU资源都在处理请求。 值大于1时,说明有部分线程在等待处理。 内存使用量 字节 不同模式的内存使用情况 内存使用率 百分比 主机内存使用率 磁盘写入速率 字节/秒 不同的磁盘的写入速率 磁盘读取速率 字节/秒 不同的磁盘的读取速率 磁盘空间使用
CPU核数:扩容时,集群下所有节点CPU核数之和的上限,超过该值时将不再扩容。默认不限。 内存(GiB):扩容时,集群下所有节点内存之和的上限,超过该值时将不再扩容。默认不限。 统计节点、CPU和内存总数时,包含自定义节点池的不可用节点,但是不包含默认节点池中的不可用节点。 节点池扩容优先级
的资源集合,如文件系统、网络、进程和用户等。而Cgroup作为Linux内核的资源管理机制,能够限制进程对CPU、内存、磁盘和网络等资源的使用,防止单一进程过度占用资源,影响系统的整体性能。 尽管Namespace和Cgroup从资源层面上实现了容器与宿主机的环境独立性,使得宿主
Overhead 内存:100MiB CPU:0.1Core Pod Overhead为安全容器本身资源占用。比如Pod申请的limits.cpu = 0.5Core和limits.memory = 256MiB,那么该Pod最终会申请0.6Core的CPU和356MiB的内存。 无 最小规格
求的PRS为30万,可将CPU/内存的requests和limits均设置为16 Core/20 GiB。 设置实例数大于等于2。 关闭插件的指标采集。 如果不需要获取Metrics信息,推荐关闭指标采集,关闭后可节省Nginx容器的CPU及内存消耗。 通过以下方式对Nginx全局配置进行调优:
/etc/systemd/journald.conf 节点日志缓存内存占用量上限,若不配置长时间运行会占用较大内存。 查看参数: cat /etc/systemd/journald.conf | grep RuntimeMaxUse 修改节点日志缓存内存占用量上限RuntimeMaxUse Openfiles
节点系统参数优化 可优化的节点系统参数列表 修改节点日志缓存内存占用量上限RuntimeMaxUse 修改最大文件句柄数 修改节点内核参数 修改节点进程 ID数量上限kernel.pid_max 父主题: 节点运维