RH442之tuned/tuned-adm动态调优工具

2015年10月13日 发表评论 阅读评论

tuned/tuned-adm是RHEL/CentOS 在 6.3 版本以后引入的一套新的系统调优工具,其使用python语言开发,其中 tuned 是服务端程序,用来监控和收集系统各个组件的数据,并依据数据提供的信息动态调整系统设置,达到动态优化系统的目的;tuned-adm 是客户端程序,用来和 tuned 打交道,用命令行的方式管理和配置 tuned,tuned-adm 提供了一些预先配置的优化方案可供直接使用,比如:桌面电脑、虚拟机、存储服务器等。

一、安装tuned和查看

1、安装启用tuned

[root@server0 ~]# yum -y install tuned
[root@server0 ~]# systemctl enable tuned
[root@server0 ~]# systemctl start tuned
[root@server0 ~]# systemctl status tuned

2、查看可用的tuned规则

#当前使用的策略
[root@server0 ~]# tuned-adm active
Current active profile: virtual-guest
#支持的策略列表
[root@server0 ~]# tuned-adm list
Available profiles:
- balanced
- desktop
- latency-performance
- network-latency
- network-throughput
- powersave
- throughput-performance
- virtual-guest
- virtual-host
Current active profile: virtual-guest

二、新增自定义策略

自定义策略有两种方法:一种是在/usr/lib对应的目录下新增策略目录及相关配置文件;另一种做法是在/etc/tuned目录下创建对应的目录和文件。官方上的做法是后者。这点和 rhel6 版本有一些区别,在6版本下,配置文件位于/etc/tune-profiles目录下。

1、在/usr 目录下创建配置

[root@server0 tuned]# pwd
/usr/lib/tuned
[root@server0 tuned]# cp -rp balanced my-balanced
[root@server0 tuned]# tuned-adm list
Available profiles:
- balanced
- desktop
- latency-performance
- my-balanced   <----新增的策略
- network-latency
- network-throughput
- powersave
- throughput-performance
- virtual-guest
- virtual-host
Current active profile: virtual-guest

2、在/etc目录下创建配置文件

#创建对应的目录
[root@server0 ~]# mkdir /etc/tuned/myprofile
#创建主配置文件,可以引入已存在的策略,并在其基础上修改(类似于OOP,复用的概念)
[root@server0 myprofile]# cat tuned.conf
[main]
include=virtual-guest
[sysctl]
vm.swappiness=10
[disk]
devices=!vda
readahead=4096

除上面的配置之外,还可以增加脚本配置到tuned.conf中。其使用的函数可以覆盖或修改 /usr/lib/tuned/functions引入的函数功能。可以通过如下命令查看里面的所有函数:

[root@server0 myprofile]# grep '^[^_].*()' /usr/lib/tuned/functions
save_value() {
save_sys() {
set_sys() {
………………
start() {
stop() {
process() {

比如上面的start和stop函数,在启用或关闭当前属性策略时,会首先调用该函数。我们可以增加如下脚本:

[root@server0 ~]# cat /etc/tuned/myprofile/script.sh
#!/bin/bash
./usr/lib/tuned/functions
start(){
}
stop(){
}
process $@
[root@server0 ~]# cat /etc/tuned/myprofile/tuned.conf
[main]
include=virtual-guest
[sysctl]
vm.swappiness=10
[disk]
devices=!vda
readahead=4096
[script]
script=script.sh

上面的脚本,实际并没有做任何操作,这里只提供一个模块,可以把我操作的内容写到这个脚本模板里 。通过在tuned.conf中增加script参数进行引用。操作完成后,可以通过如下命令进行引用:

[root@server0 myprofile]# tuned-adm list
Available profiles:
- balanced
- desktop
- latency-performance
- my-balanced
- myprofile
- network-latency
- network-throughput
- powersave
- throughput-performance
- virtual-guest
- virtual-host
Current active profile: network-latency
[root@server0 myprofile]# tuned-adm profile myprofile

三、tuned策略切换和效果

tuned

四、tuna工具

tuned策略的编写比较难,只需涉及很多参数。不过对于常用的一些参数,官方提供了一个工具tuna,也是基于python语言编写的,通过该工具,可以通过图形化的方式配置一些参数,安装命令如下:

[root@server0 ~]# yum -y install tuna

安装完成后,需要有图形化环境才可以调用tuna程序,其调用后的界机如下:

tuna-monitor

其引入的配置文件就是/etc/tuna/example.conf 。




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.