您的位置:首页 > 运维架构

监控测试 ——SAR工具使用方法

2017-08-02 11:15 239 查看
1
环境准备

1.1
openstack管理节点

1. 安装net-snmp-utils

yum install net-snmp-utils

2. 修改/etc/ceilometer/pipeline.yaml

修改/etc/ceilometer/pipeline.yaml,将下面resources下红色区域的IP换成计算节点的IP,有多个计算节点跟多个。



1.2
在openstack计算节点

1. 配置SNMP

1). 安装snmpd

# yum isntall net-snmp net-snmp-utils

2). 修改/etc/sysconfig/selinux:

SELINUX=disabled

3). 修改/etc/snmp/snmpd.conf文件:

在以下地方增加一条数据:

# Make at least snmpwalk -v 1 localhost -c public system fast again.

# name incl/excl subtree mask(optional)

# view systemview included .1.3.6.1.2.1.1

# view systemview included .1.3.6.1.2.1.25.1.1

view systemview included .1.3.6.1

4).重启服务

service snmpd restart

systemctl enable snmpd.service

5).在管理节点命令行中执行snmpwalk命令:

#snmpwalk -v 2c -c public <compute_node_ip>

如果有返回值,表示配置成功。

2.修改/etc/ceilometer/pipeline.yaml

3.修改/etc/nova/nova.conf

找到compute_monitors变量,将其值设置为:

compute_monitors=ComputeDriverCPUMonitor

网络IO和磁盘IO已经在默认配置里。

2
宿主机

sar工具(linux系统)

安装:

sar在sysstat包中,所以先用yum安装sysstat包.

(备注:sysstat是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,比如CPU使用率、硬盘和网络吞吐数据,这些数据的收集和分析,有利于我们判断系统是否正常运行,是提高系统运行效率、安全运行服务器的得力助手)

1. 加载待测虚机的centos光盘

2. CRT连接待测虚拟机,mount光盘

mount -t iso9660 /dev/cdrom /media

3. 安装sysstat包

yum install sysstat

使用:

2.1
CPU

使用率:100-%idle 单位:%

使用-u选项,sar输出整体CPU的使用情况,不加选项时,默认使用的就是-u选项。以下命令显示采样时间为1s,采样次数为10次,整体CPU的使用情况:



输出项说明:

CPU all 表示统计信息为所有 CPU 的平均值。

%user 显示在用户级别(application)运行使用 CPU 总时间的百分比。

%nice 显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。

%system 在核心级别(kernel)运行所使用 CPU 总时间的百分比。

%iowait 显示用于等待I/O操作占用 CPU 总时间的百分比。

%steal 管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。

%idle 显示 CPU 空闲时间占用 CPU 总时间的百分比。

2.2
内存

使用率:memused 单位:%

使用-r选项可显示内存统计信息,以下命令显示以1秒为采样时间,显示10次内存信息:



输出项说明:

kbmemfree:这个值和free命令中的free值基本一致,所以它不包括buffer和cache的空间.

kbmemused:这个值和free命令中的used值基本一致,所以它包括buffer和cache的空间.

%memused:这个值是kbmemused和内存总量(不包括swap)的一个百分比.

kbbuffers和kbcached:这两个值就是free命令中的buffer和cache.

kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap).

%commit:这个值是kbcommit与内存总量(包括swap)的一个百分比.

2.3
网络IO

网络接收:(ens32+ens34)rxpck/s 单位:packet/s

网络发送:(ens32+ens34)txpck/s 单位:packet/s



输出项说明:

IFACE: 网络接口名称

rxpck/s: 每秒收包的数量(packet/s)

txpck/s: 每秒发包的数量(packet/s)

rxkB/s: 每秒收的数据量(kB为单位)(kB/s)

txkB/s: 每秒发的数据量(kB为单位)(kB/s)

3
云主机

3.1
CPU

使用率:100-%idle 单位:%

使用量:MHz 用下面公式计算

云主机已使用cpu主频计算公式:

used_frequency = 宿主机CPU主频 * min(宿主机核心数量/已分配云主机vcpu数量总和, 1) * 云主机vcpus * cpu使用率

总量:



3.2
内存

使用率:%memused 单位:%

使用量:kbmemused/1024 单位:MB

总量



3.3
磁盘IO

磁盘读:bread/s* 磁盘数据块大小 单位:字节/秒

磁盘写:bwrtn/s* 磁盘数据块大小 单位:字节/秒

blocks/s转换成B/s的公式:

磁盘读写字节每秒 = 磁盘读写块每秒 * 磁盘数据块大小

(Bytes/s) (blocks/s) (Bytes/block)



输出项说明:

tps 每秒钟物理设备的 I/O 传输总量

rtps 每秒钟从物理设备读入的数据总量

wtps 每秒钟向物理设备写入的数据总量

bread/s 每秒钟从物理设备读入的数据量,单位为 块/s

bwrtn/s 每秒钟向物理设备写入的数据量,单位为 块/s

3.4
网络IO

网络接收:(虚拟网卡ens32)rxkB/s*1024 单位:字节/秒

网络发送:(虚拟网卡ens32)txkB/s*1024 单位:字节/秒



附录

1.将监控数据输出为txt格式(sar工具)
将监控数据输出到一个txt文本文件中,然后通过more 来查看,也可导出该文件。

# sar -u 1 10 > test.txt

# more test.txt



通过-o 输出到一个二进制的文件中,是不能用文件内容查看工具more、less或cat来查看的,应该用sar工具来查看,要加-f参数。

# sar -u 1 4 -o test

# sar -f test



2提升内存使用率的方法

Linux把内存挂载成硬盘提高读写速度,VM(virtual memory)由RM+Swap两部分组成

# mount -t tmpfs -o size=20m tmpfs /mnt/tmp

说明:这条命令分配了上限为20m的VM到/mnt/tmp目录下,用df命令查看一下,确实/mnt/tmp挂载点显示的大小是20m,但是tmpfs一个优点就是它的大小是随着实际存储的容量而变化的,换句话说,假如/mnt/tmp目录下什么也没有,tmpfs并不占用VM。备注:必须在新挂的盘内写入数据,否则不占用内存

3.
提升cpu使用率的方法

在vm上跑死循环的shall脚本。

#!/bin/bash

while true

do

i=1111111111111111111111111*22222222222222222222

echo "i"

/usr/bin/firefox http://www.baidu.com
done

一行命令增加cpu使用率

for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done

执行pkill -9 dd 释放cpu

cpu主频变动

应该是主板有节能技术,会根据CPU的使用率自动调节CPU的主频,进入BIOS把节能功能关闭就可以运行在额定默认主频上了。

4.
测试磁盘读写

iostat (I/O statistics)输入/输出统计,主要功能是对系统的磁盘I/O操作进行监视。

iostat -d 2 3 查看系统磁盘的使用状况

(1)Blk_read/s
表示每秒读取的数据块数

(2)Blk_wrtn/s表示每秒写入的数据块数

(3)Blk_read表示读取的所有块数

(4)Blk_wrtn
表示写入的所有块数

iostat -x /dev/sda 2 3 与sar -d
输出基本相同

(1)rrqm/s
表示每秒进行合并的读操作数目

(2)wrqm/s
表示每秒进行合并的写操作数目

(3)r/s表示每秒完成读I/O设备的次数

(4)w/s表示每秒完成写I/O设备的次数。

(5)rsec/s表示每秒读取的扇区数

(6)wsec/s表示每秒写入的扇区数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: