Skip to content

Latest commit

 

History

History
350 lines (233 loc) · 8.7 KB

8.6.Monitor-OracleDB.md

File metadata and controls

350 lines (233 loc) · 8.7 KB

Giám sát Oracle Databases on CentOS 7.

1. Cài đặt và tạo DB Oracle trên client check_mk.

1.1. Yêu cầu máy chủ.

  • Đã cài đặt check_mk agent

  • Đã cài đặt GNOME Desktop

  • RAM 3GB

  • 1 CPU

  • SWAP 4GB

  • HDD 100 GB

1.2. Cài đặt các gói phụ trợ và cấu hình để cài đặt Oracle.

  • Update to lastest version packages :

    yum update -y
  • Install required packages.

    yum install -y binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64 zip unzip
  • Chỉnh sửa lại các thông số kernel :

    MEMTOTAL=$(free -b | sed -n '2p' | awk '{print $2}')
    SHMMAX=$(expr $MEMTOTAL / 2)
    SHMMNI=4096
    PAGESIZE=$(getconf PAGE_SIZE)
    
    cat >> /etc/sysctl.conf << EOF
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmmax = $SHMMAX
    kernel.shmall = $(expr \( $SHMMAX / $PAGESIZE \) \* \( $SHMMNI / 16 \))
    kernel.shmmni = $SHMMNI
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 9000 65500
    net.core.rmem_default = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
    EOF
  • Kiểm tra lại các thông số vừa sửa đổi :

    sysctl -p 
  • Tạo User và Group cho Oracle Database Service.

    i=54321; for group in oinstall dba backupdba oper dgdba kmdba; do
    groupadd -g $i $group; i=$(expr $i + 1)
    done
    
    useradd -u 1200 -g oinstall -G dba,oper,backupdba,dgdba,kmdba -d /home/oracle oracle
    passwd oracle 
    
    mkdir -p /u01/app/oracle 
    chown -R oracle:oinstall /u01/app
    chmod -R 775 /u01
    
    vi /etc/pam.d/login
    
    # Sửa đổi các thông số như sau :
    
    session    required     pam_selinux.so open
    session    required     pam_namespace.so
    session    required     pam_limits.so
    session    optional     pam_keyinit.so force revoke
    session    include      system-auth
    -session   optional     pam_ck_connector.so
    
    vi /etc/security/limits.conf
    
    # thêm vào cuối file :
    
    oracle  soft  nproc   2047
    oracle  hard  nproc   16384
    oracle  soft  nofile  1024
    oracle  hard  nofile  65536
    oracle  soft  stack   10240
    oracle  hard  stack   32768
  • Đăng nhập vào tài khoản Oracle và chỉnh sửa biến môi trường :

    su - oracle
    vi ~/.bash_profile
    
    # thêm vào cuối file :
    
    umask 022
    export ORACLE_BASE=/u01/app/oracle

1.3. Tải và cài đặt Oracle.

  • Tải file cài đặt Oracle 12C tại đây

  • Sau khi dowload về xong chúng ta dùng FTP hoặc SFTP để chuyển file đến client check_mk rồi tiến hành giải nén :

    unzip linuxx64_12201_database.zip
  • Set DISPLAY để tiến hành cài đặt.

    DISPLAY=:0.0 ; export DISPLAY
  • Tiến hành cài đặt :

    cd database
    ./runInstaller
  • Các bước cài đặt tiếp theo tham khảo tại serverworld . Do quá trình cài đặt này không chụp lại được ảnh, tuy nhiên thiết lập theo các bước trên serverworld là có thể cài đặt thành công.

  • Sau khi quá trình cài đặt kết thúc , chạy các lệnh sau dưới quyền root :

    su -
    /u01/app/oraInventory/orainstRoot.sh
    /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
  • Đăng nhập vào user Oracle và tạo biến môi trường để sử dụng Oracle :

    su - oracle
    vi ~/.bash_profile
    
    # thêm vào cuối file :
    
    export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
    export PATH=$PATH:$ORACLE_HOME/bin
    
    source ~/.bash_profile

1.3. Tạo Database.

  • Sử dụng user Oracle sau đó dùng lệnh sau để tạo DB :

    su - oracle
    dbca
  • Đợi một lúc thì giao diện sẽ hiện lên chúng ta sẽ thao tác như sau :

  • Đầu tiên chọn create database rồi next :

ora-c-1

  • Chọn Advanded configuration rồi Next :

