Friday 20 April 2018

Exadata Database Machine Health Check Using Exachk Utility


Oracle provides "Exachk" utility to conduct a comprehensive Exadata Health Check on Exadata Database Machine to validate hardware, firmware and configuration.


Exachk Utility is available for Oracle engineered systems such as Exadata (V2 and above), Exalogic, Exalytics, SuperCluster, MiniCluster, ZDLRA & Big Data. Exachk utility performs the following checks:
  • Configuration checks for Compute nodes, Storage cells and InfiniBand Switches
  • Grid Infrastructure, Database and ASM and Operating System software checks
  • MAA Scorecard which conducts an automatic MAA Review
  • Exadata Software Planner, Software prechecks, Exadata and Database Critical Issue alerts


It is recommended to execute the latest exachk at the following situation:
  • Monthly
  • Before any planned maintenance activity
  • Immediately after completion of planned maintenance activity
  • Immediately after an outage or incident


Steps to Exadata Health Exachk Using Exachk Utility

  • Download latest Exachk utility from the MOS note. As of writing the latest Exachk verion available is "12.2.0.1.4_20171212"
Oracle Exadata Database Machine exachk or Health Check (Doc ID 1070954.1)


Note: It is recommended to use latest Exachk to perform Exadata Health Check



  • As root user, create 'Exachk' directory on compute node 1 as follows
[root@dm01db01 ~]# cd /root
[root@dm01db01 ~]# mkdir Exachk

  • Using Winscp Copy the Downloaded Exachk utility from your desktop/laptop to the Exadata compute node 1 under /root/Exachk





  • As root user, Login to Exadata Compute node 1 and unzip the Exachk utility
[root@dm01db01 ~]# cd /root/Exachk/


[root@dm01db01 Exachk]# ls -ltr
total 112576
-rw-r--r-- 1 root root 115158363 Apr 10 05:11 exachk.zip


[root@dm01db01 Exachk]# unzip exachk.zip





  • Ensure that the SSH is setup across all Compute nodes, Storage cells and Ibswitches
[root@dm01db01 Exachk]# dcli -g ~/all_group -l root 'uptime'




To Setup SSH across the cluster, use the following command:


[root@dm01db01 ~]# cd /opt/oracle.SupportTools/
[root@dm01db01 oracle.SupportTools]# ./setup_ssh_eq.sh ~/all_group root welcome1

  • As root user, Execute the Exachk utility
[root@dm01db01 ~]# cd /root/Exachk/


[root@dm01db01 Exachk]# ls -ltr


[root@dm01db01 Exachk]# ./exachk





Depending on the Exadata Cluster Size and number of databases it may take several minutes to complete Exachk execution.
  • Using Winscp, copy the Exachk zip file and/or html file to your desktop/laptop to review
  • Open the html file, review it and take necessary action if necessary
  • Under the table of contents there are different component listed. Look out for the CRITICAL and FAIL components.
Click on the 'view' hyperlink for more details and the recommendation to fix the problem.




MAA Scorecard




Conclusion

In this article we have learned to perform complete Exadata Stack Health Check using Exachk utility. Exachk Utility is available for Oracle engineered systems such as Exadata (V2 and above), Exalogi, Exalytics, SuperCluster, MiniCluster, ZDLRA & Big Data.

Saturday 14 April 2018

Exadata - Configure Compute Node and Storage Cell SMTP Email Notification

On Exadata Database Machine you can configure the following Compute Node and Storage Cell attributes to setup the database server and Storage cells to send notifications about alerts.
  • smtpServer
  • smtpFrom
  • smtpFromAddr
  • smtpToAddr
  • snmpSubscriber
  • notificationMethod
  • notificationPolicy

In this article we will demonstrate how to setup the database server and Storage cells to send notifications about alerts

Compute Nodes:


Configure Compute nodes SMTP email notification for alerts. This can be accomplished using dbmcli alter dbserver command


# Compute node 1


DBMCLI>alter dbserver smtpFrom='Exadata - dm01db01'

DBMCLI>alter dbserver smtpFromAddr='dbmadmin@dm01db01.netsoftmate.com'
DBMCLI>alter dbserver smtpToAddr='oradba@netsoftmate.com'
DBMCLI>alter dbserver smtpServer='smtp.server'
DBMCLI>alter dbserver snmpSubscriber=((host=192.168.10.1,port=162,community=public,type=ASR))
DBMCLI>alter dbserver notificationPolicy='critical,warning,clear'
DBMCLI>alter dbserver notificationMethod='mail,snmp'
DBMCLI>alter dbserver validate mail


Or you can use the following command


DBMCLI>alter dbserver smtpFrom='Exadata - dm01db01', smtpFromAddr='dbmadmin@dm01db01.netsoftmate.com', smtpToAddr='oradba@netsoftmate.com', smtpServer='smtp.server', snmpSubscriber='host=192.168.10.1,port=162,community=public,type=ASR', notificationPolicy='critical,warning,clear', notificationMethod='mail,snmp'


DBMCLI>alter dbserver validate mail


*** Repeat the above step for all the Compute nodes in the cluster.


# verify


# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | grep smtpFrom"

# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | grep smtpFromAddr"
# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | grep smtpToAddr"
# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | grep smtpServer"
# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | grep notificationMethod"


or use the following command


# dcli -g ~/dbs_group -l root "dbmcli -e 'list dbserver detail' | egrep '(smtpFrom|smtpFromAddr|smtpToAddr|smtpServer|notificationMethod)'"




Storage Cells:

Configure Compute nodes SMTP email notification for alerts. This can be accomplished using cellcli alter cell command

# Storage Cell 01


CELLCLI>alter cell smtpFrom='Exadata - dm01cel01'

CELLCLI>alter cell smtpFromAddr='celladmin@dm01cel01.netsoftmate.com'
CELLCLI>alter cell smtpToAddr='oradba@netsoftmate.com'
CELLCLI>alter cell smtpServer='smtp.server'
CELLCLI>alter cell snmpSubscriber=((host=192.168.10.1,port=162,community=public,type=ASR))
CELLCLI>alter dbserver notificationPolicy='critical,warning,clear'
CELLCLI>alter cell notificationMethod='mail,snmp'
CELLCLI>alter cell validate mail


or you can also use the following command


CELLCLI>alter cell smtpFrom='Exadata - dm01cel01', smtpFromAddr='celladmin@dm01cel01.netsoftmate.com', smtpToAddr='oradba@netsoftmate.com', smtpServer='smtp.server', notificationMethod='mail,snmp'


CELLCLI>alter cell validate mail

# Verify

# dcli -g ~/cell_group -l root "dbmcli -e 'list cell detail' | grep smtpFrom"

# dcli -g ~/cell_group -l root "dbmcli -e 'list cell detail' | grep smtpFromAddr"
# dcli -g ~/cell_group -l root "dbmcli -e 'list cell detail' | grep smtpToAddr"
# dcli -g ~/cell_group -l root "dbmcli -e 'list cell detail' | grep smtpServer"
# dcli -g ~/cell_group -l root "dbmcli -e 'list cell detail' | grep notificationMethod"


or you can use the following command


# dcli -g ~/cell_group -l root "cellcli -e 'list cell detail' | egrep '(smtpFrom|smtpFromAddr|smtpToAddr|smtpServer|notificationMethod)'"


*** Repeat the above step for all the Storage Cells in the cluster.



Conclusion

In this article we have learned how to Configure Compute nodes and Storage Cell SMTP email notification for alerts.



Friday 13 April 2018

Exadata - Replace Failed Internal USB Drive on Exadata Storage Cell

While working on Exadata Storage cell patching, the patching failed due to failed internal USB drive on a storage cell.

Oracle uses internal USB drive to backup Exadata Storage cell automatically. We don't have to backup Storage cell manually.

In this article I will demonstrate how to replace a failed USB drive an Exadata Storage cell

  • You will receive an automated smtp alert (if configured) similar to below.



  • You can also use the following command to check for USB drive failure

[root@dm01cel01 ~]# cellcli -e list alerthistory
         1_1     2018-04-10T18:25:42-05:00       warning         "Internal USB status is not present.  Affected USB Slots : 0"

  • You can also use the following ILOM command to check for USB drive failure

[root@dm01cel01 ~]# ssh dm01cel01-ilom
Password: *******


Oracle(R) Integrated Lights Out Manager



Version 3.2.10.22.a r121524



Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.


Warning: HTTPS certificate is set to factory default.



Hostname: dm01cel01-ilom



-> show /SYS/MB/USB0


  • Open an SR with Oracle if an ASR is already generated
  • Upload sundgia.sh and ILOM Snapshot to the SR for investigation
  • Oracle confirms the that USB drive is faulted
  • Oracle opens a Field task
  • Oracle dispatch team contacts the SR owner with the hardware dispatch details
  • Confirm the Hardware replacement schedule over email and/or SR
  • Schedule the Hardware replacement
  • Oracle FE arrives at the data center with the new USB drive
  • Shutdown the storage cell by following the steps from the MOS below

Steps to shut down or reboot an Exadata storage cell without affecting ASM (Doc ID 1188080.1)
  • Oracle FE replaces the faulty USB drive and power up the storage cell
  • Confirm that the USB drive is good

-> show /SYS/MB/USB0


 /SYS/MB/USB0

    Targets:


    Properties:

        type = USB Port
        fault_state = OK
        clear_fault_action = (none)


    Commands:

        cd
        set
        show


->



[root@dm01cel01 ~]# cellcli -e list alerthistory

         1_2     2018-04-11T02:45:49-05:00       clear           "Internal USB status is back to normal.  Affected USB Slots : 0"

  • You will receive an automated smtp alert (if configured) similar to below that the USB status is back to normal




Conclusion

In this article we have learned how to replace a faulty USB drive in Exadata Storage cell. Oracle uses USB drive to backup Exadata Storage cell automatically. We don't have to backup Storage cell manually.

Comparing Oracle Database Appliance X8-2 Model Family

September 2019 Oracle announced Oracle Database Appliance X8-2 (Small, Medium and HA). ODA X8-2 comes with more computing resources com...