You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure中配置副本与资源的Deployment未按指定资源部署问题

问题描述

在Azure环境中创建带有3个副本的Deployment,已为每个容器配置CPU请求与限制为2核、内存请求与限制为8Gi,但实际运行时Pod始终占用4 CPU和15Gi内存。部署使用的YAML文件如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
  namespace: test-cf-ns
spec:
  replicas: 3
  selector:
    matchLabels:
      app: test-cf
  template:
    metadata:
      labels:
        app: test-cf
    spec:
      nodeSelector:
        kubernetes.io/os: linux
      containers:
      - image: adobecoldfusion/coldfusion2021:latest
        name: test-cf
        imagePullPolicy: Always
        resources:
          limits:
            cpu: 2
            memory: 8Gi
          requests:
            cpu: 2
            memory: 8Gi
排查与解决方案
  • 检查容器内部实际进程:Adobe ColdFusion镜像默认可能启动多进程,或内置JVM参数配置过高,导致资源占用超出K8s限制。可进入容器查看进程状态:

    kubectl exec -n test-cf-ns <pod-name> -- top
    

    同时查看ColdFusion的JVM配置文件/opt/coldfusion2021/bin/jvm.config,确认默认堆内存设置是否过高。

  • 验证K8s资源限制生效状态:执行以下命令查看Pod的资源配置是否正确应用:

    kubectl describe pod -n test-cf-ns <pod-name>
    

    检查输出中Resources字段的Limits和Requests是否与YAML配置一致。若配置已应用但容器仍超用,可能是Java进程未识别K8s的cgroup限制(老版本JVM默认不支持容器内存限制)。

  • 调整JVM参数适配容器限制:ColdFusion基于Java运行,需添加JVM参数让其识别容器资源限制。可在Deployment的容器中通过环境变量修改JVM参数,示例修改如下:

    containers:
    - image: adobecoldfusion/coldfusion2021:latest
      name: test-cf
      imagePullPolicy: Always
      resources:
        limits:
          cpu: 2
          memory: 8Gi
        requests:
          cpu: 2
          memory: 8Gi
      env:
      - name: JVM_ARGS
        value: "-XX:+UseContainerSupport -XX:MaxRAMPercentage=75.0 -Xmx6g"
    

    -XX:+UseContainerSupport让JVM识别容器cgroup限制,-XX:MaxRAMPercentage设置堆内存占容器内存的比例,避免内存溢出。

  • 确认实际运行的Pod数量:执行以下命令检查当前Pod副本数是否为3:

    kubectl get pods -n test-cf-ns
    

    若实际仅运行2个Pod,总占用会是4 CPU(2×2)和约16Gi内存(接近15Gi),可能是误将总占用当成单个Pod的资源使用。

  • 排查Azure节点资源负载:检查Pod所在节点的整体资源使用,确认是否有其他Pod或进程占用资源导致统计数据偏差:

    kubectl top node
    kubectl top pod -n test-cf-ns
    

    对比节点总负载与目标Pod的单独负载,排除节点其他资源占用的干扰。

内容的提问来源于stack exchange,提问作者Souvik Saha Choudhury

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 06:25:05