K8S增加限制后的启动时间验证


背景

前段时间看了下JVM载linux上面的启动时间, 进行过一些验证.
最近想着能够验证一下K8S上面的启动相关的信息
所以就整理了一下.
虽然没有特别好的结论,
但是还是发现自己对JVM的启动和参数还是了解的不够深入.

自己的几个启动参数

1. "-XX:MaxRAMPercentage=80.0","-XX:MinRAMPercentage=50.0"
2. "-XX:-UseAdaptiveSizePolicy","-XX:MaxRAMPercentage=80.0","-XX:MinRAMPercentage=50.0"
3. "-XX:-UseAdaptiveSizePolicy","-XX:InitialRAMPercentage=75.0","-XX:MaxRAMPercentage=75.0","-XX:MinRAMPercentage=75.0"
4. "-XX:InitialRAMPercentage=75.0","-XX:MaxRAMPercentage=75.0","-XX:MinRAMPercentage=75.0","-XX:SurvivorRatio=3","-XX:NewRatio=1",

启动脚本挨个说明

启动顺序的排序为:
4 3 1 2
详细信息为:
4. 最快, 怀疑启动过程中, 需要消耗最多的young区域. old区域可以不用非常大. 所以比较适合启动.
3. 次之, 与4的启动速度相差无几, 所以感觉方式3 应该是比较好的启动方式.
1. 再次之, 慢大约 5%左右, 其实差异性不是很大, 但是堆区大小有一些差异.
2. 最慢, 堆没有设置初始堆大小, 最大最小堆不一样, 然后还关闭了 自适应堆区设置, 导致启动速度很慢, 90min都没有启动起来.
堆区显示也只有1G左右, 所以几乎不可用.

关于堆区的显示问题

进入容器后可以使用jmap -heap 1 的方式进行查看.
New Generation (Eden + 1 Survivor Space):
capacity = 9709027328 (9259.25MB)
Eden Space:
capacity = 7281836032 (6944.5MB)
From Space:
capacity = 2427191296 (2314.75MB)
To Space:
capacity = 2427191296 (2314.75MB)
tenured generation:
capacity = 12136218624 (11574.0MB) 注意这个设置的是 :
"-XX:SurvivorRatio=3","-XX:NewRatio=1"

关于开启UseAdaptiveSizePolicy的情况

内存启动过程中 堆区变化是很大的
一开始:
Heap Configuration:
MinHeapFreeRatio = 0
MaxHeapFreeRatio = 100
MaxHeapSize = 24052236288 (22938.0MB)
NewSize = 156237824 (149.0MB)
MaxNewSize = 8017412096 (7646.0MB)
OldSize = 313524224 (299.0MB)
NewRatio = 2
SurvivorRatio = 8
MetaspaceSize = 21807104 (20.796875MB)
CompressedClassSpaceSize = 1073741824 (1024.0MB)
MaxMetaspaceSize = 17592186044415 MB
G1HeapRegionSize = 0 (0.0MB) 三分钟后
Heap Configuration:
MinHeapFreeRatio = 0
MaxHeapFreeRatio = 100
MaxHeapSize = 24052236288 (22938.0MB)
NewSize = 156237824 (149.0MB)
MaxNewSize = 8017412096 (7646.0MB)
OldSize = 313524224 (299.0MB)
NewRatio = 2
SurvivorRatio = 8
MetaspaceSize = 21807104 (20.796875MB)
CompressedClassSpaceSize = 1073741824 (1024.0MB)
MaxMetaspaceSize = 17592186044415 MB
G1HeapRegionSize = 0 (0.0MB)

关于资源限制

        resources:
limits:
cpu: 6
memory: 28Gi
requests:
cpu: 6
memory: 28Gi