ora-c-2

  • Chọn [General Purpose ***] và chọn next.

ora-c-3

  • Thiết lập Grobal Database name và SID giống như hình bên dưới.

ora-c-4

  • Để mặc định rồi Next.

ora-c-5

  • Để mặc định rồi Next.

ora-c-6

  • Tạo một LISTENER mới như sau :

ora-c-7

  • Để mặc định rồi chọn Next :

ora-c-8

  • Cấu hình bộ nhớ rồi chọn Next :

ora-c-9

  • Để mặc định rồi Next :

ora-c-10

  • Đặt pass rồi next :

ora-c-11

  • Để mặc định rồi Next :

ora-c-12

  • Chọn Finish để kết thúc .

ora-c-13

  • Đợi để quá trình tạo kết thúc chúng ta tiến hành thêm SID vào biến môi trường như sau :

    su - oracle
    vi /etc/oratab
    
    # Thay đổi như sau :
    
    test:/u01/app/oracle/product/12.2.0/dbhome_1:Y
    
    vi ~/.bash_profile
    
    # thêm vào cuối file :
    
    export ORACLE_SID=db01
    
    source ~/.bash_profile
    
  • Nếu dùng firewalld vui lòng mở port 5500 :

    firewall-cmd --add-port=5500/tcp --permanent
    firewall-cmd --reload
  • Tạo user để monitor DB Oracle.

    sqlplus / as sysdba
    create user check_mk identified by monitoring;
    grant connect, select_catalog_role to check_mk;

2. Cấu hình để monitor Oracle DB.

2.1. Trên client check_mk.

  • Tạo file cấu hình :

    vi /etc/check_mk/mk_oracle.cfg
  • Thêm vào nội dung như sau :

    ASMUSER='test:oracle:sysdba'
    # tên instane là 'test' đây là SID mà mình đã tạo lúc tạo DB.
    DBUSER='check_mk:monitoring'
    # user và pass vừa tạo ở bước cuối ở phần 1.3. Tạo DB.
  • Phân quyền cho file /etc/check_mk/mk_oracle.cfg :

    chmod 777 /etc/check_mk/mk_oracle.cfg
  • Sao chép plugin mk_oracle tại đường dẫn /opt/omd/versions/1.4.0p19.cre/share/check_mk/agents/plugins/apache_status trên check_mk server tới client check_mk lưu tại /usr/lib/check_mk_agent/plugins/ :

  • Phân quyền cho plugin vừa coppy sang :

    chmod +x /usr/lib/check_mk_agent/plugins/mk_oracle
  • Thiết lập $MK_CONFDIR :

    export MK_CONFDIR=/etc/check_mk
  • Coppy file sqlnet.ora đến $MK_CONFDIR :

    cp /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/sqlnet.ora /ect/check_mk
  • Kiểm tra plugin :

    /usr/lib/check_mk_agent/plugins/mk_oracle -t
  • Kết quả thu được như sau :

    [root@localhost ~]# /usr/lib/check_mk_agent/plugins/mk_oracle -t
    <<<oracle_instance>>>
    <<<oracle_sessions>>>
    <<<oracle_logswitches>>>
    <<<oracle_undostat>>>
    <<<oracle_recovery_area>>>
    <<<oracle_processes>>>
    <<<oracle_recovery_status>>>
    <<<oracle_longactivesessions>>>
    <<<oracle_dataguard_stats>>>
    <<<oracle_performance>>>
    <<<oracle_locks>>>
    <<<oracle_tablespaces>>>
    <<<oracle_rman>>>
    <<<oracle_jobs>>>
    <<<oracle_ts_quotas>>>
    <<<oracle_resumable>>>
    <<<oracle_instance>>>
    <<<oracle_processes>>>
    <<<oracle_asm_diskgroup>>>
    -----------------------------------------------
    Operating System: Linux
    Logincheck to Instance: test  Version: 12.2
    Login ok User: CHECK_MK on localhost.localdomain Instance test
    SYNC_SECTIONS= instance sessions logswitches undostat recovery_area processes recovery_status longactivesessions dataguard_stats performance locks
    ASYNC_SECTIONS= tablespaces rman jobs ts_quotas resumable

2.2. Cấu hình trên WATO.

  • Tại WATO chọn Host rồi chọn Discovery :

ora-w-1

  • Sau đó chọn Start

ora-w-2

  • Đợi quá trình Discovery kết thúc chọn Finish rồi Active Change sau đó kiểm tra lại kết quả thu được :

ora-w-3