redhat 性能调优指南-亚博电竞手机版

性能调优是为了提高系统的性能,减少能量的使用或者是减轻应用对其他部分的影响。如果贸然的调优,或者没有任何测量,当然性能调优也许会有不好的影响。

但是系统性的性能调优比专注一点调优更加科学。

方法

首先弄清楚“正常的”状态是什么。

寻找潜在的性能问题,通过调节性能参数来解决这些问题。调整后看看系统怎么样,然后决定保持调整还是回滚。

总结:

  1. 首先收集数据找准方向。
  2. 启动调优,并选择一个合理的默认值
  3. 看看结果,我们的选择是否正确?然后,提交或回归。
  4. 找出潜在的性能问题。
  5. 调整调优参数
  6. 回到第第三步

开始之前,先设定标准

之前和之后的度量

由于有了特定的度量,在改变之前和之后使用“压力测试”很快就可以为你的应用设定标准。可以看看使用 apache jmeter 进行压力测试的文章,是关于早期的 sysadvent 日历的例子。

水平度量

如果你可以使用图表进行水平资源监视。即使在自动化分析的今天,以前的 mk1 eyeball 仍然是非常有用的,为此,你需要的是图表,而不是满屏的数据。

(当然,你可以把这些图表给你的老板看看,免得他们觉得你在公司吃闲饭)

你应该用图形化的方式来查看所提供的服务上的使用情况和响应时间。针对 web 服务器,指标就应该是请求的数量,每次请求响应的时间,还有每次响应消息的大小。

对于 apache 和 nginx,看看《在 apache 和 nginx 中进行日常日志记录工作》,这篇文章描述了如何将必要的量化指标数据记录日志。

你应该以图形化的方式描述其所使用的资源的使用情况,队列和响应时间。这常常意味着针对磁盘和网络 io 的资源图。以图形化的方式描述每秒的请求数,还有请求-响应的延迟。

用于图形化展示的工具

我个人喜欢用 munin。这个工具可以在 epel 仓库找到。这个工具绝对称得上“老式的”,但它非常容易上手,而且它还有非常丰富的插件可供使用。在你安装使用 munin 上,它会默认安装许多图形化工具。如果你需要更多的图形化插件,你可以在 contrib 仓库上找到它们。

对于一些更先进的监控工具,elasticsearch,logstash 和 kibana 在日志分析和可视化展示方面更受欢迎。设置 elk 来加载所需要监控的数据,使用 topbeat 作为资源使用度衡量标准,使用 filebeat 作为实时日志文件分析,使用 packetbeat 来分析在线网络数据。

可选的工具有很多,选用你所了解的,喜欢的或者你想学习的。你需要记住的最重要的事情是:确保在你开始修改操作前知道你的基准数据。

性能调优工具

tuna

tuna 可以用来控制进程及其调度关系。

例如:在一个健状的系统上却有差的网络性能,并且可以观察到有几个处理核心处于空闲状态。通过检查网卡发现多工调度队列功能已开启,而且它们已经分布在所有可用的处理核心上。

此处假设这些网卡命名为“enp1s0f0“和”enp1s0f1“:

[root@golem ~]# tuna --irq 'enp1s0f*' --socket 0 --spread --show_irqs    # users            affinity   69 enp1s0f0                0  igb   70 enp1s0f0-rx-0           1  igb   71 enp1s0f0-rx-1           2  igb   72 enp1s0f0-rx-2           3  igb   73 enp1s0f0-rx-3           4  igb   74 enp1s0f0-tx-0           5  igb   75 enp1s0f0-tx-1           6  igb   76 enp1s0f0-tx-2           7  igb   77 enp1s0f0-tx-3           0  igb   79 enp1s0f1                1  igb   80 enp1s0f1-rx-0           2  igb   81 enp1s0f1-rx-1           3  igb   82 enp1s0f1-rx-2           4  igb   83 enp1s0f1-rx-3           5  igb   84 enp1s0f1-tx-0           6  igb   85 enp1s0f1-tx-1           7  igb   86 enp1s0f1-tx-2           0  igb   87 enp1s0f1-tx-3           1  igb

