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

求Deployment与HPA YAML配置文件的全部资源相关参数清单

Deployment YAML 资源相关核心参数

容器资源请求与限制(CPU/内存核心配置)

这些参数定义容器的CPU和内存资源配额,是调度和资源隔离的关键:

  • resources.requests.cpu:容器启动时向集群申请的CPU资源,格式支持100m(毫核,即0.1核)、1(1核)等
  • resources.requests.memory:容器启动时向集群申请的内存资源,格式支持256Mi、1Gi等
  • resources.limits.cpu:容器允许使用的最大CPU资源,超出该值会被CPU限流(throttled)
  • resources.limits.memory:容器允许使用的最大内存资源,超出该值会触发OOM Kill(容器被终止)

完整Deployment示例(含资源配置)

apiVersion: apps/v1
kind: Deployment
metadata:
  name: sample-app
  labels:
    app: sample-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: sample-app
  template:
    metadata:
      labels:
        app: sample-app
    spec:
      containers:
      - name: sample-container
        image: nginx:alpine
        resources:
          requests:
            cpu: "100m"
            memory: "256Mi"
          limits:
            cpu: "500m"
            memory: "1Gi"
        ports:
        - containerPort: 80

Horizontal Pod Autoscaler (HPA) YAML 全量核心参数

HPA v2版本(autoscaling/v2)支持更丰富的指标配置,以下是CPU/内存相关及全量核心参数:

基础伸缩配置

  • spec.scaleTargetRef:必填,指定HPA关联的目标资源(如Deployment),需包含apiVersion、kind、name
  • spec.minReplicas:最小Pod副本数,默认值为1
  • spec.maxReplicas:必填,最大Pod副本数,限制HPA扩容上限
  • spec.targetCPUUtilizationPercentage:旧版CPU使用率阈值(已废弃),推荐使用metrics字段配置

CPU/内存伸缩指标(核心配置)

通过spec.metrics定义伸缩触发条件,支持使用率和绝对值两种类型:

CPU使用率触发

- type: Resource
  resource:
    name: cpu
    target:
      type: Utilization
      averageUtilization: 70 # 平均CPU使用率阈值,如70%

内存使用率触发

- type: Resource
  resource:
    name: memory
    target:
      type: Utilization
      averageUtilization: 80 # 平均内存使用率阈值,如80%

内存绝对值触发

- type: Resource
  resource:
    name: memory
    target:
      type: AverageValue
      averageValue: 512Mi # 每个Pod平均内存使用量阈值

高级伸缩行为控制

  • spec.behavior:自定义扩容/缩容的速率和稳定策略,避免频繁伸缩
    • scaleUp:扩容规则
      • stabilizationWindowSeconds:扩容前等待的稳定时间(秒),确保指标稳定后再扩容
      • policies:扩容策略集合,可定义单次扩容的Pod数量和时间周期
        policies:
        - type: Pods
          value: 3 # 单次最多扩容3个Pod
          periodSeconds: 60 # 每60秒检查一次
        
    • scaleDown:缩容规则
      • stabilizationWindowSeconds:缩容前等待的稳定时间(秒),避免过早缩容
      • selectPolicy:策略选择方式,如Max取最宽松的缩容规则

完整HPA示例(含CPU/内存指标)

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: sample-app-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: sample-app
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 70
  - type: Resource
    resource:
      name: memory
      target:
        type: Utilization
        averageUtilization: 80
  behavior:
    scaleUp:
      stabilizationWindowSeconds: 30
      policies:
      - type: Pods
        value: 3
        periodSeconds: 60
    scaleDown:
      stabilizationWindowSeconds: 600
      policies:
      - type: Pods
        value: 1
        periodSeconds: 60

内容的提问来源于stack exchange,提问作者Hrishikesh Shukla

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 22:28:43