k8s笔记15--配置共享内存

2023-10-29

k8s笔记15--配置共享内存

介绍

容器启动后默认会有 64M 的共享内存挂载在/dev/shm 目录,用户可以向访问本地文件系统一样访问该共享内存,如果需要配置更大的内存,那么在docker中需要通过 shm-size 来获取,k8s 中需要通过挂载memory类型的emptyDir来实现。
本文主要介绍如何配置docker 和 k8s 环境的共享内存目录,并加以案例说明。

案例

docker 环境

默认为64M,如下图:
在这里插入图片描述
通 shm-size 配置共享内存大小:

docker run -d --name=test --shm-size=500m busybox:1.32 sleep infinity

在这里插入图片描述

k8s 环境

配置 emptyDir, medium 为 Memory

apiVersion: v1
kind: Pod
metadata:
  name: test-shm
spec:
  containers:
  - image: busybox:1.32
    name: test-container
    command: [sh, -c, "sleep infinity" ]
    volumeMounts:
    - mountPath: /dev/shm
      name: cache-volume
  volumes:
  - name: cache-volume
    emptyDir:
      medium: Memory
      sizeLimit: 500M

如下图,容器中正常申请到了500M的共享内存。
在这里插入图片描述
注意:

  1. k8s 中M 和Mi 的单位是不同的,加i 后是1024 的基数,不加则为1000的基数。
    若设置sizeLimit: 500Mi , 那么大小为500M, 如下图:
    在这里插入图片描述
  2. k8s 1.22 版本中才比较完整的支持挂载共享内存,即 1.22 及之后的的版本挂载的大小为实际 sizeLimit 的大小, 1.20版本中会出现挂载后实际大小和物理机一样(物理内存一半)的现象。

说明

docs.docker.com/engine/reference/commandline/run/
kubernetes.io/docs/concepts/storage/volumes#emptydir

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

k8s笔记15--配置共享内存 的相关文章

随机推荐

  • 神经辐射场 (NeRF) 概念

    神经辐射场 NeRF 概念 理论介绍 NeRF模型以其基本形式将三维场景表示为由神经网络近似的辐射场 辐射场描述了场景中每个点和每个观看方向的颜色和体积密度 这写为 F x
  • IDEA创建Servlet(Web)项目完整教程-2021

    使用2020版IDEA创建Servlet 使用2020版IDEA创建一个完整的Web项目的整个过程分为四步 第一步 创建一个普通的Java项目 1 打开IDEA 选择菜单File gt New gt Project 2 选择Java 以及自
  • 新中国成立以来的历次暴富机会

    之所以想写这个东西 是因为中国正处于一个快速转型的过程 各个社会阶层的变迁动荡很大 在这种动荡的变迁语境下 由于缺乏统一的价值观和文化继承 八仙过海各显神通 有些人抓住了这些机遇 一夜暴富 有些人含辛茹苦 至今尚不得温饱 抚今追昔 希望对未
  • Vue+elementUI<el-input> 输入框手机号校验

    1 手机号是否正确校验
  • python 机器视觉测量_用Opencv python实现精密测量

    实际上 我正在使用OpenCV和Python开发一个机器视觉项目 目标 项目的目标是以高精度测量组件的尺寸 主要硬件 巴斯勒5MP照相机 aca 2500 14gm 一个红色背光灯 100毫米x 100毫米 我的组件大小约为60毫米 实验
  • 173. 矩阵距离(多源点的最短路径问题)

    给定一个N行M列的01矩阵A A i j 与 A k l 之间的曼哈顿距离定义为 dist A i j A k l i k j l 输出一个N行M列的整数矩阵B 其中 B i j min1 x N 1 y M A x y 1dist A i
  • Windows系统解压zip文件之后乱码的问题的原因和解决方法

    我昨天用7zip压缩了一个压缩包给我同事 他那边显示的是乱码 像下面这样 具体的原因是 7zip压缩zip格式的文件的时候 对文件名默认使用的是Windows系统的默认编码 我的系统的默认编码是936 可以使用chcp命令查看 而我同事的系
  • 关于java中对象的循环引用问题

    在C 中使用过智能指针的同学们应该都清楚智能指针对C 中内存管理带来的极大便利 但是也会引入一些头疼的问题 比如智能指针带来的循环引用的问题 这个问题在之前的项目中一直没有很好的解决 最近参与到android的项目开发 对java的内存的管
  • 【Flink】Flink 启动报错 DirectoryNotEmptyException Could not close resource

    美图 1 背景 windows下开发Flink程序 启动的时候报错如下 下次再次启动的时候就不报错了 org apache flink util FlinkException Could not close resource at org
  • docker-compose部署微服务

    服务器中安装docker compose 首先就是将要部署的服务打成jar包 然后传到服务器上 并在其同级目录下创建一个Dockerfile文件 内容主体 FROM anapsix alpine java 8 server jre unli
  • 驱动程序如何支持非阻塞读写操作

    1 应用层指定非阻塞模式 fd open dev xxx O RDONLY O NONBLOCK 在open打开设备节点时 指定打开方式为非阻塞打开 O NONBLOCK 2 驱动代码感知当前操作方式 struct file unsigne
  • css3transform rotate,CSS3详解:transform [旋转rotate、扭曲skew、缩放scale和移动translate以及矩阵变形matrix]...

    CSS3详解 transform 旋转rotate 扭曲skew 缩放scale和移动translate以及矩阵变形matrix transform的属性包括 rotate skew scale translate x y 分别还有x y之
  • Vue懒加载使用全教程(收藏加关注)简单易学

    Lazyload 是 Vue 指令 使用前需要对指令进行注册 import createApp from vue import App from App vue import router from router import store
  • npm发包中一些操作备忘

    1 npm发布相关命令 发布 npm publish 发布beta版 npm publish tag beta 取消发布 npm unpublish force 2 lerna发布相关命令 发布 lerna publish 其他的的官方文档
  • centos7 L2TP/ipsec 搭建

    背景 公司需要通内网 故此部署vpn 流程 1 安装所需要的包 这次部署使用的是腾讯云机器centos7 3 centos7 使用libreswan代替了以往的openswan yum install y make gcc gmp deve
  • 使用Postman如何在接口测试前将请求的参数进行自定义处理

    1 前言 当我们使用 Postman 进行接口测试时 对于简单的不需要处理的接口 直接请求即可 但是对于需要处理的接口 如需要转码 替换值等 则就麻烦一些 一般我们都是先手动把修改好的值拷贝到请求里再进行请求接口 这也是大多数测试人员进行接
  • 传播智客J2EE学习线路图

    第一步 JavaSE部分 第1阶段 Java基础知识 gt gt 计算机基础知识 gt gt Java开发环境的搭建和应用 gt gt 进制转换 gt gt 有符号数据表示法 原码 反码 补码 gt gt Java语法基础 关键字 标识符
  • SmartIDE v0.1.16 已经发布 - 支持阿里&蚂蚁开源的国产 IDE OpenSumi

    SmartIDE v0 1 16 Build 3137 已经在2022年4月19日发布到稳定版通道 我们在这个版本中增加了阿里和蚂蚁发布的国产IDE OpenSumi的支持 以及其他一些改进 SmartIDE 从 Sprint 11 v0
  • 【MQTT学习】ESP8266 AT指令连接阿里云

    前段时间使用Mqtt fx工具测试了一下基于mqtt的阿里云连接测试 学习的目的就是将整个流程转移到都硬件设备上 为了更深度的学习 这里使用ESP8266模块和USB串口工具进行测试 在开始前需要用到几个软件工具 一个是mqttfx 一个是
  • k8s笔记15--配置共享内存

    k8s笔记15 配置共享内存 介绍 案例 docker 环境 k8s 环境 说明 介绍 容器启动后默认会有 64M 的共享内存挂载在 dev shm 目录 用户可以向访问本地文件系统一样访问该共享内存 如果需要配置更大的内存 那么在dock