K8S内存资源配置

在 Kubernetes (k8s) 中,资源请求和限制用于管理容器的 CPU 和内存资源。配置 CPU 和内存资源时,使用特定的单位来表示资源的数量。

CPU 资源配置

  • CPU 单位:Kubernetes 中的 CPU 资源以 "核" (cores) 为单位。1 CPU 核心等于 1 vCPU/Core,通常等于一个逻辑 CPU 核心。
  • m 单位m 表示毫核 (millicores)。1 核心等于 1000 毫核。

因此,配置 cpu: 500m 表示请求或限制 0.5 个 CPU 核心。

内存资源配置

  • 内存单位 :Kubernetes 中的内存资源以字节为单位。常用的单位包括:
    • Ki:Kibibytes (1024 bytes)
    • Mi:Mebibytes (1024 Kibibytes)
    • Gi:Gibibytes (1024 Mebibytes)

因此,配置 memory: 500Mi 表示请求或限制 500 Mebibytes 的内存。

示例配置

以下是一个示例 Pod 配置文件,展示了如何配置 CPU 和内存资源:

yaml 复制代码
apiVersion: v1
kind: Pod
metadata:
  name: example-pod
spec:
  containers:
  - name: example-container
    image: nginx
    resources:
      requests:
        memory: "500Mi"
        cpu: "500m"
      limits:
        memory: "1Gi"
        cpu: "1"

解释

  • requests:表示容器启动时所需的最小资源量。调度器会根据请求的资源量来决定将 Pod 调度到哪个节点。

    • memory: "500Mi":请求 500 Mebibytes 的内存。
    • cpu: "500m":请求 0.5 个 CPU 核心。
  • limits:表示容器可以使用的最大资源量。如果容器超出这个限制,可能会被杀死或限制其资源使用。

    • memory: "1Gi":限制容器最多使用 1 Gibibyte 的内存。
    • cpu: "1":限制容器最多使用 1 个 CPU 核心。

总结

  • CPU 资源500m 表示 0.5 个 CPU 核心。
  • 内存资源500Mi 表示 500 Mebibytes 的内存。

通过配置资源请求和限制,可以更好地管理和优化 Kubernetes 集群中的资源使用,确保应用程序的稳定性和性能。

相关推荐
梦想的颜色1 小时前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理
万里侯5 小时前
GitOps 漂移检测:集群里改了配置,Git 还以为一切正常
微服务·容器·k8s
AOwhisky9 小时前
Python 学习笔记(第三期)——流程控制:条件判断与循环结构
运维·笔记·python·学习·云原生·流程控制·循环
极客先躯9 小时前
高级java每日一道面试题-2026年03月30日-实战篇[Docker]-如何监控容器的网络流量?
java·运维·docker·容器·prometheus·高级面试
Waay10 小时前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器
大E帝国子民111 小时前
Docker 部署 RocketMQ 5
docker·容器·rocketmq
SelectDB11 小时前
云数仓费钱?用 SelectDB Serverless 三步配出秒级弹性,最高降本 70%
数据库·云原生·数据分析
江湖有缘12 小时前
【保姆级教程】使用Docker Compose一键搭建Picsur私有图床服务
java·docker·容器
CHrisFC13 小时前
2026-07-15-csdn-硕晟LIMS微服务架构设计
微服务·云原生·架构
长不胖的路人甲14 小时前
微服务限流
微服务·云原生·架构