技术分享 | 使用 systemd 修改资源隔离配置

作者:晏泽
爱可生售后团队成员,主要负责公司数据库运维产品问题诊断;努力在数据库和 IT 领域里摸爬滚打中。
本文来源:原创投稿
*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。


本文关键字:Linux、systemd、资源隔离

一,修改systemd unit file

为了给程序配置资源隔离,通常我们会到cgroup层级树下的控制器里,创建或者修改控制组文件。
在Linux7中,如果为程序配置了systemd服务,除了直接修改控制组文件之外,还可以通过systemd相关命令对程序的资源隔离配置进行修改。

1.1 修改方法

有两种方法可以对配置了systemd的程序进行资源隔离:

  1. 命令行修改:通过执行systemctl set-property命令实现,形式为systemctl set-property name parameter=value;修改默认即时生效

  2. 手工修改文件:直接编辑程序的systemd unit file文件,完成之后需手工执行systemctl daemon-reload更新配置,并重启服务systemctl restart name.service

systemd unit file里支持的资源隔离配置项,如常见的:

  • CPUQuota=value
    该参数表示服务可以获取的最大CPU时间,value为百分数形式,高于100%表示可使用1核以上的CPU。与cgroup cpu控制器cpu.cfs_quota_us配置项对应。

  • Memor

`ps -ef | grep systemd` 是一条在Linux系统中执行的命令。这条命令的作用是显示当前系统中与`systemd`相关的进程信息。具体解释如下: - `ps -ef`: `ps`命令用于显示当前进程的快照。`-e`选项表示选择所有进程,`-f`选项表示全格式输出,详细显示进程信息。 - `|`:这是管道符号,它的作用是将前一个命令的输出作为后一个命令的输入。 - `grep systemd`:`grep`是一个强大的文本搜索工具,用于搜索包含指定模式(字符串)的文本行。在这里,它用来过滤出包含`systemd`字符串的行。 当执行`ps -ef | grep systemd`命令后,输出的信息通常会包括搜索命令本身的行,也就是包含了`grep systemd`的那行,因为管道符号前面的命令会将其输出作为后一个命令的输入,而`grep`命令本身也会输出匹配到的内容。 例如: ``` UID PID PPID C STIME TTY TIME CMD root 1 0 0 Apr21 ? 00:00:18 /usr/lib/systemd/systemd --switched-root --system --deserialize 22 root 102 1 0 Apr21 ? 00:00:00 [systemd-journal] root 1396 1022 0 12:59 pts/0 00:00:00 grep systemd ``` 在上述输出中,第一行是`systemd`进程的详细信息,而最后一行是执行`grep`命令的进程信息。 因此,当你看到类似`102 root grep systemd`的输出时,这表示你当前系统的某个进程正在执行包含`grep systemd`的命令,并不直接表示系统是否支持`systemd`。要确定系统是否支持`systemd`,你需要查看`/sbin/init`或者`/usr/lib/systemd/systemd`等路径下是否存在`systemd`的可执行文件。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值