RH442之tuned/tuned-adm动态调优工具
tuned/tuned-adm是RHEL/CentOS 在 6.3 版本以后引入的一套新的系统调优工具,其使用python语言开发,其中 tuned 是服务端程序,用来监控和收集系统各个组件的数据,并依据数据提供的信息动态调整系统设置,达到动态优化系统的目的;tuned-adm 是客户端程序,用来和 tuned 打交道,用命令行的方式管理和配置 tuned,tuned-adm 提供了一些预先配置的优化方案可供直接使用,比如:桌面电脑、虚拟机、存储服务器等。
一、安装tuned和查看
1、安装启用tuned
1[root@server0 ~]# yum -y install tuned
2[root@server0 ~]# systemctl enable tuned
3[root@server0 ~]# systemctl start tuned
4[root@server0 ~]# systemctl status tuned
2、查看可用的tuned规则
1#当前使用的策略
2[root@server0 ~]# tuned-adm active
3Current active profile: virtual-guest
4#支持的策略列表
5[root@server0 ~]# tuned-adm list
6Available profiles:
7- balanced
8- desktop
9- latency-performance
10- network-latency
11- network-throughput
12- powersave
13- throughput-performance
14- virtual-guest
15- virtual-host
16Current active profile: virtual-guest
二、新增自定义策略
自定义策略有两种方法:一种是在/usr/lib对应的目录下新增策略目录及相关配置文件;另一种做法是在/etc/tuned目录下创建对应的目录和文件。官方上的做法是后者。这点和 rhel6 版本有一些区别,在6版本下,配置文件位于/etc/tune-profiles目录下。
1、在/usr 目录下创建配置
1[root@server0 tuned]# pwd
2/usr/lib/tuned
3[root@server0 tuned]# cp -rp balanced my-balanced
4[root@server0 tuned]# tuned-adm list
5Available profiles:
6- balanced
7- desktop
8- latency-performance
9- my-balanced <----新增的策略
10- network-latency
11- network-throughput
12- powersave
13- throughput-performance
14- virtual-guest
15- virtual-host
16Current active profile: virtual-guest
2、在/etc目录下创建配置文件
1#创建对应的目录
2[root@server0 ~]# mkdir /etc/tuned/myprofile
3#创建主配置文件,可以引入已存在的策略,并在其基础上修改(类似于OOP,复用的概念)
4[root@server0 myprofile]# cat tuned.conf
5[main]
6include=virtual-guest
7[sysctl]
8vm.swappiness=10
9[disk]
10devices=!vda
11readahead=4096
除上面的配置之外,还可以增加脚本配置到tuned.conf中。其使用的函数可以覆盖或修改 /usr/lib/tuned/functions引入的函数功能。可以通过如下命令查看里面的所有函数:
1[root@server0 myprofile]# grep '^[^_].*()' /usr/lib/tuned/functions
2save_value() {
3save_sys() {
4set_sys() {
5………………
6start() {
7stop() {
8process() {
比如上面的start和stop函数,在启用或关闭当前属性策略时,会首先调用该函数。我们可以增加如下脚本:
1[root@server0 ~]# cat /etc/tuned/myprofile/script.sh
2#!/bin/bash
3./usr/lib/tuned/functions
4start(){
5}
6stop(){
7}
8process $@
9[root@server0 ~]# cat /etc/tuned/myprofile/tuned.conf
10[main]
11include=virtual-guest
12[sysctl]
13vm.swappiness=10
14[disk]
15devices=!vda
16readahead=4096
17[script]
18script=script.sh
上面的脚本,实际并没有做任何操作,这里只提供一个模块,可以把我操作的内容写到这个脚本模板里 。通过在tuned.conf中增加script参数进行引用。操作完成后,可以通过如下命令进行引用:
1[root@server0 myprofile]# tuned-adm list
2Available profiles:
3- balanced
4- desktop
5- latency-performance
6- my-balanced
7- myprofile
8- network-latency
9- network-throughput
10- powersave
11- throughput-performance
12- virtual-guest
13- virtual-host
14Current active profile: network-latency
15[root@server0 myprofile]# tuned-adm profile myprofile
三、tuned策略切换和效果
四、tuna工具
tuned策略的编写比较难,只需涉及很多参数。不过对于常用的一些参数,官方提供了一个工具tuna,也是基于python语言编写的,通过该工具,可以通过图形化的方式配置一些参数,安装命令如下:
1[root@server0 ~]# yum -y install tuna
安装完成后,需要有图形化环境才可以调用tuna程序,其调用后的界机如下:
其引入的配置文件就是/etc/tuna/example.conf 。
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))
- Author: shisekong
- Link: https://blog.361way.com/tuned/5423.html
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.