使用oracheck進行系統巡檢

abin1703發表於2017-05-24

 

日常資料庫巡檢,是運維人員經常需要完成的工作之一。對應複雜的軟硬體和系統環境,以及越來越多的系統數目,常規手段進行一次巡檢的成本壓力越來越大。綜合性的巡檢方面,自動化的執行和資訊收集,才是未來巡檢的一個發展方向。

Oracle Support內部的研發機構,會推出很多有用的小工具來輔助我們日常巡檢診斷工具,比如OSWatcherRDAoratop。這些工具都從一定程度上解決了我們在使用Oracle資料庫過程中遇到的管理和調優需求。本篇主要介紹oracheck,藉助orachk,我們可以快速的進行系統巡檢和故障排除。

 

1、從raccheckoracheck

 

oracheck來源於OracleRAC環境準備的工具raccheck。最早的raccheck是用於自動化Oracle RAC環境巡檢而開發的,之後不斷推出新的版本和功能。這些新功能中,最有意義的要屬於Oracle MAAOracle最大可用性體系架構)的引入。Oracle會將MAA的最佳實踐策略,融入到raccheck檢查專案裡面,給使用者提供更加全面的巡檢專案。

目前,raccheck已經正式改名為oracheck,提供從單例項資料庫例項到RACOGG等多個產品系列的巡檢功能。

 

2、安裝配置

 

oracheck是需要單獨從MOS上下載的工具包。和其他Oracle產品不同,oracheck更新速度非常快,官方建議是90天就需要下載最新的oracheck版本。這樣做的目的就是讓使用者可以獲得最新的檢查專案和建議,及時下載安裝最新的安全補丁

MOS上下載的軟體包很簡單,就是一個zip包。上傳到伺服器上解壓就可以使用。注意:目前oracheck只支援64bit系統,在32bit下不能使用。

建立專門目錄,上傳zip檔案。

 

[root@CRSimpleLinux /]# mkdir /orachk

[root@CRSimpleLinux /]# cd /orachk/

[root@CRSimpleLinux orachk]# ls -l

total 5120

-rw-r--r-- 1 root root 5241976 May 20 08:44 orachk_224_beta2.zip

 

解壓安裝包。

 

[root@CRSimpleLinux orachk]# unzip orachk_224_beta2.zip

Archive:  orachk_224_beta2.zip

  inflating: orachk                 

   creating: .cgrep/

  inflating: .cgrep/lcgreps9        

  inflating: .cgrep/CollectionManager_App.sql 

  inflating: .cgrep/asrexacheck     

  inflating: .cgrep/utlusts.sql     

