Workspace
  • Introduction
  • Algorithm
    • 二叉树
    • 排序算法
  • Basic Knowledge
    • CAP定理
    • CAS-SSO-单点登陆
    • 单向认证-双向认证
  • CICD
  • Cloud Native
  • Docker
    • Docker特性
    • Docker资源隔离
  • Golang
    • Standard Library
      • Archive
        • Builtin
        • Zip
    • Golang-container包
    • Golang-fallthrough关键字
    • Golang For Slect
    • Golang-Goroutine泄露
    • Golang Interface
    • Golang-json.Unmarshal
    • Golang Label
    • Golang Map String Struct
    • Golang Map To Struct
    • Golang Override Package Function
    • Golang-Slice删除元素
    • Golang Switch
    • Golang-sync.Cond
    • Golang-sync.Map
    • Golang-sync.once
    • Golang-type关键字
    • Golang-代码生成
    • golang-并发数控制
    • Golang-并发退出
    • Golang-插件系统
    • Golang-继承
    • Golang之channel
    • Golang之continue
    • Golang之make与new和nil
    • Golang之map
    • Golang之reflect
    • Golang之类型判断
    • Golang代码质量检测
    • Golang变量避坑
    • Golang字符串遍历
    • golang并发控制代码示例
    • Golang性能优化
    • Golang死锁
    • goroutine-协程-线程-进程
    • go值传递
    • go内存逃逸分析
    • go并发MGP模式
    • go并发控制
    • 垃圾回收-三色法
  • Istio
    • 服务网格
  • Jenkins
    • Jenkin On K 8 S
    • Jenkins Mac
  • Kubernetes
    • Deployment
    • k8s容器内查看-cpu-memory分配情况
    • kube-proxy原理
    • Kubernetes Informers
    • Kubernetes扩展点
    • Kubernetes部署策略
    • Pod Non Root
    • Pod驱逐
    • PV PVC Storage Class
    • Security Context
    • 优雅热更新
  • Python
    • Python-vs-Golang协程区别
  • Serviceless
  • Shell
    • Shell小技巧
  • VPN
    • OC Serv
  • Redis
Powered by GitBook
On this page
  • Cgroup CPU 资源隔离介绍
  • Docker 中的 CPU 限制参数
  • 参考

Was this helpful?

  1. Docker

Docker资源隔离

PreviousDocker特性NextGolang

Last updated 5 years ago

Was this helpful?

Cgroup CPU 资源隔离介绍

cgroup 中有三种 cpu 资源的限制方式

  • cpuset 是以分配核心的方式进行隔离,资源分配的最小粒度是核心,隔离后运算的相互影响最低。

  • cpuquota 比 cpuset 更细粒度的资源分配方式,并且保证 cgroup 使用 cpu 比率的上限,相当于 cpu 资源的硬限制。

  • cpushares 是按权重比率分配 cpu 时间资源的方式。当 cpu 空闲的时候,某个要占用 cpu 的 cgroup 可以完全占用 cpu 时间,充分利用资源。而当其它的 cgroup 需要占用资源的时候,每个 cgroup都能保证基最低的占用时间比率,达到资源隔离的效果。

Docker 中的 CPU 限制参数

  • --cpu-shares CPU shares (relative weight)

  • --cpu-period Limit CPU CFS (Completely Fair Scheduler) period

  • --cpu-quota Limit CPU CFS (Completely Fair Scheduler) quota

  • --cpuset-cpus CPUs in which to allow execution (0-3, 0,1)

--cpu-shares 对应用于 cgroup;

--cpu-period 和 --cpu-quota 是 docker 1.7 版本引入的 两个参数控制容器可以分配到的CPU时钟周期;

--cpu-set-cpus 指定窗口使用的核心;

参考

Cgroup的CPU资源隔离介绍&docker cpu限制