OSWbb(OSWatcher Black Box)的简介和使用

0    187    1

Tags:

👉 本文共约45003个字,系统预计阅读时间或需170分钟。

OSWatcher Black Box, 简称OSW,是提供的一个小但是非常有用的工具,它通过调用OS自己提供的命令来记录OS运行时的一些性能参数,比如CPU/Memory/Swap/Network IO/Disk IO相关的信息。

+++ 为什么一定要部署OSW?

OSW并不是强制要部署的,并且有很多工具可以提供一样的功能,比如说mrtg, cacti, sar, nmon, enterprise manger grid control.

但是部署OSW有很多好处:

\1. 它比较容易部署,并且容易删除。

\2. 资源消耗比较小,不管是从CPU,内存还是磁盘空间来说。

\3. 平时不需要维护,并且在发生问题时可以帮我们迅速定位问题是否发生在OS端

数据库是运行在OS之上的,如果OS发生了异常,那么数据库肯定也会受到影响;如果我们仅仅从数据库的角度去分析这样的问题时,很难有个好结果.

在平时的工作中,有一类问题很常见:在过去的某个时间段,数据库发生了一些问题,我们往往要找到问题的原因(root cause),之后才能做某些改动来避免它再次发生。对于这样的问题,OSW是非常有用的,举几个小例子:

1. 发生的问题并不是由于OS的异常引起的。这时候如果我们有在发生问题的时候收集的OSW数据,我们就可以立刻排除OS方面,把注意力投向DB/应用层。

2. 对于ORACLE Database Performance的问题,我们往往第一个方向就是排除OS的问题。

比如OS在某个时间段发生了很频繁的Swapping,那么内存相关的操作就会受到影响,数据库性能也会下降,表现在AWR中就会发现数据库有latch/mutex相关的等待。

3. 应用在某个时间段响应非常慢。AWR显示数据库非常的空闲,top5等待事件也都是很正常;从CPU,内存,Swap, Disk IO方面看也都很正常。后来发现OSW中关于网络的数据显示,发生问题时有非常多的丢包现象。如果当时没有收集到OSW的数据,那么基本上是不可能找到原因了。

4. 又比如某些ORA-04030的错误或者CJQ0, P00X, J00X进程不能启动的问题,如果我们部署了OSW,那么我们就能立刻知道这些错误是不是由于OS的内存短缺引起的。

5. 如果某个server process莫名hung住,我们可以通过OSW的信息来看当时这个进程是不是出于suspend的状态,是不是占用了太多的CPU/Memory。

6. 某些Listener hung的问题,我们也需要OSW的历史信息来进行下一步的分析。

7. Login Storm问题:客户的数据库系统突然变慢,从应用端,数据库的ASH,AWR报告中没有发现任何异常。但是通过OSW的ps的输出发现,在发生问题时, oracle 的server process比平时多了上千个。

实际上,OSW对于我们分析问题是非常有帮助的。如果当前OS上并没有部署任何的监控软件,那么强烈建议DBA来部署OSW。很多重要的生产环境都部署了OSW,在有关于DB Performance的问题时,他们往往会先提交OSW的输出。

+++ 大家对部署OSW的顾虑往往是:

1. 生产环境已经正常运行了很久了,基于稳妥的考虑,不能随便安装软件

2. OSW会不会带来副作用

OSW的工作机制是每隔一段时间调用OS提供的一些工具,比如ps, vmstat, netstat, mpstat, top;然后把这些工具的输出打印到文件里。 它不可避免的会消耗CPU, Disk IO, Disk Space, Memory;但是这些消耗的资源都是非常少的,在大部分的系统里都是可以忽略的。只有在某些极端情况下,部署OSW才会带来负面影响:系统已经是非常的忙,CPU使用率在90%以上;磁盘的free space已经没有了。所以大家的顾虑在大部分的情况下都是不必要的,部署OSW是没有什么风险的。

+++ 下面讲一下如何在UNIX/LINUX上安装/部署OSW:

\1. 从文档301137.1上下载OSW

\2. 随便放在某个地方(/tmp除外),然后解压缩。不需要用root权限

$ tar xvf osw.tar

\3. 启动

$ nohup ./startOSWbb.sh 60 48 gzip &

这个命令的含义是,启动OSW,然后每隔60秒收集一下信息,总共保留最近的48小时的数据(历史数据会被自动清除),保留的数据是以gzip格式压缩的。

\4. 如何关闭?

$ ./stopOSWbb.sh

收集的信息会存放在archive目录下。



Linux监控工具介绍系列——OSWatcher Black Box

2016-12-22 12:00 by 潇湘隐者, 1210 阅读, 1 评论, 收藏, 编辑

OSWatcher Balck Box**简介**

OSWatcher Black Box (oswbb)是Oracle开发、提供的一个小巧,但是实用、强大的系统工具,它可以用来抓取操作系统的性能指标,用于辅助监控系统的资源使用。其安装部署、卸载都非常简单;资源消耗也比较小,原理也十分简单,它通过调用OS的的一些命令(例如vmstat、iostat等)来采集、存储CPU/Memory/Swap/Disk IO/Nentwork相关数据。安装和运行oswbba可以帮助在性能诊断时提供丰富多样的各类性能数据、图文报表支持。

OSWatcher 在4.0的版本时被命名为OSWatcher Black Box,简称为oswbb,同时增加了数据分析功能,即OSWatcher Black Box Analyzer (OSWbba)这个绘图和分析工具,其捆绑在 OS Watcher Black Box当中。替代了之前的OSWg。 也就是说在OSWatcher 4.0 之前是:OSWatcher 和 OSWg的关系,OSWatcher 4.0 后变成了: OSWbb 与 OSWbba 的关系。