(篇幅原因,有省略……

 

檢查指令碼,是一系列的配置檔案和oracheck執行檔案。

 

[root@CRSimpleLinux orachk]# ls -l

total 28072

-rw-rw-r-- 1 root root 21200391 Feb 11 03:50 collections.dat

-rwxr-xr-x 1 root root  1407669 Feb 14 03:23 orachk

-rwxr-xr-x 1 root root  1423197 Feb 11 03:50 raccheck

-rw-r--r-- 1 root root     2541 Feb 11 03:50 readme.txt

-rw-rw-r-- 1 root root  4700572 Feb 11 03:50 rules.dat

-rw-r--r-- 1 root root      296 Feb 11 03:50 UserGuide.txt

 

額外授權給oracle使用者,另外修改許可權755

 

[root@CRSimpleLinux /]# chown -R oracle:oinstall orachk/

[root@CRSimpleLinux /]# chmod -R 755 /orachk/

[root@CRSimpleLinux /]# cd /orachk/

[root@CRSimpleLinux orachk]# ls -l

total 28072

-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat

-rwxr-xr-x 1 oracle oinstall  1407669 Feb 14 03:23 orachk

-rwxr-xr-x 1 oracle oinstall  1423197 Feb 11 03:50 raccheck

-rwxr-xr-x 1 oracle oinstall     2541 Feb 11 03:50 readme.txt

-rwxr-xr-x 1 oracle oinstall  4700572 Feb 11 03:50 rules.dat

-rwxr-xr-x 1 oracle oinstall      296 Feb 11 03:50 UserGuide.txt

 

注意:在執行oracheck使用者上,根據不同的情況可以選擇root或者oracle owner物件。在一些檢查專案中,是需要root許可權進行操作的。一種比較推薦的方式是使用owner使用者執行,在需要root許可權的時候按照提示輸入root密碼。

 

3oracheck使用

 

oracheck指令碼有預設的行為方式,通過引數可以控制執行行為。例如-v可以顯示版本資訊。

 

[oracle@CRSimpleLinux orachk]$ ./orachk -v

ORACHK  VERSION: 2.2.4(BETA)_20140210

 

通常情況下,使用預設的profile配置,就可以進行大部分檢查專案。

 

[oracle@CRSimpleLinux orachk]$ ./orachk -v

 

ORACHK  VERSION: 2.2.4(BETA)_20140210

[oracle@CRSimpleLinux orachk]$ ./orachk

This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:S

 

 

orachk did not find the RDBMS binaries on crsimplelinux from environment.

 

Please set RAT_ORACLE_HOME to ORACLE_HOME in current shell to override and re-run it.

eg export RAT_ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

 

預設配置環境變數中,要求RAT_ORACLE_HOME配置為ORACLE_HOME

 

[oracle@CRSimpleLinux orachk]$ export RAT_ORACLE_HOME=$ORACLE_HOME

[oracle@CRSimpleLinux orachk]$ env | grep RAT_ORACLE_HOME

RAT_ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1

 

[oracle@CRSimpleLinux orachk]$ ./orachk

This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:S

(篇幅原因,有省略……

 

Data collections completed. Checking best practices on crsimplelinux.

--------------------------------------------------------------------------------------

(發現問題列表……

 WARNING => net.core.wmem_max Is NOT Configured According to Recommendation

 WARNING => net.core.rmem_max Is NOT Configured According to Recommendation

 WARNING => The number of async IO descriptors is too low (/proc/sys/fs/aio-max-nr)

 WARNING => kernel.shmmax parameter is NOT configured according to recommendation

 WARNING => OSWatcher is not running as is recommended.

 INFO =>    Consider increasing the COREDUMPSIZE size

 

Best Practice checking completed.Checking recommended patches on crsimplelinux.

---------------------------------------------------------------------------------

              RDBMS homes patches summary report

---------------------------------------------------------------------------------

Total patches  Applied on RDBMS Applied on ASM ORACLE_HOME   

---------------------------------------------------------------------------------

Detailed report (html) - /orachk/orachk_crsimplelinux_052014_172942/orachk_crsimplelinux_052014_172942.html –結果報告檔案

UPLOAD(if required) - /orachk/orachk_crsimplelinux_052014_172942.zip

 

在目錄中,包括了一個zip檔案和資料夾,包括了巡檢結果報告。

 

[oracle@CRSimpleLinux orachk]$ ls -l

total 28228

-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat

-rwxr-xr-x 1 oracle oinstall  1407669 Feb 14 03:23 orachk

drwxr-xr-x 6 oracle oinstall    12288 May 20 17:30 orachk_crsimplelinux_052014_172942

-rw-r--r-- 1 oracle oinstall   145482 May 20 17:30 orachk_crsimplelinux_052014_172942.zip

-rwxr-xr-x 1 oracle oinstall  1423197 Feb 11 03:50 raccheck

-rwxr-xr-x 1 oracle oinstall     2541 Feb 11 03:50 readme.txt

-rwxr-xr-x 1 oracle oinstall  4700572 Feb 11 03:50 rules.dat

-rwxr-xr-x 1 oracle oinstall      296 Feb 11 03:50 UserGuide.txt

 

4、報告解析

 

開啟html檔案,可以看到報告。報告頭是oracheck對於系統情況的一個評分,下面顯示的是得到了87分。summary環節中包括了資料庫基本資訊情況。

 

使用oracheck進行系統巡檢

 

首先是對於資料庫需要關注問題,oracheck都給與特別的顯示。在級別上,也有對應不同的型別。目前oracheck支援failwarningerrorinfo幾個型別。

 

使用oracheck進行系統巡檢

 

後面包括Passed的檢查專案。對於提醒的問題內容,我們點選Details,就可以跳轉到詳細資訊部分進行解釋檢查。

 

使用oracheck進行系統巡檢

 

上面提示的內容比較清楚。這個錯誤是針對核心kernal.shmmax引數確定的。在Oracle DBMS中,配置這個引數的原則是按照實體記憶體一般大小進行配置就可以。檢查中發現實際大小:2147483648,建議大小是4088072192。並且提示了詳細解析的MOS文章編號。

oracheck報告內容是結合了Oracle最佳實踐內容而確定的,我們下面可以根據實際情況進行修改。

 

5、重新執行報告

 

按照提示資訊將問題修改之後(修改過程詳見後續文章),最好重新執行oracheck判斷問題是否解決。

 

[oracle@CRSimpleLinux ~]$ cd /orachk/

[oracle@CRSimpleLinux orachk]$ export RAT_ORACLE_HOME=$ORACLE_HOME

[oracle@CRSimpleLinux orachk]$ ./orachk

This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:

 

Collecting - Patches for RDBMS Home

Collecting - number of semaphore operations per semop system call

 

 

Data collections completed. Checking best practices on crsimplelinux.

--------------------------------------------------------------------------------------

 WARNING => OSWatcher is not running as is recommended.

 INFO =>    Consider increasing the COREDUMPSIZE size

(篇幅原因,有省略……

---------------------------------------------------------------------------------

Detailed report (html) - /orachk/orachk_crsimplelinux_052014_180024/orachk_crsimplelinux_052014_180024.html

UPLOAD(if required) - /orachk/orachk_crsimplelinux_052014_180024.zip

 

生成新的報告檔案。

 

[oracle@CRSimpleLinux orachk]$ ls -l

total 28380

-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat

-rwxr-xr-x 1 oracle oinstall  1407669 Feb 14 03:23 orachk

drwxr-xr-x 6 oracle oinstall    12288 May 20 17:30 orachk_crsimplelinux_052014_172942

-rw-r--r-- 1 oracle oinstall   145482 May 20 17:30 orachk_crsimplelinux_052014_172942.zip

drwxr-xr-x 6 oracle oinstall    12288 May 20 18:01 orachk_crsimplelinux_052014_180024

-rw-r--r-- 1 oracle oinstall   143227 May 20 18:01 orachk_crsimplelinux_052014_180024.zip

-rwxr-xr-x 1 oracle oinstall  1423197 Feb 11 03:50 raccheck

-rwxr-xr-x 1 oracle oinstall     2541 Feb 11 03:50 readme.txt

 

開啟報告,可以看到檢驗得分已經提升。

 

使用oracheck進行系統巡檢

 

6、報告對比功能

 

oracheck另一項重要功能是報告對比。一個報告可以提供和之前報告情況的對比,及時發現問題變化因素。

 

 

[oracle@CRSimpleLinux orachk]$ ./orachk -diff orachk_crsimplelinux_052014_172942 orachk_crsimplelinux_052014_180024

Summary

Total   : 23

Missing : 0

New     : 0

Changed : 4

Same    : 19

File comparison is complete. The comparison report can be viewed in: /orachk/orachk_052014172942_052014180024_diff.html

 

報告檔案中,可以看到對比情況和變化提示。

 

使用oracheck進行系統巡檢

 

7、結論

 

oracheck來源於raccheck,從使用方式和功能上沒有過多的變化。oracheck對於Oracle產品、作業系統的支援是比較廣泛的。如果配合自動執行功能,完全可以支援多資料庫伺服器的日常自動化巡檢工作。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27500440/viewspace-2111848/,如需轉載,請註明出處,否則將追究法律責任。

相關文章