K8S增加限制后的启动时间验证的更多相关文章

  1. 微服务探索之路04篇k8s增加子节点,metrics资源监控,ingress-nginx域名配置及https配置

    1 k8s增加子节点 1.1 子节点服务器安装docker,使用脚本自动安装 curl -fsSL https://get.docker.com | bash -s docker --mirror A ...

  2. SVN增加文件后,文件无法自动包括在项目中的原因

    当增加文件后,不仅要提交所增加的文件,而且要把项目文件一并提交.不然就会出现其他人虽然能够获取新文件,但是文件不能自动加载到项目中的情况.

  3. rancher导入k8s集群后添加监控无数据

    1.日志报错 rancher导入k8s集群后添加监控无数据,rancher日志报错: k8s.io/kube-state-metrics/pkg/collectors/builder.go:: Fai ...

  4. SpringBoot项目中使用swagger2暴露resftul接口增加JWT来进行安全性验证

    首先推荐两篇文章: 关于保护RestAPI的一些介绍: http://www.jianshu.com/p/6307c89fe3fa token与session的一些区别漫谈: http://www.j ...

  5. Easyui 关闭弹出框后还显示验证提示信息

    今天下午做form表单,然后可以保存,可以关闭.可是关闭的时候老是会在屏幕左上角显示验证提示框,很是着急. 如图: 可能是easyui自己框架的问题,或许是因为网上有的人,自己代码写得有问题,没有调试 ...

  6. hibernate中增加annotation @后不提示信息【转】

    此文转自:http://blog.knowsky.com/252047.htm 所需要用到的3个jar包分别是: hibernate-annotations.jar ejb3-persistence. ...

  7. Tcl与Design Compiler (九)——综合后的形式验证

    本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 这里来讲一下forma ...

  8. js实现非模态窗口增加数据后刷新父窗口数据

    父窗口是由两个部分组成,一个html的table,一部分是extjs的gird. 点击grid面板[增加]按钮将会弹出非模态窗口进行新数据的编辑页面 下面是按钮的触发函数代码: var a = win ...

  9. Dynamics Crm 2011 Or 2013 IFD 部署一段时间后,CA验证问题

    以下错误描述摘自博客:http://blog.csdn.net/qzw4549689/article/details/14451257 IFD部署一段时间后,大概一年,突然出现从IFD登录页面登录后, ...

  10. centos7.3 kubernetes/k8s 1.10 离线安装 --已验证

    本文介绍在centos7.3使用kubeadm快速离线安装kubernetes 1.10. 采用单master,单node(可以多node),占用资源较少,方便在笔记本或学习环境快速部署,不适用于生产 ...

随机推荐

  1. 一键打包,随时运行,Python3项目虚拟环境一键整合包的制作(Venv)

    之前我们介绍了如何使用嵌入式 Python3 环境给项目制作一键整合包,在使用嵌入式 Python 环境时,通常是作为另一个应用程序的一部分,而Python3虚拟环境是为了在开发过程中隔离项目所需的 ...

  2. 现代 CSS 解决方案:文字颜色自动适配背景色!

    在 23 年的 CSS 新特性中,有一个非常重要的功能更新 -- 相对颜色. 简单而言,相对颜色的功能,让我们在 CSS 中,对颜色有了更为强大的掌控能力. 其核心功能就是,让我们能够基于一个现有颜色 ...

  3. GaussDB(for MySQL)如何在存储架构设计上做到高可靠、高可用

    摘要: GaussDB(for MySQL)通过ND算子下推解决存储节点和计算节点之间的传输速度,减少网络开销这个难题. 数据库作为高效稳定处理海量数据交易/分析的坚强数据底座,底层架构设计的重要性不 ...

  4. 云小课 | 网络知识一箩筐——NAT网关,让IP地址华丽变身,轻松实现内外网互通

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课) 或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要: 网络知识一箩筐 ...

  5. U2Net基于ModelArts Notbook的仿真实验

    摘要:U2Net是一个优秀的显著性目标检测算法,由Qin Xuebin等人发表在Pattern Recognition 2020期刊[Arxiv].U2Net名称的来源在于其网络结构由两层嵌套的Une ...

  6. What?构造的查询语句会导致堆栈溢出

    摘要:本文归纳了Neo4j和Nebula两个开源图数据库的两个pull request修复的堆栈溢出问题,并试着写写通过阅读pr中的问题而得到的一些启发 本文分享自华为云社区<巧妙构造的查询语句 ...

  7. 训练千亿参数模型的法宝,昇腾CANN异构计算架构来了~

    摘要:盘古的训练以「昇腾AI处理器」为基座,同时借助了「CANN 异构计算架构」,让硬件算力得以充分释放,大大缩短了训练时间! 2021年4月,"华为云盘古大模型"一炮走红AI人工 ...

  8. update 没有索引导致业务崩了,老板骂了一个小时

    摘要:有天,一朋友在线上执行一条 update 语句修改数据库数据的时候,where 条件没有带上索引,导致业务直接崩了,被老板教训了一波. 本文分享自华为云社区<update 没有索引,会锁全 ...

  9. gis经纬度坐标转换多格式兼容:支持字符串/数组/GeoJSON

    格式 let coordinatesStrReg = /((-*[1][0-9]{0,2}|0)(\.[0-9]{1,6})*),\s{0,2}((-*[1-9][0-9]{0,1}|0)(\.[0- ...

  10. HOCON:nginx配置文件后缀conf是什么格式类型文件夹?intellij如何编辑

    nginx的配置为*.conf ,这个conf是么子文件?之前确实不清楚. HOCON 简介HOCON(Human-Optimized Config Object Notation)是一个易于使用的配 ...