OSWatcher Black Box(oswbb)支持多个操作系统,也分Linux与Window版本,当然这两个版本有所差别,本篇只讲述Linux版本。另外,OSWatcher Black Box(oswbb)由两个部分组成:

\1. oswbb: 一个Unix的 shell script脚本集合,其用来收集和归档数据,从而帮助定位问题。

\2. oswbba: 一个Java工具来自动分析数据,提供建议,并且生成一个包含图形的 html 文档。

OSWatcher Black Box(oswbb)的官方下载地址以及相关资料如下(Oracle Metalink上的资料需要账号)

How To Start OSWatcher Black Box (OSWBB) Every System Boot Using RPM oswbb-service(文档 ID 580513.1)

OSWatcher Analyzer User Guide (文档 ID 461053.1)

官方介绍文档对oswbb,oswbba的介绍如下:

OSWatcher (oswbb) is a collection of UNIX shell scripts intended to collect and archive operating system and network metrics to aid support in diagnosing performance issues. OSWatcher operates as a set of background processes on the server and gathers OS data on a regular basis, invoking such Unix utilities as vmstat, netstat and iostat. OSWatcher can be downloaded from this note. OSWatcher is also included in the RAC-DDT script file, but is not installed by RAC-DDT. For more information on RAC-DDT see RAC-DDT User Guide. OSWatcher is installed on each node where data is to be collected. Installation instructions for OSWatcher are provided in this user guide.

The OSWatcher Analyzer (oswbba) is a graphing and analysis utility which comes bundled with OSWatcher v4.0 and higher. oswbba allows the user to graphically display data collected, generate reports containing these graphs and provides a built in analyzer to analyze the data and provide details on any performance problems it detects. The ability to graph and analyze this information relieves the user of manually inspecting all the files.

NOTE: oswbba replaces the utility OSWg. This was done to eliminate the confusion caused by having multiple tools in support named OSWatcher. oswbba is only supported for data collected by oswbb and no other tool.

安装**OSWatcher**

Linux平台的安装简单到了不能再简单,如下所示,解压安装包生成oswbb文件夹。当然你最好将其部署或移动到合适的目录。

[oracle@DB-Server monitoring]$ tar -xvf oswbb734.tar

[oracle@DB-Server monitoring]$ ls -lrt

total 6196

drwxr-xr-x 6 oracle oinstall 4096 Jul 25 22:22 oswbb

-rw-r--r-- 1 oracle oinstall 6318080 Nov 8 02:33 oswbb734.tar

[oracle@DB-Server monitoring]$ cd oswbb

[oracle@DB-Server oswbb]$ ls –lrt

OSWbb(OSWatcher Black Box)的简介和使用

卸载**OSWatcher**

卸载OSWatche也是非常简单,只要稍懂Linux的应该都会。

1:卸载前先停止OSWatcher

./stopOSWbb.sh

2:删除OSWatcher的目录oswbb

rm –fr oswbb

启动**OSWatcher**

启动OSWatcher也非常简单,只需要执行startOSWbb.sh脚本即可,如下所示

./startOSWbb.sh 10 2

后面参数表示10秒采集一次数据,只保留最后采集2个小时的数据在归档文件中。首次启动的日志最好做一下检查,注意是否存在Warning信息,如下测试所示,检查时发现ifconfig命令找不到(oracle账户下无法运行ifconfig命令)

./startOSWbb.sh

如果没有指定参数,默认参数为30,48,意味着30秒采集一次数据,只保留最后48小时的数据到归档文件当中。其实startOSWbb.sh可以定义四个参数

参数1: 指定多少秒采集一次数据。

参数2: 指定采集的数据文件在归档路径保留多少个小时

参数3: 可选参数,打包压缩工具, 在完成收集后OSW 将使用其来打包压缩归档文件

参数4: 可选参数,指定采集归档数据的输出目录,默认为系统变量OSWBB_ARCHIVE_DEST的值。

OSWbb(OSWatcher Black Box)的简介和使用

使用上面方式启动OSWatcher,会被输出信息一直刷屏。基本上很少使用这种方式,一般使用nohup启动,这样可以让OSW能够在后台持续运行并在当前会话终止后不会被挂断。当然如果系统重启,那么OSWatcher就会停止。

nohup ./startOSWbb.sh 30 48 &

第一次启动OSWatcher会在oswbb目录下创建 gif、archive、tmp、locks目录。其归档文件夹和osw<工具名> 子文件夹会被建

OSWbb(OSWatcher Black Box)的简介和使用

OSWatcher采集的数据都存放在archive(目录路径)下,下面会生成oswiostat、oswmeminfo、oswmpstat等10个目录

[oracle@DB-Server archive]$ tree

.

|-- oswifconfig

|-- oswiostat

| |-- DB-Server.localdomain_iostat_16.12.09.1300.dat

| |-- DB-Server.localdomain_iostat_16.12.09.1400.dat

| `-- DB-Server.localdomain_iostat_16.12.09.1500.dat

|-- oswmeminfo

| |-- DB-Server.localdomain_meminfo_16.12.09.1300.dat

| |-- DB-Server.localdomain_meminfo_16.12.09.1400.dat

| `-- DB-Server.localdomain_meminfo_16.12.09.1500.dat

|-- oswmpstat

| |-- DB-Server.localdomain_mpstat_16.12.09.1300.dat

| |-- DB-Server.localdomain_mpstat_16.12.09.1400.dat

| `-- DB-Server.localdomain_mpstat_16.12.09.1500.dat

|-- oswnetstat

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
OSWbb(OSWatcher Black Box)的简介和使用后续精彩内容已被小麦苗无情隐藏,请输入验证码解锁本站所有文章!
验证码:
请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“DB宝”或者“www_xmmup_com”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦。
  • 18509239930
  • 个人微信

  • DB宝
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部