Jstorm 调度硬件资源cgroups

简介: cgroups是control groups的缩写,是Linux内核提供的一种可以限制, 记录, 隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO 等等)的机制。

Cgroups

cgroups是control groups的缩写,是Linux内核提供的一种可以限制, 记录, 隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO 等等)的机制。

Jstorm 使用 Cgroups

在Jstorm中,我们使用cgroup进行cpu硬件资源的管理。使用前,需要做如下检查和配置。

1.检查/etc/passwd 文件中当前用户的uid和gid, 假设当前用户是admin, 则看/etc/passwd文件中admin的uid和gid是多少

2.cgroup功能在当前系统的内核版本是否支持

3.检查/etc/cgconfig.conf是否存在。如果不存在, 请“yum install libcgroup”,如果存在,设置cpu子系统的挂载目录位置, 以及修改该配置文件中相应的uid/gid为启动jstorm用户的uid/gid, 本例子中以500为例, 注意是根据第一步来进行设置的。

mount {    
     cpu = /cgroup/cpu;
 }


 group jstorm {
      perm {
              task {
                     uid = 500;
                     gid = 500;
              }
              admin {
                     uid = 500;
                     gid = 500;
              }
      }
      cpu {
      }
 }

4.然后启动cgroup服务

service cgconfig restart
chkconfig --level 23456 cgconfig on
Note: cgconfig.conf只能在root模式下修改。
或者直接执行命令

cgconfig.conf配置文件例子。

比如jstorm的启动用户为admin,admin在当前 系统的uid/gid为500(查看/etc/passwd 可以查看到uid和gid),那么相对应cpu子系统的jstorm目录uid/gid也需要设置为相同的值。 以便jstorm有相应权限可以在这个目录下为jstorm的每个需要进行资源隔离的进程创建对应 的目录和进行相关设置。

mkdir /cgroup/cpu
mount  -t cgroup -o cpu none /cgroup/cpu
mkdir /cgroup/cpu/jstorm
chown admin:admin /cgroup/cpu/jstorm

在jstorm配置文件中打开cgroup, 配置storm.yaml

supervisor.enable.cgroup: true

作者:glowd

原文:https://blog.csdn.net/zengqiang1/article/details/78451307
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
机器学习/深度学习 算法 知识图谱
机器学习常用距离度量
机器学习常用距离度量
576 0
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
375 0
|
监控 数据可视化 数据挖掘
数据看板制作工具评测:这6款工具能如何提升企业的数据分析效率?
本文介绍了6款数据看板制作工具,包括板栗看板、Tableau、Power BI、Qlik Sense、Google Data Studio和Looker,从功能、适用场景等方面进行了详细对比,旨在帮助企业选择最合适的工具以实现高效的数据可视化和管理决策。
1128 4
|
传感器 物联网 大数据
物联网(IoT)技术与应用:塑造未来的智能化生活
【5月更文挑战第1天】物联网(IoT)技术整合传感器、嵌入式系统、云计算与大数据,连接智能设备,重塑生活与工作方式。应用涵盖智能家居、工业自动化、农业、智能城市及医疗健康,提升效率与便利性。然而,数据安全、设备兼容性及网络基础设施仍是挑战。随着5G和AI进步,IoT将在更多领域发挥潜力,驱动社会智能化转型,需关注技术挑战并加强创新。
1797 4
|
前端开发 JavaScript
竞态问题:深入理解与解决方案
竞态问题:深入理解与解决方案
1156 0
|
安全 算法 网络协议
【计算机网络】再谈应用层——电子邮件相关
电子邮件信息格式 RFC 5322(最基本的格式,the Internet Message Format) 形式: to Cc(抄送) Bcc(盲抄送,对方无法得知该消息还抄送给了谁)
442 0
|
监控 Java 应用服务中间件
SpringCloud-高级篇(一)
高级篇包含微服务保护(流量控制,系统保护,熔断降级,服务授权)、分布式事务、多级缓存、Redis集群、可靠消息服务
483 0
|
SQL 存储 NoSQL
两行代码玩转Spring Data排序和分页
两行代码玩转Spring Data排序和分页
1035 0
两行代码玩转Spring Data排序和分页
|
Unix 应用服务中间件 Linux
centos下安装和卸载nginx
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较。Nginx 可以在大多数 Unix Linux OS 上编译运行,并有 Windows 移植版。 Nginx 的1.20.0稳定版已经于2021年4月20日发布。
1082 0
centos下安装和卸载nginx
|
JavaScript 开发者
讲解v-model实现表单元素的数据双向绑定|学习笔记
快速学习讲解v-model实现表单元素的数据双向绑定
194 0
 讲解v-model实现表单元素的数据双向绑定|学习笔记