openshift/origin工作记录(5)——node节点系统资源预留

实际应用中发现,如果不做处理,当集群内应用数量不断增加时,会占满node节点的系统资源,导致某node节点挂掉,同时也会造成openshift集群的卡死。

解决思路为设置node节点系统资源预留值。

参考官方文档:https://docs.openshift.org/latest/admin_guide/manage_nodes.html#configuring-node-resources

openshift的容器编排层采用的是K8S,故这里同时参考了K8S的做法。

参考k8s博客:《Kubernetes 针对资源紧缺处理方式的配置》《kubernetes节点资源限制》

设置node节点系统资源预留值

如果尚未安装集群

修改ansible的hosts文件,在变量openshift_node_kubelet_args中设置系统预留值。

如果已安装集群

修改每个节点的/etc/origin/node/node-config.yaml文件。

修改文件中的kubeletArguments。

我的修改示意如下(这里我只设置了cpu和内存的预留,预留值根据自己实际情况调整):

#设置预留系统服务的资源 
system-reserved:
- cpu=200m
- memory=3G
#设置预留给k8s组件的资源(主要组件)
kube-reserved:
- cpu=200m
- memory=1G

重启origin-node

# systemctl restart origin-node

验证

实验的pod需要设置limit range。

尽可能的增加deployment的replicas。

这里我把某个deployment的replicas设置成了20。

这里写图片描述

可以看见有部分pod创建失败。

查看创建失败的pod日志

这里写图片描述

可以看出,创建失败的原因是没有节点满足该pod的内存需求。

查看node节点的内存使用量

这里写图片描述
这里写图片描述

可以看出,node节点的内存还有2G多可用。

这样就可以避免node节点系统资源被使用完,导致节点挂掉。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据架构师专家

apache与tomcat整合

Apache只是一个Web服务器,可以作为独立的web服务器来运行,不过只支持静态网页,如(asp,php,cgi,jsp)等动态网页的就显得无能为力。

1323
来自专栏java一日一条

单点登录原理与简单实现

web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,...

1762
来自专栏石奈子的Java之路

原 荐 Java9之Jshell入门

2065
来自专栏深度学习之tensorflow实战篇

python django 学习(一)数据库 目的根据已有BBS建立新的网站步骤

1.创建一个django程序(pycharm下创建界面) ? 2.django创建的默认文件说明 manage.py:一个命令行工具,用于与Dj...

3426
来自专栏Django Scrapy

常用命令 一个月后发表 10-29发检查服务器的负载率

查询当前目录下的所有以 txt,pdf结尾的文件 find . ( -name ".txt" -o -name ".pdf" ) -print cd - 跳转到...

2537
来自专栏JadePeng的技术博客

MVC Grid 控件

特点: 集成Grid展示,排序,删除,分页,筛选,ajax 效果: ? 排序,分页,查询集成ajax ? 使用简单: 根据编写的T4模版,能直接生成数据访问类和...

3559
来自专栏Bug生活2048

Spring Boot学习笔记(二)Windows下IDEA 配置Maven

maven指向本地仓库配置,打开D:\ProgramFile\Maven\apache-maven-3.5.2\conf下的settings.xml,设置本地仓...

1102
来自专栏用户2442861的专栏

局域网聊天工具(可发送图片与文件)

http://blog.csdn.net/sunshinestation/article/details/4437404

3681
来自专栏Linyb极客之路

单点登录原理与简单实现

  web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关...

1172
来自专栏陈帅的专栏

Android 性能测试之内存性能及内存泄漏篇

APP 占用内存的测试,要比 CPU 的更为简单。App memory 数据来源是 dumpsysmeminfo 。Android 程序内存主要是两部分:nat...

3020

扫码关注云+社区