对于拥有多套接口的系统,你可以把你喜欢的进程移到某个套接口,并且把网络管理移到另一个套接口。

tuned

tuned 这个工具已经在 red hat 的多个发行版中可用。

tuned 带有多种调优预置配置;用于各种通用服务器的合理的默认配置。用于“虚拟用户”的配置,用于“虚拟主机”的配置,还有用于“高吞吐量”或者“低延迟”的预置配置。他们应该对更进一步的应用提供初始配置。例如

[root@golem ~]# tuned-adm list - balanced - desktop - latency-performance - network-latency - network-throughput - powersave - throughput-performance - virtual-guest - virtual-host current active profile: throughput-performance

不同的默认预置配置有着健全的文档,而且如果你想自定义的话,有初始配置文件可供使用。

在物理机上默认的预置配置是“throughput-performance“或者”balanced“,在虚拟机上的默认预置配置是”virtual-guest“。

tuned 的默认预置配置在 /usr/lib/tuned 目录下。

[root@golem ~]# tree /usr/lib/tuned /usr/lib/tuned |-- balanced |   `-- tuned.conf |-- desktop |   `-- tuned.conf |-- functions |-- latency-performance |   `-- tuned.conf |-- network-latency |   `-- tuned.conf |-- network-throughput |   `-- tuned.conf |-- powersave |   |-- script.sh |   `-- tuned.conf |-- recommend.conf |-- throughput-performance |   `-- tuned.conf |-- virtual-guest |   `-- tuned.conf `-- virtual-host     `-- tuned.conf

每个配置包括一个 tuned.conf 文件,这个文件带有 ini 文件语义格式和一个可选的脚本解释器。

如果想生成一个自定义的配置文件,你可以拷贝这些目录上的一个到 /etc/tuned 目录,做必要的修改并激活使用。

[root@golem ~]# cp -a /usr/lib/tuned/throughput-performance /etc/tuned/wonderprofile [root@golem ~]# vim /etc/tuned/wonderprofile/tuned.conf [root@golem ~]# tuned-adm profile wonderprofile

例如:/etc/tuned/wonderprofile/tuned.conf文件,对它进行少量调整。

[main] include=throughput-performance [sysctl] net.ipv4.tcp_rmem="4096 87380 16777216" net.ipv4.tcp_wmem="4096 16384 16777216" net.ipv4.udp_mem="3145728 4194304 16777216"

同样对/etc/tuned/wonderprofile/script.sh进行调整。

#!/bin/sh # lots of functions in here to use . /usr/lib/tuned/functions start() {     [ "$usb_autosuspend" = 1 ] && enable_usb_autosuspend     enable_wifi_powersave     return 0 } stop() {     [ "$usb_autosuspend" = 1 ] && disable_usb_autosuspend     disable_wifi_powersave     return 0 } process $@

拓展阅读

我只是提及了很少的系统管理员工具。red hat 有丰富的文档展示如何调优以及如何衡量(或者其它的方式),使用比我所提到的更多的工具。

对于电源管理方面,例如即使你忘了在家充电也可以使你的笔记本电脑在工作时间使用,请参见 red hat enterprise linux 7 power management guide。

对于性能调优,想使你的昂贵的服务器焕发更多的活力,参见 red hat enterprise linux 7 performance tuning guide。

”用微米测量,却用粉笔标记,用斧子切割“ (警醒:不能犯这样的错误。)

展开全文
内容来源于互联网和用户投稿,文章中一旦含有亚博电竞手机版的联系方式务必识别真假,本站仅做信息展示不承担任何相关责任,如有侵权或涉及法律问题请联系亚博电竞手机版删除

最新文章

知识分享
说到硬派越野,想必大家都非常熟悉了,尤其是近几年更是异常的火爆,市场前景也是非常的广阔。近...…
知识分享
当前里程:6998公里当前油耗:7.00l/100km油耗:三保过了一段时间了,也是在4s...…
知识分享
说到德系车,我们往往能想到的就是大众,大众汽车的燃油经济性不错,新车的故障率也比较低,而且...…
知识分享
据了解,这辆本田思域是2013款的,具体车型为十周年纪念1.8l自动豪华版。首次上牌是在2...…
网站地图