2479 lines
106 KiB
Plaintext
2479 lines
106 KiB
Plaintext
|
|
Exadata Commands
|
|||
|
|
|
|||
|
|
useradd
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l oracle -g dbs_group_pr01pimi --serial " echo '@/export/ora_stage/vishal/sqlscripts/flush_sql 1j6sgrbmy4592'|sqlplus -s / as sysdba" |grep 'successfully completed'
|
|||
|
|
dcli -l oracle -g dbs_group_bt01pimi --serial " echo '@/export/ora_stage/vishal/sqlscripts/flush_sql 1j6sgrbmy4592'|sqlplus -s / as sysdba" |grep 'successfully completed'
|
|||
|
|
|
|||
|
|
dcli -l oracle -c dm02db04,dm02db05,dm02db06 --serial " echo '@/export/ora_stage/vishal/sqlscripts/flush_sql 5f4d1xd2uftj1'|sqlplus -s / as sysdba" |grep 'successfully completed'
|
|||
|
|
dcli -l oracle -c dm02db04,dm02db05,dm02db06 --serial " echo 'alter system flush shared_pool;'|sqlplus -s as sysdba"|grep 'successfully completed'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#######################################
|
|||
|
|
# Exadata Cell Serice Startup Time
|
|||
|
|
#######################################
|
|||
|
|
# CELLSRVC Cell Server process
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'cellsrv 100' |grep -v grep"
|
|||
|
|
|
|||
|
|
# MS (Monitoring Server) process
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'cellrsomt' |grep -v grep"
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'cellrsmmt' |grep -v grep"
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'cellrsbkm' |grep -v grep"
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'oc4j.jar' |grep -v grep"
|
|||
|
|
|
|||
|
|
# RS (Restart Server) process
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'cellrssrm' |grep -v grep"
|
|||
|
|
# OSWatcher
|
|||
|
|
dcli -l root -g ~/cell_group "ps -ef|grep 'OSWatcher.sh' |grep -v grep"
|
|||
|
|
|
|||
|
|
|
|||
|
|
#############################
|
|||
|
|
# Exadata Hardware Checks
|
|||
|
|
#############################
|
|||
|
|
|
|||
|
|
#-- Get LED Light Status
|
|||
|
|
dcli -l root -g all_group '/usr/bin/ipmitool sunoem led get all |egrep -v "OFF|na|OK.*ON" '
|
|||
|
|
|
|||
|
|
#-- Cell level checks
|
|||
|
|
dcli -l root -g cell_group " cellcli -e LIST CELL ATTRIBUTES name,cellNumber,status,fanStatus,powerStatus,temperatureStatus,cellsrvStatus,msStatus,rsStatus,releaseVersion,releaseTrackingBug"
|
|||
|
|
#-- 11.2.3.2.0 onwards
|
|||
|
|
dcli -l root -g cell_group " cellcli -e LIST CELL ATTRIBUTES name,cellNumber,status,flashCacheMode,fanStatus,powerStatus,temperatureStatus,cellsrvStatus,msStatus,rsStatus,releaseVersion,releaseTrackingBug"
|
|||
|
|
|
|||
|
|
#-- Physical HardDisks
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,physicalRPM,physicalInsertTime,errorcount,errHardReadCount,errHardWriteCount,errMediaCount,errOtherCount,errSeekCount,lastFailureReason where disktype=harddisk AND status != 'normal' \" "
|
|||
|
|
#-- Physical HardDisks LUNs
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=harddisk AND status != 'normal' \" "
|
|||
|
|
|
|||
|
|
#-- FlashDisks
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,lastFailureReason where disktype=flashdisk AND status != 'normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=flashdisk AND status != 'normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST lun ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=flashdisk and physicalDrives='' \" "
|
|||
|
|
|
|||
|
|
#-- Cell Disk Checks
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST CELLDISK ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where disktype=harddisk and status !='normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST CELLDISK ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where disktype=flashdisk and status !='normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST CELLDISK ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where status !='normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST CELLDISK ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where disktype=harddisk and freespace !=0 \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST CELLDISK ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where disktype=flashdisk and freespace !=0 \" "
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Grid Disk Checks
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,cachingPolicy,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where status != 'active' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,cachingPolicy,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where asmmodestatus != 'ONLINE' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,cachingPolicy,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where asmdeactivationoutcome != 'Yes' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,cachingPolicy,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where cachingPolicy != 'default' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,cachingPolicy,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where name like '.*RECO.*' \" and cachingPolicy != 'default' \" "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where asmdeactivationoutcome != 'Yes' \" "
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- FlashCache
|
|||
|
|
dcli -l root -g cell_group " cellcli -e 'LIST flashcache attributes name,status,size,creationTime,degradedCelldisks,effectiveCacheSize ' "
|
|||
|
|
|
|||
|
|
#-- FlashLog
|
|||
|
|
dcli -l root -g cell_group " cellcli -e 'LIST flashlog attributes name,status,size,creationTime,degradedCelldisks,effectiveSize,efficiency ' "
|
|||
|
|
|
|||
|
|
#-- Battery Checks
|
|||
|
|
#-- Check current battery temperature (Should be < 60 C)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep Temperature:'
|
|||
|
|
|
|||
|
|
#-- Check current Battery Charge Capacity (Should be > 800 mAh)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuCapacityInfo -a0 | grep "Full Charge" '
|
|||
|
|
|
|||
|
|
#-- Check current Battery erors (Should be < 10%)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | grep "Max Error"'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- FlashCache
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,cachingPolicy where name like '.*RECO.*' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,cachingPolicy where cachingPolicy != 'default' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST METRICCURRENT WHERE name = 'GD_BY_FC_DIRTY' and metricObjectName like '.*RECO.*' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST METRICCURRENT WHERE name = 'GD_IO_BY_R_LG' and metricObjectName like '.*RECO.*' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST METRICCURRENT WHERE name = 'GD_IO_BY_R_SM' and metricObjectName like '.*RECO.*' \" "
|
|||
|
|
|
|||
|
|
|
|||
|
|
#############################
|
|||
|
|
# Exadata Version Checks
|
|||
|
|
#############################
|
|||
|
|
|
|||
|
|
#-- Exadata Software
|
|||
|
|
dcli -l root -g all_group imageinfo --image-version
|
|||
|
|
dcli -l root -g all_group imageinfo --image-status
|
|||
|
|
dcli -l root -g all_group imageinfo --kernel-version
|
|||
|
|
dcli -l root -g cell_group imageinfo --cell-version
|
|||
|
|
dcli -l root -g cell_group imageinfo --cell-rpm-version
|
|||
|
|
|
|||
|
|
#-- Kernel Version
|
|||
|
|
dcli -l root -g all_group 'uname -r'
|
|||
|
|
dcli -l root -g all_group 'rpm -q kernel'
|
|||
|
|
dcli -l root -g all_group 'rpm -q kernel-uek'
|
|||
|
|
|
|||
|
|
#-- Check Firmwares
|
|||
|
|
dcli -l root -g all_group '/opt/oracle.SupportTools/CheckHWnFWProfile -d ' > /tmp/CheckHWnFWProfile.txt
|
|||
|
|
|
|||
|
|
for i in SystemModel BIOSVersion ILOMVersion LightsOutFirmwareVersion \
|
|||
|
|
DiskControllerModel DiskControllerFirmwareRevision DiskControllerBatteryBackupUnitVersion DiskControllerPCIeSlotWidth \
|
|||
|
|
MinimumSASExpanderFirmware SASBackplaneFirmwareVersion \
|
|||
|
|
BackplaneFirmwareVersion InfinibandHCAChipRevision InfinibandHCAFirmwareVersion InfinibandHCAHardwareRev InfinibandHCAPCIeSlotWidth \
|
|||
|
|
MinimumCPLDFirmware \
|
|||
|
|
FansAndFanCount PowersuppliesAndCount \
|
|||
|
|
PhysicalMemoryGB ProcessorInformation
|
|||
|
|
do
|
|||
|
|
echo "-------------- $i ---------------------"
|
|||
|
|
grep -A1 $i /tmp/CheckHWnFWProfile.txt |egrep -v "^--|$i"
|
|||
|
|
done |less
|
|||
|
|
|
|||
|
|
# For 11.2.3.3.0 and above
|
|||
|
|
for i in Server_Model BIOSVendor BIOSVersion ProcessorModel SocketCount ILOMVersion PhysicalMemoryGB \
|
|||
|
|
DiskControllerModel DiskControllerPCIeSlotWidth DiskControllerSilicon DiskControllerFirmwareRevision \
|
|||
|
|
DiskControllerPCIeSlotNumber DiskControllerBatteryBackupUnitVersion FanCount Powersupply_Info \
|
|||
|
|
InfinibandHCA InfinibandHCAImageType InfinibandHCAPCIeSlotSpeed InfinibandHCAPCIeSlotWidth InfinibandHCAChipRevision \
|
|||
|
|
InfinibandHCADeviceID InfinibandHCAFirmwareVersion InfinibandHCAPCIeSlotNumber InfinibandHCAHardwareRev InfinibandHCAPSID \
|
|||
|
|
Ether10GCount Ether10GModel
|
|||
|
|
do
|
|||
|
|
echo "-------------- $i ---------------------"
|
|||
|
|
grep -h $i /tmp/CheckHWnFWProfile.txt
|
|||
|
|
done |less
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Check FDOM version
|
|||
|
|
grep MARVELL /tmp/CheckHWnFWProfile.txt
|
|||
|
|
grep /dev/ /tmp/CheckHWnFWProfile.txt
|
|||
|
|
#-- Check Disks firmware
|
|||
|
|
egrep 'SAS|SATA' /tmp/CheckHWnFWProfile.txt
|
|||
|
|
|
|||
|
|
#############################
|
|||
|
|
# Exadata Patching Checks
|
|||
|
|
#############################
|
|||
|
|
|
|||
|
|
#-- Check startup check failures
|
|||
|
|
dcli -l root -g all_group "cat /var/log/cellos/validations.log |egrep 'FAILED|ERROR'"
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Alert Log
|
|||
|
|
#####################
|
|||
|
|
less $ORACLE_BASE/diag/rdbms/`echo $ORACLE_SID|cut -b 1-8`/$ORACLE_SID/trace/alert_$ORACLE_SID.log
|
|||
|
|
dcli -l oracle -g dbs_group 'egrep -A10 "Aug 01.*2012" $ORACLE_BASE/diag/rdbms/`echo $ORACLE_SID|cut -b 1-8`/$ORACLE_SID/trace/alert_$ORACLE_SID.log |egrep "2012|ORA-00600|trc" | grep -B1 ORA- |egrep -v "^--" '
|
|||
|
|
|
|||
|
|
# Search listener Log on Exadata
|
|||
|
|
#####################################
|
|||
|
|
less $ORACLE_BASE/diag/tnslsnr/`hostname -s`/listener/trace/listener.log
|
|||
|
|
dcli -l oracle -g dbs_group "grep 31-JUL-2012 /u01/app/oracle/diag/tnslsnr/\`hostname -s\`/listener/trace/listener.log |egrep 'ORA-00060'"
|
|||
|
|
|
|||
|
|
########################
|
|||
|
|
# Compute node details
|
|||
|
|
########################
|
|||
|
|
|
|||
|
|
|
|||
|
|
DBMCLI> describe dbserver
|
|||
|
|
name modifiable
|
|||
|
|
bbuStatus
|
|||
|
|
comment modifiable
|
|||
|
|
coreCount
|
|||
|
|
cpuCount
|
|||
|
|
diagHistoryDays modifiable
|
|||
|
|
emailFormat modifiable
|
|||
|
|
emailSubscriber modifiable
|
|||
|
|
fanCount
|
|||
|
|
fanStatus
|
|||
|
|
iaasIdleInUse modifiable
|
|||
|
|
iaasMode modifiable
|
|||
|
|
iaasReason modifiable
|
|||
|
|
id
|
|||
|
|
interconnectCount
|
|||
|
|
interconnect1 modifiable
|
|||
|
|
interconnect2 modifiable
|
|||
|
|
interconnect3 modifiable
|
|||
|
|
interconnect4 modifiable
|
|||
|
|
interconnect5 modifiable
|
|||
|
|
interconnect6 modifiable
|
|||
|
|
interconnect7 modifiable
|
|||
|
|
interconnect8 modifiable
|
|||
|
|
ipaddress1
|
|||
|
|
ipaddress2
|
|||
|
|
ipaddress3
|
|||
|
|
ipaddress4
|
|||
|
|
ipaddress5
|
|||
|
|
ipaddress6
|
|||
|
|
ipaddress7
|
|||
|
|
ipaddress8
|
|||
|
|
kernelVersion
|
|||
|
|
locatorLEDStatus
|
|||
|
|
location modifiable
|
|||
|
|
makeModel
|
|||
|
|
metricCollection modifiable
|
|||
|
|
metricHistoryDays modifiable
|
|||
|
|
msVersion
|
|||
|
|
notificationMethod modifiable
|
|||
|
|
notificationPolicy modifiable
|
|||
|
|
pendingCoreCount modifiable
|
|||
|
|
powerCount
|
|||
|
|
powerStatus
|
|||
|
|
realmName modifiable
|
|||
|
|
releaseImageStatus
|
|||
|
|
releaseVersion
|
|||
|
|
releaseTrackingBug
|
|||
|
|
smtpFrom modifiable
|
|||
|
|
smtpFromAddr modifiable
|
|||
|
|
smtpPort modifiable
|
|||
|
|
smtpPwd modifiable
|
|||
|
|
smtpServer modifiable
|
|||
|
|
smtpToAddr modifiable
|
|||
|
|
smtpUser modifiable
|
|||
|
|
smtpUseSSL modifiable
|
|||
|
|
snmpEngineID modifiable
|
|||
|
|
snmpSubscriber modifiable
|
|||
|
|
snmpUser modifiable
|
|||
|
|
status
|
|||
|
|
syslogConf modifiable
|
|||
|
|
temperatureReading
|
|||
|
|
temperatureStatus
|
|||
|
|
traceLevel modifiable
|
|||
|
|
upTime
|
|||
|
|
msStatus
|
|||
|
|
rsStatus
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g dbs_group " dbmcli -e 'list dbserver attributes name,coreCount,cpuCount,pendingCoreCount' "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
########################
|
|||
|
|
# Cell Details
|
|||
|
|
########################
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST CELL ATTRIBUTES name,cellNumber,status,flashCacheMode,flashCacheCompress,fanStatus,powerStatus,temperatureStatus,cellsrvStatus,msStatus,rsStatus,releaseVersion,releaseTrackingBug ' "
|
|||
|
|
|
|||
|
|
# FlashCache Compression
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
#If disabled, then value is FALSE or NULL
|
|||
|
|
dcli -l root -g cell_group "cellcli -e LIST CELL attributes name,flashCacheCompress "
|
|||
|
|
dcli -l root -g cell_group 'grep flashCacheCompress $OSSCONF/cell_disk_config.xml'
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Physical Disk Details
|
|||
|
|
########################
|
|||
|
|
cellcli -e ' DESCRIBE PHYSICALDISK '
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,lastFailureReason where disktype=harddisk AND status != 'normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,lastFailureReason where disktype=flashdisk AND status != 'normal' \" "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,physicalSize,errCmdTimeoutCount,errHardReadCount,errHardWriteCount,errMediaCount,errOtherCount,errSeekCount,errorCount,notPresentSince,lastFailureReason where disktype=harddisk ' "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,lastFailureReason where disktype=flashdisk ' "
|
|||
|
|
|
|||
|
|
# Should display count=0
|
|||
|
|
dcli -l root -g dbs_group /opt/MegaRAID/MegaCli/MegaCli64 -PdList -a0 | grep "Predictive Failure Count"
|
|||
|
|
|
|||
|
|
|
|||
|
|
# LUN Details
|
|||
|
|
#####################
|
|||
|
|
cellcli -e ' DESCRIBE LUN '
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=harddisk AND status != 'normal' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=flashdisk AND status != 'normal' \" "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=harddisk "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e LIST LUN ATTRIBUTES name,status,diskType,deviceName,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=flashdisk "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# CELL DISK Details
|
|||
|
|
####################
|
|||
|
|
cellcli -e ' DESCRIBE CELLDISK '
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST celldisk ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where status !='normal' \" "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST celldisk ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel ' "
|
|||
|
|
|
|||
|
|
|
|||
|
|
# GridDisk Details
|
|||
|
|
##################
|
|||
|
|
cellcli -e ' DESCRIBE griddisk '
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where status != 'active' \" "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,status,diskType,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment where asmmodestatus != 'ONLINE' \" "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST GRIDDISK ATTRIBUTES name,status,diskType,size,offset,errorcount,creationTime,asmmodestatus,asmdeactivationoutcome,comment ' "
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e \"LIST GRIDDISK ATTRIBUTES name,cachingPolicy where cachingPolicy = 'none' \" "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# FlashDisk Details
|
|||
|
|
###################
|
|||
|
|
|
|||
|
|
#If disabled, then value is FALSE or NULL
|
|||
|
|
dcli -l root -g cell_group "cellcli -e LIST CELL attributes name,flashCacheCompress "
|
|||
|
|
dcli -l root -g cell_group 'grep flashCacheCompress $OSSCONF/cell_disk_config.xml'
|
|||
|
|
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST PHYSICALDISK ATTRIBUTES name,status,diskType,physicalSize,errorcount,physicalInsertTime,lastFailureReason where disktype=flashdisk ' "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST lun ATTRIBUTES name,status,diskType,raidLevel,isSystemLun,lunSize,physicalDrives,lunWriteCacheMode,errorCount where disktype=flashdisk ' "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST celldisk ATTRIBUTES name,status,diskType,lun,size,freespace,errorcount,creationTime,interleaving,raidlevel where disktype=flashdisk ' "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST flashcache attributes name,status,size,creationTime,degradedCelldisks,effectiveCacheSize ' "
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST flashlog attributes name,status,size,creationTime,degradedCelldisks,effectiveSize,efficiency ' "
|
|||
|
|
|
|||
|
|
# FlashCache Contents
|
|||
|
|
#######################
|
|||
|
|
dcli -l root -g cell_group " cellcli -e ' LIST FLASHCACHECONTENT ATTRIBUTES dbUniqueName,dbID,objectNumber,tableSpaceNumber,cachedSize,cachedKeepSize,hitCount,missCount,hoursToExpiration ' "
|
|||
|
|
|
|||
|
|
# Reset FlashCache
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_flashcache(Reset,0,0,0)"
|
|||
|
|
|
|||
|
|
|
|||
|
|
# For Exadata Server Software 11.2.3.2.0 onwards
|
|||
|
|
################################################
|
|||
|
|
#-- Flush FlashCache
|
|||
|
|
CELLCLI> alter flashcache all fush
|
|||
|
|
|
|||
|
|
#-- Convert FlashCache Mode
|
|||
|
|
CELLCLI> alter flashcache all fush
|
|||
|
|
CELLCLI> drop flashcache
|
|||
|
|
CELLCLI> list flashcache
|
|||
|
|
CELLCLI> alter cell flashCacheMode=WriteThrough
|
|||
|
|
or
|
|||
|
|
CELLCLI> alter cell flashCacheMode=WriteBack
|
|||
|
|
CELLCLI> create flashcache all
|
|||
|
|
CELLCLI> list flashcache
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# How to find which cell node is a SQL or session is running on and what it is doing?
|
|||
|
|
#######################################################################################
|
|||
|
|
cellcli -e ' LIST ACTIVEREQUEST where dbName = mydb and instanceNumber = 1 '
|
|||
|
|
cellcli -e ' LIST ACTIVEREQUEST where sessionID=1271 and sessionSerNumber=31026 detail '
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Serial Numbers
|
|||
|
|
##########################
|
|||
|
|
#-- Exadata Rack serial number
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP system_identifier"
|
|||
|
|
#-- Exadata Compute/Cell node - serial number
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SYS product_serial_number"
|
|||
|
|
#-- Rack level and Individual Serial Numbers
|
|||
|
|
/opt/oracle.SupportTools/CheckHwnFWProfile -S
|
|||
|
|
|
|||
|
|
|
|||
|
|
#################################################################
|
|||
|
|
# IPMI Tool (ILOM) Commands
|
|||
|
|
#################################################################
|
|||
|
|
|
|||
|
|
###############################
|
|||
|
|
#-- ILOM (SP - Service Processor) Commands
|
|||
|
|
###############################
|
|||
|
|
/usr/bin/ipmitool sunoem cli "reset -script /SP"
|
|||
|
|
|
|||
|
|
#-- Restart ILOM
|
|||
|
|
cellcli -e ' alter cell restart bmc '
|
|||
|
|
or
|
|||
|
|
/usr/bin/ipmitool sunoem cli "reset -script /SP"
|
|||
|
|
|
|||
|
|
#-- Force restarting ILOM
|
|||
|
|
/usr/bin/ipmitool bmc reset cold
|
|||
|
|
|
|||
|
|
#-- If still unable to restart ILOM, try SSH to ILOM and issue follwoing.
|
|||
|
|
reset -script /SP
|
|||
|
|
|
|||
|
|
###############################
|
|||
|
|
# ILOM Server Commands
|
|||
|
|
###############################
|
|||
|
|
/usr/bin/ipmitool sunoem cli "reset -script /SYS"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "stop -script /SYS"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "start -script /SYS"
|
|||
|
|
#-- Server Power (chassis power Commands: status, on, off, cycle, reset, diag, soft)
|
|||
|
|
/usr/bin/ipmitool power status
|
|||
|
|
/usr/bin/ipmitool power on
|
|||
|
|
/usr/bin/ipmitool power soft
|
|||
|
|
/usr/bin/ipmitool power off
|
|||
|
|
/usr/bin/ipmitool power cycle
|
|||
|
|
/usr/bin/ipmitool power reset
|
|||
|
|
/usr/bin/ipmitool power diag
|
|||
|
|
|
|||
|
|
/usr/bin/ipmitool chassis power off
|
|||
|
|
|
|||
|
|
|
|||
|
|
###############################
|
|||
|
|
# ILOM Console
|
|||
|
|
###############################
|
|||
|
|
#-- Start Console
|
|||
|
|
start -script /SP/Console
|
|||
|
|
|
|||
|
|
#-- Stop Console
|
|||
|
|
Prese ESC and (
|
|||
|
|
|
|||
|
|
#-- Show ILOM Version & Firmware
|
|||
|
|
/usr/bin/ipmitool sunoem cli "version"
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- ILOM Cli
|
|||
|
|
/usr/bin/ipmitool sunoem cli
|
|||
|
|
|
|||
|
|
#-- Show System properties
|
|||
|
|
show -d properties -level 1 /SYS
|
|||
|
|
show -d properties -level 1 /SP
|
|||
|
|
show -d properties -level 2 /SP
|
|||
|
|
show -d properties -o table -level all /SYS
|
|||
|
|
|
|||
|
|
#-- Show Targets
|
|||
|
|
show -d targets /SP
|
|||
|
|
show -d targets /SYS
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Show system faults
|
|||
|
|
|
|||
|
|
#
|
|||
|
|
/usr/bin/ipmitool sunoem cli " show -level all /SP/faultmgmt"
|
|||
|
|
|
|||
|
|
# Show as table
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -o table -level all /SP/faultmgmt"
|
|||
|
|
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -o table -level all /SP/faultmgmt"
|
|||
|
|
|
|||
|
|
|
|||
|
|
/usr/bin/ipmitool sunoem cli "start -script /SP/faultmgmt/shell
|
|||
|
|
fmadm faulty -a
|
|||
|
|
"
|
|||
|
|
|
|||
|
|
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -d properties -o table -level all /SYS/FAN_FAULT"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -d properties -o table -level all /SYS/PS_FAULT"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -d properties -o table -level all /SYS/TEMP_FAULT"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show -d properties -o table -level all /SYS Target Type==(Indicator) Target==(*FAULT)"
|
|||
|
|
|
|||
|
|
#-- Show event log
|
|||
|
|
/usr/bin/ipmitool sel list
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class<>(Audit)"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==(ASR)"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Severity==(critical)"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Severity==(critical) -level all -output table"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==(value) Type==(value) Severity==(value)"
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/session"
|
|||
|
|
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==Sensor "
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==Fault "
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==Power "
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/logs/event/list Class==IPMI "
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Show Console history
|
|||
|
|
/usr/bin/ipmitool sunoem cli "show /SP/console/history"
|
|||
|
|
|
|||
|
|
#-- Clear event log (when it gets full)
|
|||
|
|
/usr/bin/ipmitool sunoem cli
|
|||
|
|
--> set /SP/logs/event clear=true
|
|||
|
|
|
|||
|
|
#Get LED Light Status
|
|||
|
|
dcli -l root -g all_group '/usr/bin/ipmitool sunoem led get all |egrep -v "OFF|na|OK.*ON" '
|
|||
|
|
dcli -l root -g all_group '/usr/bin/ipmitool sunoem led get SERVICE'
|
|||
|
|
dcli -l root -g all_group '/usr/bin/ipmitool sunoem led get /SP/SERVICE'
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Boot Order
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
#-- Get current boot order
|
|||
|
|
/usr/bin/biosconfig -get_boot_order
|
|||
|
|
|
|||
|
|
#-- Change next boot device
|
|||
|
|
#-- (Boot Order file can be obtained by -get_boot_order, and then change FIRST tag under BOOt_ORDER_OVERRISDE
|
|||
|
|
biosconfig -set_boot_override <boot_order_filename>
|
|||
|
|
|
|||
|
|
|
|||
|
|
##################################
|
|||
|
|
# Disk Controller Commmands
|
|||
|
|
##################################
|
|||
|
|
#-- Help
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -help
|
|||
|
|
|
|||
|
|
#-- Get all the information
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -a0
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Get disk controller log and event
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetEvents -info -aALL
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetEvents -info -aALL
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetEvents -info -aALL
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetEvents -info -aALL
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetEvents -info -aALL
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpEventLog -GetLatest 100 -aALL
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Check Disk Controller Cache Policy (Should be Disabled)
|
|||
|
|
dcli -l root -g all_group "/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -a0 |grep 'Disk Cache Policy'"
|
|||
|
|
|
|||
|
|
#-- Check cache policy at Individual Disks level (Should be WriteBack)
|
|||
|
|
dcli -l root -g all_group "/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -a0 |grep 'Cache Policy:'"
|
|||
|
|
dcli -l root -g all_group "/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -a0 |grep 'Cache Policy:' |grep Through"
|
|||
|
|
|
|||
|
|
#-- Check Battery Type
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | grep BatteryType'
|
|||
|
|
|
|||
|
|
#-- Check Battery Charging status
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | grep "Charging Status" '
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | grep "Discharging" '
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | while read line ; do echo '
|
|||
|
|
|
|||
|
|
|
|||
|
|
Upgrade Disk Firmware
|
|||
|
|
#######################
|
|||
|
|
/opt/oracle.SupportTools/CheckHWnFWProfile -action updatefw -component HardDisk -attribute all_fw -slot 8:1 -caller MS
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -PdFwDownload -PhysDrv[8:1] -f /var/log/exadatatmp/firmware/ActualFirmwareFiles/H7240AS60.A2D2.fw -a0
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
################################
|
|||
|
|
#-- Check Battery Learn Cycle
|
|||
|
|
###############################
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep "Auto-Learn Mode" '
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuProperties -a0'|grep 'Auto Learn Period'
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep "Learn Cycle Active" '
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep "Learn Cycle Requested" '
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep "Learn Cycle Status" '
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Initiate Battery Learn Cycle
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -BbuLearn -a0
|
|||
|
|
|
|||
|
|
#-- Check auto learn mode, Should be enabled on compute node and disabled on cell node.
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuProperties -a0'|grep 'Auto-Learn Mode'
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuProperties -a0'|grep 'Auto Learn Period'
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuProperties -a0'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Check current battery temperature (Should be < 60 C)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -a0 | grep Temperature:'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Check current Battery Charge Capacity (Should be > 800 mAh)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuCapacityInfo -a0 | grep "Full Charge" '
|
|||
|
|
|
|||
|
|
#-- Check current Battery erors (Should be < 10%)
|
|||
|
|
dcli -l root -g all_group '/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0 | grep "Max Error"'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Display all information on Disk Controller
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL
|
|||
|
|
|
|||
|
|
#-- Display Summary
|
|||
|
|
/opt/MegaRAID/MegaCli/MegaCli64 -ShowSummary -aALL
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Recreate the Cell
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
#-- Drop disks from ASM diskgroup
|
|||
|
|
sqlplus / as sysasm
|
|||
|
|
alter diskgroup DATA drop disks in failgroup LABCELL03 force;
|
|||
|
|
alter diskgroup RECO drop disks in failgroup LABCELL03 force;
|
|||
|
|
alter diskgroup DBFS_DG drop disks in failgroup LABCELL03 force;
|
|||
|
|
|
|||
|
|
#-- Create celldisk and griddisks
|
|||
|
|
cellcli -e ' create celldisk all '
|
|||
|
|
cellcli -e ' CREATE GRIDDISK ALL HARDDISK PREFIX=DATA , size=212G '
|
|||
|
|
cellcli -e ' CREATE GRIDDISK ALL HARDDISK PREFIX=RECO , size=29.125G '
|
|||
|
|
cellcli -e ' CREATE GRIDDISK ALL HARDDISK PREFIX=DBFS_DG , size=29.125G '
|
|||
|
|
|
|||
|
|
cellcli -e ' CREATE GRIDDISK ALL FlashDisk PREFIX=FLASH_DM01 , size=212G '
|
|||
|
|
cellcli -e ' CREATE GRIDDISK ALL HARDDISK PREFIX=RECO , size=29.125G '
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Add disk to ASM diskgroup
|
|||
|
|
sqlplus / as sysasm
|
|||
|
|
alter diskgroup DATA add failgroup LABCELL03 disk 'o/192.168.10.5/DATA*' rebalance power 11 nowait;
|
|||
|
|
alter diskgroup RECO add failgroup LABCELL03 disk 'o/192.168.10.5/RECO*' rebalance power 11 nowait;
|
|||
|
|
alter diskgroup DBFS_DG add failgroup LABCELL03 disk 'o/192.168.10.5/DBFS_DG*' rebalance power 11 nowait;
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Exadata Cell Metrics
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
# Metric definition
|
|||
|
|
cellcli -e describe METRICDEFINITION
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like 'FC.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like 'DB.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where description like '.*flash.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where description like '.*read.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where description like '.*write.*per.*sec.*' "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
Cluster wide metrics
|
|||
|
|
|
|||
|
|
#---------------------------
|
|||
|
|
# Smart IO Metrics
|
|||
|
|
#---------------------------
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like 'SIO.*' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_EL_OF' " #The cumulative number of megabytes eligible for offload by smart I/O.
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_OF_RE' " #The cumulative number of interconnect megabytes returned by smart I/O.
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_EL_OF_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_OF_RE_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_RD_FC_SEC' " #Number of megabytes per second read from flash cache by smart IO
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_RD_HD_SEC' " #Number of megabytes per second read from hard disk by smart IO
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'SIO_IO_SI_SV_SEC' " #Number of megabytes per second saved by storage index
|
|||
|
|
|
|||
|
|
#---------------------------
|
|||
|
|
# FlashCache Metrics
|
|||
|
|
#---------------------------
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like '.*FC.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where description like '.*flash.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like '.*FC.*' and description like '.*read.*' "
|
|||
|
|
cellcli -e "list METRICDEFINITION attributes name,metricType,objectType,persistencePolicy,unit,description where name like '.*FC.*' and description like '.*writ.*' "
|
|||
|
|
|
|||
|
|
FC_BY_ALLOCATED Instantaneous FLASHCACHE MB "Number of megabytes allocated in flash cache"
|
|||
|
|
FC_BY_DIRTY Instantaneous FLASHCACHE MB "Number of unflushed megabytes in FlashCache"
|
|||
|
|
FC_BY_STALE_DIRTY Instantaneous FLASHCACHE MB "Number of unflushed megabytes in FlashCache which cannot be flushed because cached disks are not accessible"
|
|||
|
|
FC_BY_USED Instantaneous FLASHCACHE MB "Number of megabytes used on FlashCache"
|
|||
|
|
FC_IO_BY_R Cumulative FLASHCACHE MB "Number of megabytes read from FlashCache"
|
|||
|
|
FC_IO_BY_R_SEC Rate FLASHCACHE MB/sec "Number of megabytes read per second from FlashCache"
|
|||
|
|
FC_IO_RQ_R Cumulative FLASHCACHE "IO requests" "Number of requests read from FlashCache"
|
|||
|
|
FC_IO_RQ_R_SEC Rate FLASHCACHE IO/sec "Number of requests read per second from FlashCache"
|
|||
|
|
FC_IO_BY_W Cumulative FLASHCACHE MB "Number of megabytes written to FlashCache"
|
|||
|
|
FC_IO_BY_W_SEC Rate FLASHCACHE MB/sec "Number of megabytes per second written to FlashCache"
|
|||
|
|
|
|||
|
|
FC_IO_BY_W_POPULATE_SEC Rate FLASHCACHE MB/sec "Number of megabytes per second that are population writes into flash cache due to read miss"
|
|||
|
|
|
|||
|
|
# FlashCache Bytes Used Across the cluster
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name LIKE 'FC_BY_.*' " |sort -k2,2
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_BY_ALLOCATED' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_BY_DIRTY' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_BY_STALE_DIRTY' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_BY_USED' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_IO_BY_R_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_IO_BY_W_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_IO_RQ_R_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_IO_RQ_W_SEC' "
|
|||
|
|
dcli -l root -g cell_group "cellcli -e list metriccurrent where name = 'FC_IO_BY_W_SEC' "
|
|||
|
|
|
|||
|
|
#---------------------------
|
|||
|
|
# Database IO per second
|
|||
|
|
#---------------------------
|
|||
|
|
|
|||
|
|
# Current Metric
|
|||
|
|
cellcli -e "describe metriccurrent"
|
|||
|
|
|
|||
|
|
cellcli -e list metriccurrent where name = 'DB_IO_BY_SEC'
|
|||
|
|
cellcli -e list metriccurrent where name = 'DB_FC_IO_BY_SEC'
|
|||
|
|
cellcli -e list metriccurrent where name = 'FC_BY_USED'
|
|||
|
|
|
|||
|
|
######################
|
|||
|
|
#-- Metric History
|
|||
|
|
######################
|
|||
|
|
cellcli -e "describe metrichistory"
|
|||
|
|
|
|||
|
|
#-------------------
|
|||
|
|
# Last 10 minutes
|
|||
|
|
#-------------------
|
|||
|
|
cellcli -e "list metrichistory where name = 'DB_IO_BY_SEC' and collectionTime > '`date --date=\" 10 min ago \" +%Y-%m-%dT%H:%M:%S%z`' "
|
|||
|
|
|
|||
|
|
#----------------------------
|
|||
|
|
# Last 1 hour for a database
|
|||
|
|
#----------------------------
|
|||
|
|
cellcli -e "list metrichistory attributes collectionTime,metricObjectName,name,metricValue,metricValueAvg,metricValueMax,metricValueMin where name = 'DB_IO_BY_SEC' \
|
|||
|
|
and collectionTime > '`date --date=\" 1 hour ago \" +%Y-%m-%dT%H:%M:%S%z`' "
|
|||
|
|
|
|||
|
|
and metricObjectName = 'STBY52_PR01HSTI'
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
cellcli -e "list metrichistory attributes collectionTime,name,metricValue,metricValueAvg,metricValueMax,metricValueMin \
|
|||
|
|
where name = 'FC_BY_USED' and collectionTime > '`date --date=\" 24 hours ago \" +%Y-%m-%dT%H:%M:%S%z`' "
|
|||
|
|
|
|||
|
|
#----------------------------
|
|||
|
|
# Specific Time Window
|
|||
|
|
#----------------------------
|
|||
|
|
cellcli -e "list metrichistory where name = 'DB_IO_BY_SEC' and metricObjectName = 'STBY52_PR01PIMI' and collectionTime > '2015-04-16T14:00:00-08:00' and collectionTime < '2015-04-16T18:00:00-08:00' "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################################
|
|||
|
|
# Storage Server Metric By database
|
|||
|
|
###########################################
|
|||
|
|
|
|||
|
|
DB_FC_IO_BY_SEC The number of megabytes of I/O per second for this database to flash cache.
|
|||
|
|
DB_FC_IO_RQ The number of I/O requests issued by a database to flash cache.
|
|||
|
|
DB_FC_IO_RQ_SEC The number of I/O requests issued by a database to flash cache per second.
|
|||
|
|
|
|||
|
|
DB_FD_IO_BY_SEC The number of megabytes of I/O per second for this database to flash disks.
|
|||
|
|
DB_FD_IO_LOAD The average I/O load from this database for flash disks.
|
|||
|
|
DB_FD_IO_RQ_LG The number of large I/O requests issued by a database to flash disks.
|
|||
|
|
DB_FD_IO_RQ_LG_SEC The number of large I/O requests issued by a database to flash disks per second.
|
|||
|
|
DB_FD_IO_RQ_SM The number of small I/O requests issued by a database to flash disks.
|
|||
|
|
DB_FD_IO_RQ_SM_SEC The number of small I/O requests issued by a database to flash disks per second.
|
|||
|
|
DB_FD_IO_TM The cumulative latency of reading blocks by a database from flash disks.
|
|||
|
|
DB_FD_IO_TM_RQ The rate which is the average latency of reading blocks per request by a database from flash disks.
|
|||
|
|
DB_FD_IO_UTIL The percentage of flash resources utilized from this database.
|
|||
|
|
|
|||
|
|
DB_FL_IO_BY The number of megabytes written to Oracle Exadata Smart Flash Log.
|
|||
|
|
DB_FL_IO_BY_SEC The number of megabytes written per second to Oracle Exadata Smart Flash Log.
|
|||
|
|
DB_FL_IO_RQ The number of I/O requests issued to Oracle Exadata Smart Flash Log.
|
|||
|
|
DB_FL_IO_RQ_SEC The number of I/O requests per second issued to Oracle Exadata Smart Flash Log.
|
|||
|
|
FL_IO_DB_BY_W The number of megabytes written to hard disk by Oracle Exadata Smart Flash Log.
|
|||
|
|
FL_IO_DB_BY_W_SEC The number of megabytes written per second were written to hard disk by Oracle Exadata Smart Flash Log.
|
|||
|
|
|
|||
|
|
DB_IO_BY_SEC The number of megabytes of I/O per second for this database to hard disks.
|
|||
|
|
DB_IO_LOAD The average I/O load from this database for hard disks.
|
|||
|
|
DB_IO_RQ_LG The cumulative number of large I/O requests issued by the database. A large value indicates a heavy large I/O workload from this database.
|
|||
|
|
DB_IO_RQ_LG_SEC The rate of large I/O requests issued by a consumer group per second over the past minute. A large value indicates a heavy large I/O workload from this database in the past minute.
|
|||
|
|
DB_IO_RQ_SM The cumulative number of small I/O requests issued by the database. A large value indicates a heavy small I/O workload from this database.
|
|||
|
|
DB_IO_RQ_SM_SEC The rate of small I/O requests issued by a consumer group per second over the past minute. A large value indicates a heavy small I/O workload issued by this database in the past minute.
|
|||
|
|
DB_IO_TM_LG The cumulative latency of reading large blocks by a database from hard disks.
|
|||
|
|
DB_IO_TM_LG_RQ The rate which is the average latency of reading large blocks per request by a database from hard disks.
|
|||
|
|
DB_IO_TM_SM The cumulative latency of reading small blocks by a database from hard disks.
|
|||
|
|
DB_IO_TM_SM_RQ The rate which is the average latency of reading small blocks per request by a database from hard disks.
|
|||
|
|
DB_IO_UTIL_LG The percentage of disk resources utilized by large requests from this database.
|
|||
|
|
DB_IO_UTIL_SM The percentage of disk resources utilized by small requests from this database.
|
|||
|
|
DB_IO_WT_LG The cumulative number of milliseconds that large I/O requests issued by the database have waited to be scheduled by IORM. A large value indicates that the I/O workload from this database is exceeding the allocation specified for it in the interdatabase plan.
|
|||
|
|
DB_IO_WT_LG_RQ The average number of milliseconds that large I/O requests issued by the database have waited to be scheduled by IORM in the past minute. A large value indicates that the I/O workload from this database is exceeding the allocation specified for it in the interdatabase plan.
|
|||
|
|
DB_IO_WT_SM The cumulative number of milliseconds that small I/O requests issued by the database have waited to be scheduled by IORM. A large value indicates that the I/O workload from this database is exceeding the allocation specified for it in the interdatabase plan.
|
|||
|
|
DB_IO_WT_SM_RQ The average number of milliseconds that small I/O requests issued by the database have waited to be scheduled by IORM in the past minute. A large value indicates that the I/O workload from this database is exceeding the allocation specified for it in the interdatabase plan.
|
|||
|
|
|
|||
|
|
|
|||
|
|
###############################################
|
|||
|
|
# Tabular IO per database (MB/sec) on a cell
|
|||
|
|
################################################
|
|||
|
|
#fromtime="`date --date=\" 30 min ago \" +%Y-%m-%dT%H:%M:%S%z`"
|
|||
|
|
#totime="`date +%Y-%m-%dT%H:%M:%S%z`"
|
|||
|
|
fromtime='2016-02-16T07:30:00-08:00'
|
|||
|
|
totime='2016-02-16T10:30:00-08:00'
|
|||
|
|
# DB_IO_BY_SEC
|
|||
|
|
# DB_IO_RQ_SM_SEC
|
|||
|
|
# DB_IO_RQ_LG_SEC
|
|||
|
|
# DB_IO_UTIL_SM
|
|||
|
|
# DB_IO_UTIL_LG
|
|||
|
|
# DB_FD_IO_RQ_SM_SEC
|
|||
|
|
# DB_FD_IO_RQ_LG_SEC
|
|||
|
|
|
|||
|
|
declare -a DB=(`cellcli -e "list metriccurrent attributes metricObjectName where name = 'DB_IO_LOAD' " |awk '{print $1} ' |xargs echo`)
|
|||
|
|
for ((i=-1; i<${#DB[@]}; i++))
|
|||
|
|
do
|
|||
|
|
if [ "$i" == -1 ]; then
|
|||
|
|
printf "\n";
|
|||
|
|
printf "%25s" "collectionTime"
|
|||
|
|
else
|
|||
|
|
printf "%$(expr ${#DB[$i]} + 1)s" "${DB[$i]}"
|
|||
|
|
fi
|
|||
|
|
if [ "$i" == `expr ${#DB[@]} - 1` ]; then printf " Total \n"; fi;
|
|||
|
|
done; \
|
|||
|
|
i=0; \
|
|||
|
|
total=0; \
|
|||
|
|
cellcli -e "list metrichistory attributes collectionTime,metricObjectName,metricValue where name = 'DB_IO_LOAD'
|
|||
|
|
and collectionTime > '$fromtime' and collectionTime < '$totime' and metricObjectName like '.*.*' " |
|
|||
|
|
while read LINE
|
|||
|
|
do
|
|||
|
|
collectionTime=`echo $LINE |awk '{print $1}'`
|
|||
|
|
metricObjectName=`echo $LINE |awk '{print $2}'`
|
|||
|
|
metricValue=`echo $LINE |awk '{print $3}'| tr -d ','` # Remove commas
|
|||
|
|
#if [ "$metricObjectName" == "${DB[$(expr ${#DB[@]} - 1 )]}" ]
|
|||
|
|
if [ "$i" -eq 0 ]
|
|||
|
|
then
|
|||
|
|
printf "%25s " "$collectionTime"
|
|||
|
|
fi;
|
|||
|
|
#Round off decimals
|
|||
|
|
printf "%$(expr ${#DB[$i]} + 1)s" $(printf '%.*f' 0 "$metricValue")
|
|||
|
|
total=$(awk "BEGIN {print $total + $metricValue; exit}")
|
|||
|
|
#printf "%6s" "$metricValue"
|
|||
|
|
i=$(expr $i + 1)
|
|||
|
|
if [ $i -eq ${#DB[@]} ] ; then
|
|||
|
|
i=0;
|
|||
|
|
printf "%10s" $(printf '%.*f' 0 "$total");
|
|||
|
|
printf "\n";
|
|||
|
|
total=0;
|
|||
|
|
fi
|
|||
|
|
done; printf "\n";
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
cellcli -e "list metrichistory attributes collectionTime,metricObjectName,name,metricValue where collectionTime > '2015-05-21T05:36:46-0700' and collectionTime < '2015-05-21T05:40:46-0700' and name like '.*DB.*' and metricObjectName = 'STBY02_PR01MTGI' " |sort -k1,2,3
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################################
|
|||
|
|
# Tabular database IO on a cell
|
|||
|
|
# (Multiple metrics for a database)
|
|||
|
|
###########################################
|
|||
|
|
|
|||
|
|
# cellcli -e "list metriccurrent attributes metricObjectName where name = 'DB_IO_BY_SEC' " |awk '{print $1} '
|
|||
|
|
|
|||
|
|
#fromtime="`date --date=\" 30 min ago \" +%Y-%m-%dT%H:%M:%S%z`"
|
|||
|
|
#totime="`date --date=\" 1 min ago \" +%Y-%m-%dT%H:%M:%S%z`"
|
|||
|
|
fromtime='2015-11-08T00:00:00-08:00'
|
|||
|
|
totime='2015-11-08T03:00:00-08:00'
|
|||
|
|
DBNAME=ST01PIMI
|
|||
|
|
|
|||
|
|
#Order the metriclist in Alphabetical order
|
|||
|
|
declare -a METRICLIST="DB_FC_IO_BY_SEC DB_FC_IO_RQ_SEC DB_FD_IO_UTIL DB_IO_BY_SEC DB_IO_LOAD DB_IO_RQ_LG_SEC DB_IO_RQ_SM_SEC DB_IO_WT_LG_RQ DB_IO_WT_SM_RQ " ; \
|
|||
|
|
declare -a METRICLIST=(${METRICLIST}) ; \
|
|||
|
|
echo "" ; \
|
|||
|
|
echo "#############################################" ; \
|
|||
|
|
echo "#### Database - $DBNAME " ; \
|
|||
|
|
echo "#############################################" ; \
|
|||
|
|
echo "" ; \
|
|||
|
|
PRINT_FORMAT="%25s %12s %12s %12s %12s %12s %12s %12s %12s %12s %12s %12s" ; \
|
|||
|
|
printf "${PRINT_FORMAT}" "--------------" "------" "-------" "---------" "------" "-------" "--------" "--------" "--------" "--------" ; printf "\n" ; \
|
|||
|
|
printf "${PRINT_FORMAT}" "collectionTime" "Flash" "Flash" "FlashDisk" "Total" "" "" "" "Large IO" "Small IO" ; printf "\n" ; \
|
|||
|
|
printf "${PRINT_FORMAT}" " " "Cache" "Cache" "Load" "IO" "IO Load" "Large IO" "Small IO" "AvgWait" "AvgWait" ; printf "\n" ; \
|
|||
|
|
printf "${PRINT_FORMAT}" " " "MB/Sec" "Req/Sec" "(%)" "MB/Sec" "(%)" "Req/Sec" "Req/Sec" "(ms)" "(ms)" ; printf "\n" ; \
|
|||
|
|
printf "${PRINT_FORMAT}" "--------------" "------" "-------" "---------" "------" "-------" "--------" "--------" "--------" "--------" ; printf "\n" ; \
|
|||
|
|
printf "\n" ; \
|
|||
|
|
i=0; \
|
|||
|
|
cellcli -e "list metrichistory attributes collectionTime,metricObjectName,name,metricValue where
|
|||
|
|
collectionTime > '$fromtime' and collectionTime < '$totime'
|
|||
|
|
and metricObjectName like '$DBNAME'
|
|||
|
|
and name like '$(echo ${METRICLIST[*]} | tr " " "|" )'
|
|||
|
|
" | sort -k1,3 | while read LINE
|
|||
|
|
do
|
|||
|
|
collectionTime=`echo $LINE |awk '{print $1}'`
|
|||
|
|
metricObjectName=`echo $LINE |awk '{print $2}'`
|
|||
|
|
metricName=`echo $LINE |awk '{print $3}'`
|
|||
|
|
if [ "$i" -eq 0 ]
|
|||
|
|
then
|
|||
|
|
printf "%25s" "$collectionTime"
|
|||
|
|
fi
|
|||
|
|
while [ $i -lt ${#METRICLIST[@]} ]
|
|||
|
|
do
|
|||
|
|
if [ "${METRICLIST[$i]}" == "$metricName" ]
|
|||
|
|
then
|
|||
|
|
metricValue=`echo $LINE |awk '{print $4}'`
|
|||
|
|
break
|
|||
|
|
else
|
|||
|
|
metricValue=""
|
|||
|
|
printf "%13s" "$metricValue"
|
|||
|
|
i=$(expr $i + 1)
|
|||
|
|
continue
|
|||
|
|
fi
|
|||
|
|
done;
|
|||
|
|
# Remove commas
|
|||
|
|
metricValue=$(echo $metricValue | tr -d ',' )
|
|||
|
|
# Round off decimals
|
|||
|
|
if [ "$metricName" != "DB_IO_LOAD" ] && [[ "$metricName" != DB_IO_WT* ]]
|
|||
|
|
then
|
|||
|
|
metricValue=$(printf '%.*f' 0 "$metricValue"|awk '{print $1}')
|
|||
|
|
fi
|
|||
|
|
printf "%13s" "$metricValue"
|
|||
|
|
#printf "%30s" "$metricName $metricValue"
|
|||
|
|
i=$(expr $i + 1)
|
|||
|
|
if [ $i -ge ${#METRICLIST[@]} ] ; then
|
|||
|
|
i=0;
|
|||
|
|
printf "\n"
|
|||
|
|
fi
|
|||
|
|
done; printf "\n" ;
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# colleclt Commands
|
|||
|
|
##########################
|
|||
|
|
collectl -scdmnfx -o T -i 2
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Colmux Commands
|
|||
|
|
##########################
|
|||
|
|
colmux -command -scdmnf -reverse -column 0 -addr <comma-separated-server-LIST or filename>
|
|||
|
|
|
|||
|
|
#-- For Exadata
|
|||
|
|
colmux -command -scdmnf -reverse -column 0 -port 64000 -addr all_group
|
|||
|
|
|
|||
|
|
#---------------------------------------------
|
|||
|
|
# Collectl top or Colmux top
|
|||
|
|
# Show cluster wide top (order by CPU Pct)
|
|||
|
|
#---------------------------------------------
|
|||
|
|
colmux -command "-sZ -i:2 " -column 12 -lines 50 -port 64123 -addr dbs_group
|
|||
|
|
colmux -command "-sZ -i:2 --procfilt=fora_smon " -column 12 -lines 50 -port 64123 -addr dbs_group
|
|||
|
|
colmux -command "-sZ -i:2 --procfilt=fbt01pimi " -column 12 -lines 50 -port 64123 -addr dbs_group_bt01pimi
|
|||
|
|
|
|||
|
|
#-------------------------
|
|||
|
|
# Hard Disk Statistics
|
|||
|
|
#-------------------------
|
|||
|
|
sudo colmux -command '-sD ' -lines 100 -reverse -column 1 -port 64002 -addr dm02cel01
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Show individual disk details
|
|||
|
|
# Exadata spinning disks - sd[a-l]
|
|||
|
|
# Exadata Flashdisks - sd[m-z] & sda[a-c]
|
|||
|
|
colmux -command '-sD --dskfilt sd[a-b]$' -reverse -column 0 -port 64123 -addr cell_group
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Colplot commands
|
|||
|
|
##########################
|
|||
|
|
colplot -dir /var/log/collectl/consolidated -contains dm01db01 -date "20120909" -time "00:00-24:00" -plots cpu,mem,disk,net,nfssum,ib,paging,swap,inode,proc,tcp -filetype pdf -email emailaddress -subject "DM01 Plots"
|
|||
|
|
colplot -dir /var/log/collectl/consolidated -contains dm01db01 -date "20120909-20120910" -time "00:00-24:00" -plots cpu,mem,disk,net,nfssum,ib,paging,swap,inode,proc,tcp -filetype pdf -email vishal@vishalgupta.com -subject "DM01 Plots"
|
|||
|
|
|
|||
|
|
colplot -dir /export/ora_stage/colplot -contains dm51cel01 -date "20130303" -time "00:00-24:00" -plots disk -filetype pdf -email vishal@vishalgupta.com -subject "DM51 Plots"
|
|||
|
|
|
|||
|
|
colplot -dir /usr/share/collectl/plotfiles -plots cpu -filetype png -email vishal@vishalgupta.com -email "/export/ora_stage/colplot_graphs/dm02db01.png"
|
|||
|
|
|
|||
|
|
colplot -dir /var/log/collectl -contains dm02db01 -date "20130325-20130325" -time "18:19-19:19" -plots cpu -width 0.7 -height 0.3 -filetype png -filedir "/export/ora_stage/colplot_graphs/hourly"
|
|||
|
|
|
|||
|
|
|
|||
|
|
for i in {1..9}; do mkdir dm01db0$i; done
|
|||
|
|
for i in {0..6}; do mkdir dm01db1$i; done
|
|||
|
|
|
|||
|
|
for i in {1..9}; do mkdir dm01db0$i; done
|
|||
|
|
for i in {0..6}; do mkdir dm01db1$i; done
|
|||
|
|
|
|||
|
|
|
|||
|
|
for i in {1..9}; do mkdir dm01cel0$i; done
|
|||
|
|
for i in {0..9}; do mkdir dm01cel1$i; done
|
|||
|
|
for i in {0..8}; do mkdir dm01cel2$i; done
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Install Collectl
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
#-- ColPlot require the http to installed on the server.
|
|||
|
|
#-- Follwoign RPMs are needed for colplot to work
|
|||
|
|
- httpd
|
|||
|
|
- mailcap (For emails)
|
|||
|
|
- sharutils (For /usr/bin/uuencode for emails)
|
|||
|
|
- gnuplot
|
|||
|
|
- ghostscript (For PDFs)
|
|||
|
|
- cups-libs
|
|||
|
|
- cairo
|
|||
|
|
- libtiff
|
|||
|
|
- urw-fonts
|
|||
|
|
- chkfontpath
|
|||
|
|
- xorg-x11-font-utils
|
|||
|
|
- ghostscript-fonts (For PDFs)
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/all_group -f /export/ora_stage/vishal/collectl/collectl-3.6.1-4.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g ~/all_group -f /export/ora_stage/vishal/collectl/collectl-utils-3.1.0-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g ~/all_group rpm -Uvh /var/tmp/collectl-3.6.1-4.noarch.rpm /var/tmp/collectl-utils-3.1.0-1.noarch.rpm
|
|||
|
|
dcli -l root -g ~/all_group service collectl start
|
|||
|
|
dcli -l root -g ~/all_group service collectl status
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/dbs_group mkdir /var/www/html/colplot
|
|||
|
|
dcli -l root -g ~/dbs_group ln -s /usr/share/doc/collectl-utils-3.2.1/FAQ-colplot.html /var/www/html/colplot/FAQ-colplot.html
|
|||
|
|
dcli -l root -g ~/dbs_group ln -s /usr/share/doc/collectl-utils-3.2.1/FAQ-colgui.html /var/www/html/colplot/FAQ-colgui.html
|
|||
|
|
dcli -l root -g ~/dbs_group ln -s /usr/share/doc/collectl-utils-3.2.1/colplot-help.html /var/www/html/colplot/colplot-help.html
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Setup Colplot
|
|||
|
|
##########################
|
|||
|
|
#-- Add "-P -oz" to following line in /etc/collectl.conf
|
|||
|
|
DaemonCommands = -f /var/log/collectl -r00:00,7 -m -F60 -s+YZ -P -oz
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group grep ^DaemonCommands /etc/collectl.conf
|
|||
|
|
dcli -l root -g all_group -f /etc/collectl.conf -d /etc
|
|||
|
|
dcli -l root -g all_group grep ^DaemonCommands /etc/collectl.conf
|
|||
|
|
|
|||
|
|
#-- Restart collectl
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group service collectl stop
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group 'ls /var/log/collectl/*tab*'
|
|||
|
|
|
|||
|
|
|
|||
|
|
#-- Remove older file stored in compressed format.
|
|||
|
|
dcli -l root -g all_group 'rm /var/log/collectl/*raw*'
|
|||
|
|
dcli -l root -g all_group 'rm /var/log/collectl/*log*'
|
|||
|
|
|
|||
|
|
#-- Transfer existing files
|
|||
|
|
for i in `cat all_group`
|
|||
|
|
do
|
|||
|
|
scp -p $i:/var/log/collectl/*tab /export/ora_stage/colplot/
|
|||
|
|
scp -p $i:/var/log/collectl/*prc /export/ora_stage/colplot/
|
|||
|
|
scp -p $i:/var/log/collectl/*slb /export/ora_stage/colplot/
|
|||
|
|
done
|
|||
|
|
|
|||
|
|
#-- Setup collectl consolidation
|
|||
|
|
# Added by Vishal Gupta for Ron Reimer
|
|||
|
|
# It consolidates today's collectl statistics files from all nodes to single node
|
|||
|
|
# so that graphs could be generated in a single browser
|
|||
|
|
* * * * * /export/u02/dba/monitoring/scripts/collectl_consolidation.sh > /tmp/collectl_consolidation.log 2>&1
|
|||
|
|
5 0 * * * /export/u02/dba/monitoring/scripts/collectl_consolidation_daily.sh > /tmp/collectl_consolidation_daily.log 2>&1
|
|||
|
|
|
|||
|
|
#-- Check Colplot default directory
|
|||
|
|
dcli -l root -g dbs_group ' grep PlotDir /etc/colplot.conf'
|
|||
|
|
|
|||
|
|
|
|||
|
|
###########################################
|
|||
|
|
# Collectl Changes/Customizatons
|
|||
|
|
###########################################
|
|||
|
|
|
|||
|
|
######### collectl ###########
|
|||
|
|
|
|||
|
|
- /etc/collectl.conf
|
|||
|
|
- Gather configuration to store data in plottable format
|
|||
|
|
|
|||
|
|
# START - Changed by Vishal
|
|||
|
|
#DaemonCommands = -f /var/log/collectl -r00:00,7 -m -F60 -sYZ
|
|||
|
|
DaemonCommands = -f /var/log/collectl -r00:00,7 -m -F60 -P -oz -sbcdfijmnstxDN
|
|||
|
|
# END - Changed by Vishal
|
|||
|
|
|
|||
|
|
######### colplot ###########
|
|||
|
|
|
|||
|
|
- /usr/bin/colplot
|
|||
|
|
- Change colplot home page cgi script to stop it from trying to find earlier and latest file.
|
|||
|
|
|
|||
|
|
my $pparams= {fdate=>20010101, tdate=>29991231, contains=>'', unique=>$uniqueFlag };
|
|||
|
|
#Changed by Vishal
|
|||
|
|
#findFiles(3, $mycfg, $pparams, "$dir$sep*", undef) ||
|
|||
|
|
# error("No plottable files match your selection criteria. Are your dir and/or file protections right?");
|
|||
|
|
|
|||
|
|
- Default the output radio button to last 30 mintues.
|
|||
|
|
|
|||
|
|
# START - Changed by Vishal
|
|||
|
|
#print "<input type=radio name=timeframe value=fixed checked>\n";
|
|||
|
|
#print "<font=5><i>OR</i>\n";
|
|||
|
|
#print "<b>Last: <input type=text name=winsize size=1 value=$winsize> Minutes\n";
|
|||
|
|
#print "<input type=radio name=timeframe value=float>\n";
|
|||
|
|
print "<input type=radio name=timeframe value=fixed>\n";
|
|||
|
|
print "<font=5><i>OR</i>\n";
|
|||
|
|
print "<b>Last: <input type=text name=winsize size=1 value=$winsize> Minutes\n";
|
|||
|
|
print "<input type=radio name=timeframe value=float checked>\n";
|
|||
|
|
# END - Changed by Vishal
|
|||
|
|
|
|||
|
|
- Change Display to PlotSys (Plot-System).
|
|||
|
|
|
|||
|
|
#Start of Changes by Vishal
|
|||
|
|
<option value=sp >SysPlot</option>
|
|||
|
|
<option value=ps selected>PlotSys</option>
|
|||
|
|
#End Changes by Vishal
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/all_group -d /usr/bin -f /usr/bin/colplot
|
|||
|
|
|
|||
|
|
|
|||
|
|
- /etc/colplot.conf
|
|||
|
|
- Change default PlotDir
|
|||
|
|
PlotDir = /export/ora_stage/colplot
|
|||
|
|
|
|||
|
|
- /usr/share/collectl/colplotlib.defs
|
|||
|
|
|
|||
|
|
- Define DiskRead and DiskWrite plots
|
|||
|
|
|
|||
|
|
diskread { title=DiskReadMB yname=[DSK]ReadKBTot }
|
|||
|
|
diskwrite { title=DiskWriteMB yname=[DSK]WriteKBTot }
|
|||
|
|
diskread { cat=disk type=s desc=Disk Read (MB) }
|
|||
|
|
diskwrite { cat=disk type=s desc=Disk Write (MB) }
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/all_group -d /usr/share/collectl/ -f /usr/share/collectl/colplotlib.defs
|
|||
|
|
|
|||
|
|
|
|||
|
|
######### colmux ###########
|
|||
|
|
- Changes in /usr/bin/colmux
|
|||
|
|
|
|||
|
|
- Add "-o ServerAliveInterval=3600". This helps to remove the cell servers dropping off from colmux output.
|
|||
|
|
|
|||
|
|
# START - Changed by Vishal
|
|||
|
|
#my $Ssh='/usr/bin/ssh -o StrictHostKeyChecking=no -o BatchMode=yes';
|
|||
|
|
my $Ssh='/usr/bin/ssh -o StrictHostKeyChecking=no -o BatchMode=yes -o ServerAliveInterval=60';
|
|||
|
|
# END - Changed by Vishal
|
|||
|
|
|
|||
|
|
|
|||
|
|
%s/ssh \-n/ssh \-n \-o ServerAliveInterval=3600/g
|
|||
|
|
grep ssh /usr/bin/colmux
|
|||
|
|
dcli -l root -g ~/all_group -d /usr/bin/ -f /usr/bin/colmux
|
|||
|
|
grep ssh /usr/bin/colmux
|
|||
|
|
ps -ef|grep collectl
|
|||
|
|
|
|||
|
|
|
|||
|
|
- Change default age from 2 to 10
|
|||
|
|
|
|||
|
|
# START - Changed by Vishal
|
|||
|
|
#my $age=2;
|
|||
|
|
my $age=10;
|
|||
|
|
# END - Changed by Vishal
|
|||
|
|
|
|||
|
|
|
|||
|
|
- Change the interface to use for communication.
|
|||
|
|
|
|||
|
|
# Modified by Vishal
|
|||
|
|
#$myaddr=`$Ifconfig $interface | grep addr:`;
|
|||
|
|
$myaddr=`$Ifconfig eth0| grep addr:`;
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/all_group -d /usr/bin -f /usr/bin/colmux
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Disable Collectl
|
|||
|
|
##########################
|
|||
|
|
dcli -l root -g ~/all_group service collectl stop
|
|||
|
|
dcli -l root -g ~/all_group chkconfig collectl off
|
|||
|
|
dcli -l root -g ~/all_group chkconfig --list collectl
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Enable Collectl
|
|||
|
|
##########################
|
|||
|
|
dcli -l root -g ~/all_group service collectl start
|
|||
|
|
dcli -l root -g ~/all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g ~/all_group chkconfig --list collectl
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# De-Install Collectl
|
|||
|
|
##########################
|
|||
|
|
dcli -l root -g ~/all_group service collectl stop
|
|||
|
|
dcli -l root -g ~/all_group rpm -e collectl collectl-utils
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Install collectl on all nodes
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group cp -p /etc/collectl.conf /tmp/
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.6.5-2.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
|
|||
|
|
#############################################
|
|||
|
|
# Install collectl-utils on all nodes
|
|||
|
|
############################################
|
|||
|
|
dcli -l root -g dbs_group cp -p /etc/colplot.conf /tmp/
|
|||
|
|
dcli -l root -g all_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.7.4.src.tar.gz -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group "cd /var/tmp/ ; gunzip -c collectl-3.7.4.src.tar.gz |tar xvf - > /dev/null"
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group service collectl stop
|
|||
|
|
dcli -l root -g all_group chkconfig collectl off
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rpm -e collectl
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group "cd /var/tmp/collectl-3.7.4; sh INSTALL"
|
|||
|
|
dcli -l root -g all_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g all_group -f /tmp/collectl.conf -d /tmp/
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.7.4.src.tar.gz
|
|||
|
|
dcli -l root -g all_group rm -fR /var/tmp/collectl-3.7.4
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Upgrade collectl to 3.6.5-2
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group cp -p /etc/collectl.conf /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.6.5-2.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group service collectl stop
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Downgrade collectl to 3.6.5-2
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group cp -p /etc/collectl.conf /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.6.5-2.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.6.5-2.noarch.rpm
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Upgrade collectl to 3.6.9-1
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group cp -p /etc/collectl.conf /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.6.9-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group service collectl stop
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-3.6.9-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.6.9-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Upgrade collectl to 3.7.4-1
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group cp -p /etc/collectl.conf /tmp/
|
|||
|
|
dcli -l root -g all_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-3.7.4.src.tar.gz -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group "cd /var/tmp/ ; gunzip -c collectl-3.7.4.src.tar.gz |tar xvf - > /dev/null"
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group service collectl stop
|
|||
|
|
dcli -l root -g all_group chkconfig collectl off
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rpm -e collectl
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group "cd /var/tmp/collectl-3.7.4; sh INSTALL"
|
|||
|
|
dcli -l root -g all_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/collectl.conf /etc/
|
|||
|
|
dcli -l root -g all_group -d /etc/ -f /etc/collectl.conf
|
|||
|
|
dcli -l root -g all_group service collectl start
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig collectl on
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-3.7.4.src.tar.gz
|
|||
|
|
dcli -l root -g all_group rm -fR /var/tmp/collectl-3.7.4
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Upgrade collectl-utils to 3.1.0-1
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group cp -p /etc/colplot.conf /usr/bin/colplot /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-utils-3.1.0-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl-utils
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-utils-3.1.0-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-utils-3.1.0-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colplot.conf /etc/
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave /etc/colplot.conf.rpmsave
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
#dcli -l root -g all_group cp -p /tmp/colplot /usr/bin/colplot
|
|||
|
|
#dcli -l root -g all_group cp -p /tmp/colmux /usr/bin/colmux
|
|||
|
|
|
|||
|
|
#####################################
|
|||
|
|
# Upgrade collectl-utils to 3.2.1-1
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group cp -p /etc/colplot.conf /usr/bin/colplot /usr/bin/colmux /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-utils-3.2.1-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl-utils
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-utils-3.2.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-utils-3.2.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colplot.conf /etc/
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colplot /usr/bin/colplot
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colmux /usr/bin/colmux
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave /etc/colplot.conf.rpmsave
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group service httpd restart
|
|||
|
|
|
|||
|
|
########################################
|
|||
|
|
# Downgrade collectl-utils to 3.2.1-1
|
|||
|
|
########################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group cp -p /etc/colplot.conf /usr/bin/colplot /usr/bin/colmux /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-utils-3.2.1-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl-utils
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-utils-3.2.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-utils-3.2.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colplot.conf /etc/
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colplot /usr/bin/colplot
|
|||
|
|
dcli -l root -g all_group cp -p /tmp/colmux /usr/bin/colmux
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave /etc/colplot.conf.rpmsave
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group service httpd restart
|
|||
|
|
|
|||
|
|
|
|||
|
|
######################################
|
|||
|
|
# Upgrade collectl-utils to 4.7.1-1
|
|||
|
|
######################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group cp -p /etc/colplot.conf /usr/bin/colplot /usr/bin/colmux /tmp/
|
|||
|
|
dcli -l root -g all_group -f /export/ora_stage/vishal/collectl/collectl-utils-4.7.1-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g all_group rpm -e collectl-utils
|
|||
|
|
dcli -l root -g all_group rpm -Uvh /var/tmp/collectl-utils-4.7.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group rm /var/tmp/collectl-utils-4.7.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g all_group -f /tmp/colplot.conf -d /etc/
|
|||
|
|
dcli -l root -g all_group -f /tmp/colmux -d /usr/bin/
|
|||
|
|
dcli -l root -g all_group rm -f /etc/collectl.conf.rpmsave /etc/colplot.conf.rpmsave
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group service httpd restart
|
|||
|
|
|
|||
|
|
##############################
|
|||
|
|
# Install after cell patching (Collectl 3.7.4, collectl-utils 4.7.1-1 )
|
|||
|
|
###############################
|
|||
|
|
dcli -l root -g cell_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g cell_group -f /export/ora_stage/vishal/collectl/collectl-3.7.4.src.tar.gz -d /var/tmp/
|
|||
|
|
dcli -l root -g cell_group "cd /var/tmp/ ; gunzip -c collectl-3.7.4.src.tar.gz |tar xvf - > /dev/null"
|
|||
|
|
dcli -l root -g cell_group "cd /var/tmp/collectl-3.7.4; sh INSTALL"
|
|||
|
|
dcli -l root -g cell_group '/usr/bin/collectl -v |head -1'
|
|||
|
|
dcli -l root -g cell_group -f /export/ora_stage/vishal/collectl/collectl-utils-4.7.1-1.noarch.rpm -d /var/tmp/
|
|||
|
|
dcli -l root -g cell_group rpm -Uvh /var/tmp/collectl-utils-4.7.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g cell_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g cell_group rm /var/tmp/collectl-3.7.4.src.tar.gz
|
|||
|
|
dcli -l root -g cell_group rm -fR /var/tmp/collectl-3.7.4
|
|||
|
|
dcli -l root -g cell_group rm -f /etc/collectl.conf.rpmsave
|
|||
|
|
dcli -l root -g cell_group rm /var/tmp/collectl-utils-4.7.1-1.noarch.rpm
|
|||
|
|
dcli -l root -g cell_group -d /etc -f /etc/collectl.conf
|
|||
|
|
dcli -l root -g cell_group -d /etc -f /etc/colplot.conf
|
|||
|
|
dcli -l root -g cell_group -d /usr/bin/ -f /usr/bin/colmux
|
|||
|
|
dcli -l root -g cell_group service collectl start
|
|||
|
|
dcli -l root -g cell_group service collectl status
|
|||
|
|
dcli -l root -g cell_group chkconfig collectl on
|
|||
|
|
dcli -l root -g cell_group chkconfig --list collectl
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################################
|
|||
|
|
# Collect & Collectl-utils Verification
|
|||
|
|
##########################################
|
|||
|
|
dcli -l root -g all_group rpm -q collectl
|
|||
|
|
dcli -l root -g all_group rpm -q collectl-utils
|
|||
|
|
dcli -l root -g all_group service collectl status
|
|||
|
|
dcli -l root -g all_group chkconfig --list collectl
|
|||
|
|
|
|||
|
|
#Customization Verification
|
|||
|
|
# (Needs to have -P -oz at the end of the line)
|
|||
|
|
dcli -l root -g all_group 'grep ^DaemonCommands /etc/collectl.conf'
|
|||
|
|
# (PlotDir needs to be /export/ora_stage/colplot)
|
|||
|
|
dcli -l root -g dbs_group 'grep PlotDir /etc/colplot.conf'
|
|||
|
|
# Should be 10
|
|||
|
|
dcli -l root -g all_group "grep '^my \$age' /usr/bin/colmux"
|
|||
|
|
# Should have ServerAliveInterval=60 in it
|
|||
|
|
dcli -l root -g all_group "grep '^my \$Ssh' /usr/bin/colmux"
|
|||
|
|
|
|||
|
|
# Should be commented
|
|||
|
|
dcli -l root -g all_group "egrep 'findFiles.*undef' /var/www/html/colplot/index.cgi |head -1"
|
|||
|
|
|
|||
|
|
- /var/www/html/colplot/index.cgi
|
|||
|
|
- Change colplot home page cgi script to stop it from trying to find earlier and latest file.
|
|||
|
|
|
|||
|
|
my $pparams= {fdate=>20010101, tdate=>29991231, contains=>'', unique=>$uniqueFlag };
|
|||
|
|
#Changed by Vishal
|
|||
|
|
#findFiles(3, $mycfg, $pparams, "$dir$sep*", undef) ||
|
|||
|
|
# error("No plottable files match your selection criteria. Are your dir and/or file protections right?");
|
|||
|
|
|
|||
|
|
- Default the output radio button to last 30 mintues.
|
|||
|
|
|
|||
|
|
#Changed by Vishal
|
|||
|
|
#print "<input type=radio name=timeframe value=fixed checked>\n";
|
|||
|
|
print "<input type=radio name=timeframe value=fixed>\n";
|
|||
|
|
print "<font=5><i>OR</i>\n";
|
|||
|
|
print "<b>Last: <input type=text name=winsize size=1 value=$winsize> Minutes\n";
|
|||
|
|
#Changed by Vishal
|
|||
|
|
#print "<input type=radio name=timeframe value=float>\n";
|
|||
|
|
print "<input type=radio name=timeframe value=float checked>\n";
|
|||
|
|
|
|||
|
|
|
|||
|
|
###################################
|
|||
|
|
# Troubleshooting
|
|||
|
|
###################################
|
|||
|
|
|
|||
|
|
###################################
|
|||
|
|
# Infiniband Troubleshooting
|
|||
|
|
###################################
|
|||
|
|
|
|||
|
|
# Infinicheck
|
|||
|
|
###################
|
|||
|
|
/opt/oracle.SupportTools/ibdiagtools/infinicheck -g ~/dbs_ib_group
|
|||
|
|
|
|||
|
|
|
|||
|
|
# infiniband commands
|
|||
|
|
######################
|
|||
|
|
ibswitches
|
|||
|
|
ibhosts
|
|||
|
|
ibnodes
|
|||
|
|
ibstatus
|
|||
|
|
iblinkinfo
|
|||
|
|
|
|||
|
|
|
|||
|
|
# From first node
|
|||
|
|
###################
|
|||
|
|
uname -a
|
|||
|
|
cat /etc/hosts
|
|||
|
|
dcli -g all_group -l root 'imageinfo;rds-info -I|head -40;ibstat;ibstatus;ibnetdiscover;ibclearcounters;ibcheckstate -v;rpm -qa|grep -i ofa;'
|
|||
|
|
|
|||
|
|
# From ALL IB Switches
|
|||
|
|
##########################
|
|||
|
|
uname -a
|
|||
|
|
version
|
|||
|
|
env_test
|
|||
|
|
listlinkup
|
|||
|
|
getmaster
|
|||
|
|
ibnetdiscover
|
|||
|
|
#ibclearcounters
|
|||
|
|
ibcheckstate -v
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Check whether link is physically present or not
|
|||
|
|
cat /sys/class/net/ib0/carrier
|
|||
|
|
cat /sys/class/net/ib1/carrier
|
|||
|
|
|
|||
|
|
##
|
|||
|
|
export SUBNET_MGR_GID=`sminfo | cut -d" " -f7 | cut -c3-16`;
|
|||
|
|
export SUBNET_MGR_LOC="OTHER";
|
|||
|
|
for IB_NODE_GID in `ibswitches | cut -c14-27`;
|
|||
|
|
do
|
|||
|
|
if [ $SUBNET_MGR_GID = $IB_NODE_GID ];
|
|||
|
|
then
|
|||
|
|
export SUBNET_MGR_LOC="IB_SWITCH";
|
|||
|
|
fi;
|
|||
|
|
done;
|
|||
|
|
echo $SUBNET_MGR_LOC;
|
|||
|
|
|
|||
|
|
|
|||
|
|
###################################
|
|||
|
|
# OS Watcher Commands
|
|||
|
|
###################################
|
|||
|
|
|
|||
|
|
#############################################################
|
|||
|
|
#-- Get IO Statistics on a hardisk from OS Watcher
|
|||
|
|
#############################################################
|
|||
|
|
|
|||
|
|
File Format
|
|||
|
|
###############
|
|||
|
|
zzz ***Tue Feb 11 09:01:54 PST 2014 Sample interval: 5 secconds
|
|||
|
|
Linux 2.6.32-400.11.1.el5uek (servername) 02/11/14
|
|||
|
|
|
|||
|
|
Time: 09:01:54
|
|||
|
|
avg-cpu: %user %nice %system %iowait %steal %idle
|
|||
|
|
1.56 0.00 1.46 1.43 0.00 95.55
|
|||
|
|
|
|||
|
|
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
|
|||
|
|
sda 2.64 13.87 7.62 37.58 5994.46 4488.26 231.91 2.53 55.87 1.75 7.89
|
|||
|
|
sda1 0.00 0.00 0.01 0.00 1.21 0.00 125.98 0.00 65.33 59.17 0.06
|
|||
|
|
|
|||
|
|
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswiostat
|
|||
|
|
|
|||
|
|
bunzip2 -cf *iostat_13.10.01.0400*.dat* | egrep -v Device | awk '
|
|||
|
|
BEGIN {
|
|||
|
|
date="";
|
|||
|
|
time="";
|
|||
|
|
}
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz")
|
|||
|
|
{
|
|||
|
|
date=$4 "-" $3 "-" $7
|
|||
|
|
}
|
|||
|
|
if ($1 == "Time:")
|
|||
|
|
{
|
|||
|
|
time=$2
|
|||
|
|
}
|
|||
|
|
# print entire line if svctm ($11) is greater than 50ms
|
|||
|
|
#if ( $11 > 50) {
|
|||
|
|
# print date " Time: " time " " $0 ;
|
|||
|
|
# }
|
|||
|
|
#
|
|||
|
|
# print entire line if %util ($12) is greater than 50%
|
|||
|
|
if ( $12 > 50) {
|
|||
|
|
print date " Time: " time " " $0 ;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
|
|||
|
|
|
|||
|
|
###################################################################################
|
|||
|
|
#-- Get IO Statistics on a hardisk from OS Watcher (TABULAR for each disk device)
|
|||
|
|
###################################################################################
|
|||
|
|
|
|||
|
|
### HardDisks ##########
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswiostat
|
|||
|
|
bunzip2 -cf *iostat_14.02.22*.dat* | egrep -v Device | awk '
|
|||
|
|
BEGIN {
|
|||
|
|
date=""; time="";
|
|||
|
|
printf "Date\t Time \tsda\tsdb\tsdc\tsdd\tsde\tsdf\tsdg\tsdh\tsdi\tsdj\tsdk\tsdl\n" ;
|
|||
|
|
sda_val=""; sdb_val=""; sdc_val=""; sdd_val="";
|
|||
|
|
sde_val=""; sdf_val=""; sdg_val=""; sdh_val="";
|
|||
|
|
sdi_val=""; sdj_val=""; sdk_val=""; sdl_val="";
|
|||
|
|
}
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz") {date=$4 "-" $3 "-" $7}
|
|||
|
|
if ($1 == "Time:") {time=$2 }
|
|||
|
|
# %util ($12)
|
|||
|
|
if ( $1 == "sda") { sda_val= $12 };
|
|||
|
|
if ( $1 == "sdb") { sdb_val= $12 };
|
|||
|
|
if ( $1 == "sdc") { sdc_val= $12 };
|
|||
|
|
if ( $1 == "sdd") { sdd_val= $12 };
|
|||
|
|
if ( $1 == "sde") { sde_val= $12 };
|
|||
|
|
if ( $1 == "sdf") { sdf_val= $12 };
|
|||
|
|
if ( $1 == "sdg") { sdg_val= $12 };
|
|||
|
|
if ( $1 == "sdh") { sdh_val= $12 };
|
|||
|
|
if ( $1 == "sdi") { sdi_val= $12 };
|
|||
|
|
if ( $1 == "sdj") { sdj_val= $12 };
|
|||
|
|
if ( $1 == "sdk") { sdk_val= $12 };
|
|||
|
|
if ( $1 == "sdl") { sdl_val= $12 };
|
|||
|
|
if ($1 == "Time:") {
|
|||
|
|
printf "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n" ,date,time,sda_val,sdb_val,sdc_val,sdd_val,sde_val,sdf_val,sdg_val,sdh_val,sdi_val,sdj_val,sdk_val,sdl_val;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
|
|||
|
|
|
|||
|
|
### Flash Disks ##########
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswiostat
|
|||
|
|
bunzip2 -cf *iostat_13.10.01.0400*.dat* | egrep -v Device | awk '
|
|||
|
|
BEGIN {
|
|||
|
|
date=""; time="";
|
|||
|
|
printf "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n","Date ","Time ","sdn","sdo","sdp","sdq","sdr","sds","sdt","sdu","sdv","sdw","sdx","sdy","sdz","sdaa","sdab","sdac" ;
|
|||
|
|
sdn_val=""; sdo_val=""; sdp_val=""; sdq_val="";
|
|||
|
|
sdr_val=""; sds_val=""; sdt_val=""; sdu_val="";
|
|||
|
|
sdv_val=""; sdw_val=""; sdx_val=""; sdy_val="";
|
|||
|
|
sdz_val=""; sdaa_val=""; sdab_val=""; sdac_val="";
|
|||
|
|
}
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz") {date=$4 "-" $3 "-" $7}
|
|||
|
|
if ($1 == "Time:") {time=$2 }
|
|||
|
|
# %util ($12)
|
|||
|
|
if ( $1 == "sdn") { sdn_val= $12 };
|
|||
|
|
if ( $1 == "sdo") { sdo_val= $12 };
|
|||
|
|
if ( $1 == "sdp") { sdp_val= $12 };
|
|||
|
|
if ( $1 == "sdq") { sdq_val= $12 };
|
|||
|
|
if ( $1 == "sdr") { sdr_val= $12 };
|
|||
|
|
if ( $1 == "sds") { sds_val= $12 };
|
|||
|
|
if ( $1 == "sdt") { sdt_val= $12 };
|
|||
|
|
if ( $1 == "sdu") { sdu_val= $12 };
|
|||
|
|
if ( $1 == "sdv") { sdv_val= $12 };
|
|||
|
|
if ( $1 == "sdw") { sdw_val= $12 };
|
|||
|
|
if ( $1 == "sdx") { sdx_val= $12 };
|
|||
|
|
if ( $1 == "sdy") { sdy_val= $12 };
|
|||
|
|
if ( $1 == "sdz") { sdz_val= $12 };
|
|||
|
|
if ( $1 == "sdaa") { sdaa_val= $12 };
|
|||
|
|
if ( $1 == "sdab") { sdab_val= $12 };
|
|||
|
|
if ( $1 == "sdac") { sdac_val= $12 };
|
|||
|
|
if ($1 == "Time:") {
|
|||
|
|
printf ("%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\t%-s\n" ,date,time,sdn_val,sdo_val,sdp_val,sdq_val,sdr_val,sds_val,sdt_val,sdu_val,sdv_val,sdw_val,sdx_val,sdy_val,sdz_val,sdaa_val,sdab_val,sdac_val);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
|
|||
|
|
#############################################################
|
|||
|
|
#-- Filter the OS Watcher Top output for a particular process
|
|||
|
|
#############################################################
|
|||
|
|
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswtop/
|
|||
|
|
for i in `ls *14.04.24.0500.dat*`;
|
|||
|
|
do
|
|||
|
|
bunzip2 -c $i |egrep -h '^zzz|^top|tnslsnr LISTENER -inherit' | awk '
|
|||
|
|
BEGIN { date="";time="";}
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz")
|
|||
|
|
{
|
|||
|
|
date=$4 "-" $3 "-" $7
|
|||
|
|
}
|
|||
|
|
else {
|
|||
|
|
if ($1 == "top")
|
|||
|
|
{
|
|||
|
|
time=$3
|
|||
|
|
}
|
|||
|
|
else {
|
|||
|
|
print date " " time " " $0 ;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
done
|
|||
|
|
|
|||
|
|
#######################################################################
|
|||
|
|
#-- Filter the OS Watcher Top output for high CPU usage processes
|
|||
|
|
#######################################################################
|
|||
|
|
|
|||
|
|
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
|
|||
|
|
|
|||
|
|
1 - PID
|
|||
|
|
2 - USER
|
|||
|
|
3 - PRIORITY
|
|||
|
|
4 - Nice
|
|||
|
|
5 - Virtual Memory
|
|||
|
|
6 - Resident Memory
|
|||
|
|
7 - Shared Memory
|
|||
|
|
8 - Status
|
|||
|
|
9 - %CPU
|
|||
|
|
10 - %Memory
|
|||
|
|
11 - Time
|
|||
|
|
12 - Command
|
|||
|
|
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswtop/
|
|||
|
|
for i in `ls *14.04.29.2000*.dat.bz2`
|
|||
|
|
do
|
|||
|
|
bunzip2 -c $i | egrep -v '^Tasks|^Mem|^Swap' | awk '
|
|||
|
|
BEGIN { date=""; time=""; }
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz") { date=$4 "-" $3 "-" $7 }
|
|||
|
|
else { if ($1 == "top") { time=$3 }
|
|||
|
|
else { if ($9 >= 80) #Resource Usage
|
|||
|
|
{ print date " " time " " $0 ; }
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
done
|
|||
|
|
|
|||
|
|
#######################################################################
|
|||
|
|
#-- Filter the OS Watcher Top output for high CPU usage processes
|
|||
|
|
#######################################################################
|
|||
|
|
|
|||
|
|
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
|
|||
|
|
|
|||
|
|
1 - PID
|
|||
|
|
2 - USER
|
|||
|
|
3 - PRIORITY
|
|||
|
|
4 - Nice
|
|||
|
|
5 - Virtual Memory
|
|||
|
|
6 - Resident Memory
|
|||
|
|
7 - Shared Memory
|
|||
|
|
8 - Status
|
|||
|
|
9 - %CPU
|
|||
|
|
10 - %Memory
|
|||
|
|
11 - Time
|
|||
|
|
12 - Command
|
|||
|
|
|
|||
|
|
cd /opt/oracle.oswatcher/osw/archive/oswtop/
|
|||
|
|
for i in `ls *14.04.29.2000*.dat.bz2`
|
|||
|
|
do
|
|||
|
|
bunzip2 -c $i | egrep -v '^Tasks|^Mem|^Swap' | awk '
|
|||
|
|
BEGIN { date=""; time=""; }
|
|||
|
|
{
|
|||
|
|
if ($1 == "zzz") { date=$4 "-" $3 "-" $7 }
|
|||
|
|
else { if ($1 == "top") { time=$3 }
|
|||
|
|
else { if ($9 >= 80) #Resource Usage
|
|||
|
|
{ print date " " time " " $0 ; }
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
done
|
|||
|
|
|
|||
|
|
|
|||
|
|
#######################################################################
|
|||
|
|
#-- Expect script
|
|||
|
|
#######################################################################
|
|||
|
|
|
|||
|
|
# Add ssh keys between nodes
|
|||
|
|
expect -c '
|
|||
|
|
spawn dcli -l root -g all_group -k
|
|||
|
|
while {1} {
|
|||
|
|
expect "(yes/no)?" { send "yes\n"}
|
|||
|
|
expect "password:" { send "welcome1\n"}
|
|||
|
|
}
|
|||
|
|
'
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g all_group hostname
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g dbs_group "dcli -l root -g all_group hostname |wc -l"
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e 'LIST flashcache attributes name,status,size,creationTime,degradedCelldisks,effectiveCacheSize '"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e LIST FLASHLOG"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e DROP FLASHCACHE"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e ' CREATE GRIDDISK ALL FlashDisk PREFIX=FLASH_DM01 , size=20G '"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e ' CREATE FLASHLOG ALL FLASHDISK '"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e ' CREATE flashcache ALL '"
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group " cellcli -e 'LIST flashcache attributes name,status,size,creationTime,degradedCelldisks,effectiveCacheSize ' "
|
|||
|
|
dcli -l root -g /tmp/vishal/newgroups/cell_group "cellcli -e LIST FLASHLOG"
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
create diskgroup DATA_DM02_EXT NORMAL REDUNDANCY
|
|||
|
|
disk 'o/*/DATA_DM02_EXT*'
|
|||
|
|
ATTRIBUTE 'COMPATIBLE.ASM'='11.2.0.2.0'
|
|||
|
|
, 'COMPATIBLE.RDBMS'='11.2.0.2'
|
|||
|
|
, 'AU_SIZE'='4194304'
|
|||
|
|
,'cell.smart_scan_capable'='TRUE'
|
|||
|
|
;
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################################
|
|||
|
|
# Exadata Cell Parameters & Events
|
|||
|
|
##########################################
|
|||
|
|
|
|||
|
|
Exadata Cell Events
|
|||
|
|
######################
|
|||
|
|
immediate cellsrv.cellsrv_statedump
|
|||
|
|
immediate cellsrv.cellsrv_dump
|
|||
|
|
immediate cellsrv.cellsrv_flashcache
|
|||
|
|
immediate cellsrv.cellsrv_resetstats
|
|||
|
|
immediate cellsrv.cellsrv_setparam
|
|||
|
|
immediate cellsrv.cellsrv_storidx
|
|||
|
|
trace[cellsrv.cellsrv_events_layer]
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Cell server system state dump
|
|||
|
|
|
|||
|
|
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_statedump(2,0)";
|
|||
|
|
|
|||
|
|
or issue kill -12 on cellsrv OS pid.
|
|||
|
|
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_statedump(0,0)";
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_statedump(1,0)";
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_statedump(2,0)";
|
|||
|
|
|
|||
|
|
Reference - http://progeeking.com/2013/10/28/exadata-io-statistics/
|
|||
|
|
#####################################################################
|
|||
|
|
# I/O latency statistics (Note the IO L stats)
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('iolstats',0)";
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_resetstats('iolstats')";
|
|||
|
|
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('iolhiststats',0)";
|
|||
|
|
|
|||
|
|
# I/O reason statistics:
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('ioreasons',0)";
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_resetstats('ioreasons')";
|
|||
|
|
|
|||
|
|
# Basic I/O statistics:
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('devio_stats',0)";
|
|||
|
|
|
|||
|
|
# Predicate I/O statistics:
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('predicateio',0)";
|
|||
|
|
|
|||
|
|
# Reset FlashCache Contents
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_flashcache(Reset,0,0,0)";
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Clear cellsrv statistics
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_resetstats()";
|
|||
|
|
|
|||
|
|
#
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_setparam('_cell_gen_time_stats_level','1')";
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_setparam('_cell_gen_time_stats_level','0')";
|
|||
|
|
|
|||
|
|
# To enable tracing of the auto disk management modules on a storage cell, run cellcli and enter the following:
|
|||
|
|
alter cell events='trace[cellsrv.cellsrv_events_layer] memory=highest,disk=highest'
|
|||
|
|
|
|||
|
|
# To disable tracing of the auto disk management modules on a storage cell, run cellcli and enter the following:
|
|||
|
|
alter cell events='trace[cellsrv.cellsrv_events_layer] off';
|
|||
|
|
|
|||
|
|
# Storage index - Diagnose Storage index id in Exadata cell server.
|
|||
|
|
|
|||
|
|
alter cell events = "immediate cellsrv.cellsrv_storidx(dumpridx, all, 0, 0, 0);
|
|||
|
|
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_storidx('dumpridx|purge|disable|enable','all|GridDiskName', objd, tsn, dbid)";
|
|||
|
|
|
|||
|
|
dumpridx - dump storage indexes
|
|||
|
|
purge - purge storage indexes for specified disk/db/object
|
|||
|
|
disable - disable storage indexes for specified disk/db/object
|
|||
|
|
enable - disable storage indexes for specified disk/db/object
|
|||
|
|
|
|||
|
|
all/griddiskname - dump for all griddisk/dump for specific griddisk
|
|||
|
|
|
|||
|
|
objd - data_object_id from all_objects
|
|||
|
|
tsn - tablespace number <20> ts# from ts$
|
|||
|
|
dbid - ksqdngunid from x$ksqdn
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Dump cell memory (http://progeeking.com/2013/10/28/exadata-cellsrv-memory-usage/)
|
|||
|
|
|
|||
|
|
# Memory usage summary
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('memsummary',0)"
|
|||
|
|
|
|||
|
|
# SGA Memory Summary
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('sgaheapsummary',0)";
|
|||
|
|
|
|||
|
|
# PGA Memory Details
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('pgaheap',0)";
|
|||
|
|
|
|||
|
|
# Dump cell parameters
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('cellparams',0)";
|
|||
|
|
|
|||
|
|
# Setting $OSSCONF/cellinit.ora parameters dynamically.
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_setparam('_cell_io_hang_time','90')"
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_setparam('_cell_io_hang_kill_time','95')"
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_setparam('_cellrsdef_heartbeat_timeout','10')" (default 6s)
|
|||
|
|
|
|||
|
|
|
|||
|
|
Possible parameter
|
|||
|
|
_cell_1mb_buffers_hugepage_support=false
|
|||
|
|
_cell_disable_ant_check_reid=true
|
|||
|
|
_cell_io_hang_reboot=false
|
|||
|
|
_cell_io_hang_time=60
|
|||
|
|
_cell_num_16k_buffers=2000
|
|||
|
|
_cell_num_1mb_brr_buffers=5
|
|||
|
|
_cell_num_1mb_buffers=200
|
|||
|
|
_cell_num_1mb_bwr_buffers=5
|
|||
|
|
_cell_num_32k_buffers=1000
|
|||
|
|
_cell_num_64k_buffers=1000
|
|||
|
|
_cell_num_8k_buffers=5000
|
|||
|
|
_cell_num_buffers=1200
|
|||
|
|
_cell_print_all_params=true
|
|||
|
|
_cellrsbkp_poll_invl=15
|
|||
|
|
_cellrsdef_fast_restart=0
|
|||
|
|
_cellrsdef_heartbeat_timeout=6
|
|||
|
|
_cellrsdef_srvc_cleanup_time=5
|
|||
|
|
_cellrsdef_srvc_dump=30
|
|||
|
|
_cellrsms_poll_invl=60
|
|||
|
|
_cellrsos_poll_invl=15
|
|||
|
|
_cellrssrv_poll_invl=15
|
|||
|
|
_ms_cell_ioctl_timeout=60000
|
|||
|
|
_reconnect_to_cell_attempts=4
|
|||
|
|
_reonnect_to_cell_freq_in_sec=4
|
|||
|
|
_skgxp_gen_ant_off_rpc_timeout_in_sec=300
|
|||
|
|
_skgxp_gen_rpc_timeout_in_sec=90
|
|||
|
|
_skgxp_udp_use_tcb=false
|
|||
|
|
_skgxp_udp_use_tcb=false
|
|||
|
|
|
|||
|
|
# Storage Index parameters
|
|||
|
|
_cell_enable_storage_index_for_loads=TRUE
|
|||
|
|
_cell_enable_storage_index_for_writes=TRUE
|
|||
|
|
_cell_si_max_num_diag_mode_dumps=20
|
|||
|
|
_cell_storage_index_columns=0
|
|||
|
|
_cell_storage_index_diag_mode=false
|
|||
|
|
_cell_storage_index_partial_rd_sectors=512
|
|||
|
|
_cell_storage_index_partial_reads_threshold_percent=85
|
|||
|
|
_cell_storage_index_sizing_factor=2
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
alter cell events="immediate cellsrv.cellsrv_dump('cellparams',0)";
|
|||
|
|
|
|||
|
|
Dumping configuration parameter values
|
|||
|
|
version = 0.0 (default = )
|
|||
|
|
_cell_max_pll_pred_writes = 36
|
|||
|
|
_cell_pred_writes_autotune_enabled = TRUE
|
|||
|
|
_cell_max_pll_pred_reads = 36
|
|||
|
|
_cell_pred_reads_autotune_enabled = TRUE
|
|||
|
|
_cell_max_cellsup_time_in_sec = 60
|
|||
|
|
_cell_max_flash_largeios = 48
|
|||
|
|
_cell_num_threads_in_short_wait = 40
|
|||
|
|
_cell_max_pll_pred_filters = 24 (default = 0)
|
|||
|
|
_cell_pred_filters_autotune_enabled = TRUE
|
|||
|
|
_cell_num_threads = 100
|
|||
|
|
_cell_num_buffers = 5000
|
|||
|
|
_cell_num_1mb_buffers = 5000 (default = 0)
|
|||
|
|
_cell_num_1mb_bwr_buffers = 180
|
|||
|
|
_cell_num_1mb_brr_buffers = 180
|
|||
|
|
_cell_max_dynbufs_memsize = 3072 (default = 0)
|
|||
|
|
_cell_listener_port = 5042
|
|||
|
|
_cell_listener_backlog = 1000
|
|||
|
|
_cell_listener_pll_jobs = 23
|
|||
|
|
_cell_listener_req_batch = 100
|
|||
|
|
_cell_num_0_byte_recv_ports = 4
|
|||
|
|
_cell_num_512_byte_recv_ports = 1
|
|||
|
|
_cell_num_2_kb_recv_ports = 1
|
|||
|
|
_cell_num_4_kb_recv_ports = 2
|
|||
|
|
_cell_num_8_kb_recv_ports = 4
|
|||
|
|
_cell_num_16_kb_recv_ports = 2
|
|||
|
|
_cell_num_32_kb_recv_ports = 2
|
|||
|
|
_cell_num_64_kb_recv_ports = 1
|
|||
|
|
_cell_num_1_mb_recv_ports = 2 (default = 1)
|
|||
|
|
_ms_cell_ioctl_timeout = 600000
|
|||
|
|
_cell_cd_metadata_slow_list =
|
|||
|
|
_cell_cd_metadata_prepare_timeout_in_sec = 5
|
|||
|
|
_cell_iorm_test_mode = FALSE
|
|||
|
|
_cell_iorm_perf_stats = FALSE
|
|||
|
|
_cell_iorm_wl_mode = 0
|
|||
|
|
_cell_iorm_hipri_alloc = 0
|
|||
|
|
_cell_iorm_medpri_alloc = 0
|
|||
|
|
_cell_iorm_lowpri_alloc = 0
|
|||
|
|
_cell_iorm_asm_alloc = 0
|
|||
|
|
_cell_iorm_lutil_limit = 0
|
|||
|
|
_cell_iorm_hints_enabled = FALSE
|
|||
|
|
_iorm_hint0 = -1
|
|||
|
|
_iorm_priority0 = -1
|
|||
|
|
_iorm_hint1 = -1
|
|||
|
|
_iorm_priority1 = -1
|
|||
|
|
_iorm_hint2 = -1
|
|||
|
|
_iorm_priority2 = -1
|
|||
|
|
_iorm_hint3 = -1
|
|||
|
|
_iorm_priority3 = -1
|
|||
|
|
_iorm_hint4 = -1
|
|||
|
|
_iorm_priority4 = -1
|
|||
|
|
_iorm_hint5 = -1
|
|||
|
|
_iorm_priority5 = -1
|
|||
|
|
_iorm_hint6 = -1
|
|||
|
|
_iorm_priority6 = -1
|
|||
|
|
_iorm_hint7 = -1
|
|||
|
|
_iorm_priority7 = -1
|
|||
|
|
_cell_iorm_pri_catidx = -1
|
|||
|
|
_cell_iorm_pri_dbidx = -1
|
|||
|
|
_cell_iorm_pri_cgidx = -1
|
|||
|
|
_cell_iorm_enable = TRUE
|
|||
|
|
_cell_iorm_max_io = 0
|
|||
|
|
_cell_iorm_max_lio = 0
|
|||
|
|
_cell_iorm_conc_writes = 0
|
|||
|
|
_cell_iorm_deadline = 0
|
|||
|
|
_cell_iorm_fake_dbs = 0
|
|||
|
|
_cell_iorm_busy_util = 15
|
|||
|
|
_cell_hard_disable = FALSE
|
|||
|
|
_cell_raise_softassert_on_harderr = FALSE
|
|||
|
|
_cell_enable_ossnet_checksum = 2
|
|||
|
|
_cell_enable_skgxp_stats = TRUE
|
|||
|
|
_skgxp_udp_use_tcb = TRUE
|
|||
|
|
_skgxp_udp_use_tcb_client = TRUE
|
|||
|
|
_cell_memory_tracing = TRUE
|
|||
|
|
_cell_dmpsga_enabled = FALSE
|
|||
|
|
_cell_enable_dynamic_credits = TRUE
|
|||
|
|
_cell_num_ios_per_predjob = 10
|
|||
|
|
_cell_num_pred_flashio_corrupt_retries = 1000
|
|||
|
|
_cell_pred_polling_ctl_enabled = TRUE
|
|||
|
|
_cell_pred_sim_block_byteord_conv = FALSE
|
|||
|
|
_cell_max_kuty_failure_diagnostics = 0
|
|||
|
|
_cell_print_all_params = FALSE
|
|||
|
|
_cell_pred_disable_destbuf_refill = FALSE
|
|||
|
|
_cell_smartio_passthru_enabled = FALSE
|
|||
|
|
_cell_pred_no_predio_limit = FALSE
|
|||
|
|
_cell_pred_enable_io_buffer_eviction = TRUE
|
|||
|
|
_cell_pred_enable_dest_buffer_eviction = TRUE
|
|||
|
|
_cell_pred_enable_flashio = TRUE
|
|||
|
|
_cell_snapshot_bufsize = 1
|
|||
|
|
_cell_snapshot_interval = 100
|
|||
|
|
_cell_gen_time_stats_level = 1
|
|||
|
|
_cell_gen_time_stats_timer_level = 0
|
|||
|
|
_cell_force_split_gdisk = FALSE
|
|||
|
|
_cell_testlevel = 0
|
|||
|
|
_cell_max_receive_buffers_per_port = 600
|
|||
|
|
_cell_num_8k_buffers = 10000
|
|||
|
|
_cell_num_16k_buffers = 5000
|
|||
|
|
_cell_num_32k_buffers = 5000
|
|||
|
|
_cell_num_64k_buffers = 5000
|
|||
|
|
_cell_max_receive_buffers_8k_port = 1000
|
|||
|
|
_cell_max_receive_buffers_1mb_port = 50
|
|||
|
|
_cell_crash_on_error = 0
|
|||
|
|
_cell_crash_on_error_skip_n = 0
|
|||
|
|
_cell_safefile_sync_enabled = FALSE
|
|||
|
|
_cell_1mb_buffers_hugepage_support = TRUE
|
|||
|
|
_skgxp_udp_interface_detection_time_secs = 1
|
|||
|
|
_skgxp_gen_ant_ping_misscount = 8
|
|||
|
|
_skgxp_gen_ant_ping_misscount_delay = 225
|
|||
|
|
_disable_diskmon_tcp_monitor = FALSE
|
|||
|
|
_disable_diskmon_subnet_manager_query = FALSE
|
|||
|
|
_skgxp_min_zcpy_len = 2147483647
|
|||
|
|
_skgxp_min_rpc_rcv_zcpy_len = 2147483647
|
|||
|
|
_skgxp_zcpy_flags = 2147483647
|
|||
|
|
_skgxp_ctx_flags1 = 0
|
|||
|
|
_skgxp_ctx_flags1mask = 0
|
|||
|
|
_skgxp_dynamic_protocol = 0
|
|||
|
|
_skgxp_inets = 0
|
|||
|
|
_skgxpg_last_parameter = 27
|
|||
|
|
_skgxp_ant_options = 0
|
|||
|
|
_libcell_enable_libcell_interrupts = 1
|
|||
|
|
_cell_rcvport_hist_size = 0
|
|||
|
|
_skgxp_gen_rpc_no_path_check_in_sec = 1
|
|||
|
|
_skgxp_gen_rpc_timeout_in_sec = 300
|
|||
|
|
_skgxp_gen_ant_off_rpc_timeout_in_sec = 10
|
|||
|
|
_reconnect_to_cell_freq_in_sec = 2
|
|||
|
|
_reconnect_to_cell_attempts = 7
|
|||
|
|
_disconnect_to_cell_attempts = 2
|
|||
|
|
_reconnect_controls_reset_interval = 60
|
|||
|
|
_dskm_disable_reconnect_to_cell = FALSE
|
|||
|
|
_cell_disable_resource_leak_check = FALSE
|
|||
|
|
_cell_disable_ant_check_reid = FALSE
|
|||
|
|
_cell_disable_proactive_drop = FALSE
|
|||
|
|
_cell_server_event =
|
|||
|
|
_cell_client_event =
|
|||
|
|
_cell_offloadserver_event =
|
|||
|
|
_cell_reserve_hugepage_memory_mb = 24
|
|||
|
|
_cell_tolerates_max_backward_drift_microsecs = 300000
|
|||
|
|
_cell_num_sched_log_entries = 8192
|
|||
|
|
_cell_storage_index_columns = 8 (default = 0)
|
|||
|
|
_cell_storage_index_partial_reads_threshold_percent = 85
|
|||
|
|
_cell_storage_index_partial_rd_sectors = 512
|
|||
|
|
_cell_enable_storage_index_for_loads = TRUE
|
|||
|
|
_cell_enable_storage_index_for_writes = TRUE
|
|||
|
|
_cell_storage_index_diag_mode = 0
|
|||
|
|
_cell_storage_index_sizing_factor = 2
|
|||
|
|
_cell_pred_max_smartio_sessions = 2320 (default = 0)
|
|||
|
|
_cell_pred_max_core_exec_threads = 23 (default = 14)
|
|||
|
|
_cell_core_exec_ctl_level = 0
|
|||
|
|
_cell_pred_num_ios_toissue_flashobj = 2
|
|||
|
|
_cell_max_topheap_references = 50
|
|||
|
|
_cell_pred_max_cus_per_filter = 1
|
|||
|
|
_cell_load_timezone_during_boot = TRUE
|
|||
|
|
_cell_sendport_private_rqh_pool_size = 10
|
|||
|
|
_cell_sendport_global_rqh_num_pools = 512
|
|||
|
|
_cell_sendport_global_rqh_pool_maxincr = 150
|
|||
|
|
_cell_capability_version = 0
|
|||
|
|
_cell_iolat_stats_disable = FALSE
|
|||
|
|
_cell_pred_mapelem_split_size = -1
|
|||
|
|
_cell_perf_flags = 0
|
|||
|
|
_cell_enable_sbuf_check = FALSE
|
|||
|
|
_cell_disable_crash_dump_enhancement = FALSE
|
|||
|
|
_cell_object_expiration_hours = 24
|
|||
|
|
_cell_mutex_stats = 0
|
|||
|
|
_cell_port_activity_threshold = 300000
|
|||
|
|
_cell_ant_port_activity_threshold = 1800000
|
|||
|
|
_cell_ant_port_noopen_threshold = 60000
|
|||
|
|
_cell_in_lrg_testing = FALSE
|
|||
|
|
_cell_write_simulate_hard_error_freq = 0
|
|||
|
|
_cell_assert_on_flash_data_corruption = 0
|
|||
|
|
_cell_flashcache_diag_reads_frequency = 0
|
|||
|
|
_cell_flashcache_enable_coalescing = TRUE
|
|||
|
|
_cell_flashcache_mdextent_chksum = 2
|
|||
|
|
_cell_read_flash_data_verif_level = 3
|
|||
|
|
_cell_flashcache_data_verif_aura1 = TRUE
|
|||
|
|
_cell_flashcache_data_verif_aura2 = FALSE
|
|||
|
|
_cell_read_flash_gdisk_verif_level = 3
|
|||
|
|
_cell_max_retry_on_read_flash_gdisk_verif_err = 2
|
|||
|
|
_cell_enable_read_verif_on_these_gdisks =
|
|||
|
|
_cell_enable_read_verif_on_gdisk_first_N_MB = -1
|
|||
|
|
_cell_flash_cache_sanity_checking = 0
|
|||
|
|
_cell_fc_force_caching_for_nocache_ios = FALSE
|
|||
|
|
_cellrsdef_fast_restart = 1
|
|||
|
|
_cell_max_memory = 22171 (default = 0)
|
|||
|
|
_cell_max_dump_objects = 300000
|
|||
|
|
_cell_max_connections = 1500 (default = 0)
|
|||
|
|
_cell_sga_lowmem_threshold_size = 1024 (default = 0)
|
|||
|
|
_cell_nomem_threshold_enabled = TRUE
|
|||
|
|
_cell_sga_lowmem_threshold_enabled = TRUE
|
|||
|
|
_cell_disable_heap_summary = FALSE
|
|||
|
|
_cell_flashcache_max_FDOM_outst_ios = 70
|
|||
|
|
_cell_flashcache_dsync_jobs = 4
|
|||
|
|
_cell_wait_gdisk_refcnt_timeout_in_sec = 600
|
|||
|
|
_cell_gd_io_quiescent_timeout = 10
|
|||
|
|
_cell_auto_close_fd_interval = 120
|
|||
|
|
_cell_dump_sga_on_oom_exception = FALSE
|
|||
|
|
_cell_quarantine_manager_disabled = FALSE
|
|||
|
|
_cell_qm_disable_sql_step_quarantine = FALSE
|
|||
|
|
_cell_qm_disable_disk_region_quarantine = FALSE
|
|||
|
|
_cell_qm_db_quarantine_threshold = 3
|
|||
|
|
_cell_qm_offload_quarantine_threshold = 3
|
|||
|
|
_cell_thread_max_trace_file_size = -1
|
|||
|
|
_cell_redolog_fast_ack = FALSE
|
|||
|
|
_cell_disable_flashcache_db_blk_chksum = FALSE
|
|||
|
|
_cell_disable_platform_decryption = FALSE
|
|||
|
|
_cell_disable_flash_gdisk_db_blk_chksum = FALSE
|
|||
|
|
_cell_auto_dump_errstack = TRUE
|
|||
|
|
_cell_auto_dump_errstack_interval = 900
|
|||
|
|
_cell_si_max_num_diag_mode_dumps = 20
|
|||
|
|
_cell_fc_persistence_max_io_retry = 1
|
|||
|
|
_cell_fc_slowflush_sleep_interval = 500
|
|||
|
|
_cell_fc_persistence_state = 0
|
|||
|
|
_cell_fc_md_shadow_paging_enabled = TRUE
|
|||
|
|
_cell_fc_use_32k_cachelines = FALSE
|
|||
|
|
_cell_fc_scan_tc_blksize = 4
|
|||
|
|
_cell_fc_autocache_scans = TRUE
|
|||
|
|
_cell_fc_scan_elgblty_threshold = 1
|
|||
|
|
_cell_fc_scan_tc_threshold = 2
|
|||
|
|
_cell_fc_scan_tc_cooling_threshold = 10
|
|||
|
|
_cell_disable_crash_dump_enhancement = FALSE
|
|||
|
|
_cell_object_expiration_hours = 24
|
|||
|
|
_cell_mutex_stats = 0
|
|||
|
|
_cell_port_activity_threshold = 300000
|
|||
|
|
_cell_ant_port_activity_threshold = 1800000
|
|||
|
|
_cell_ant_port_noopen_threshold = 60000
|
|||
|
|
_cell_in_lrg_testing = FALSE
|
|||
|
|
_cell_write_simulate_hard_error_freq = 0
|
|||
|
|
_cell_assert_on_flash_data_corruption = 0
|
|||
|
|
_cell_flashcache_diag_reads_frequency = 0
|
|||
|
|
_cell_flashcache_enable_coalescing = TRUE
|
|||
|
|
_cell_flashcache_mdextent_chksum = 2
|
|||
|
|
_cell_read_flash_data_verif_level = 3
|
|||
|
|
_cell_flashcache_data_verif_aura1 = TRUE
|
|||
|
|
_cell_flashcache_data_verif_aura2 = FALSE
|
|||
|
|
_cell_read_flash_gdisk_verif_level = 3
|
|||
|
|
_cell_max_retry_on_read_flash_gdisk_verif_err = 2
|
|||
|
|
_cell_enable_read_verif_on_these_gdisks =
|
|||
|
|
_cell_enable_read_verif_on_gdisk_first_N_MB = -1
|
|||
|
|
_cell_flash_cache_sanity_checking = 0
|
|||
|
|
_cell_fc_force_caching_for_nocache_ios = FALSE
|
|||
|
|
_cellrsdef_fast_restart = 1
|
|||
|
|
_cell_max_memory = 22171 (default = 0)
|
|||
|
|
_cell_max_dump_objects = 300000
|
|||
|
|
_cell_max_connections = 1500 (default = 0)
|
|||
|
|
_cell_sga_lowmem_threshold_size = 1024 (default = 0)
|
|||
|
|
_cell_nomem_threshold_enabled = TRUE
|
|||
|
|
_cell_sga_lowmem_threshold_enabled = TRUE
|
|||
|
|
_cell_disable_heap_summary = FALSE
|
|||
|
|
_cell_flashcache_max_FDOM_outst_ios = 70
|
|||
|
|
_cell_flashcache_dsync_jobs = 4
|
|||
|
|
_cell_wait_gdisk_refcnt_timeout_in_sec = 600
|
|||
|
|
_cell_gd_io_quiescent_timeout = 10
|
|||
|
|
_cell_auto_close_fd_interval = 120
|
|||
|
|
_cell_dump_sga_on_oom_exception = FALSE
|
|||
|
|
_cell_quarantine_manager_disabled = FALSE
|
|||
|
|
_cell_qm_disable_sql_step_quarantine = FALSE
|
|||
|
|
_cell_qm_disable_disk_region_quarantine = FALSE
|
|||
|
|
_cell_qm_db_quarantine_threshold = 3
|
|||
|
|
_cell_qm_offload_quarantine_threshold = 3
|
|||
|
|
_cell_thread_max_trace_file_size = -1
|
|||
|
|
_cell_redolog_fast_ack = FALSE
|
|||
|
|
_cell_disable_flashcache_db_blk_chksum = FALSE
|
|||
|
|
_cell_disable_platform_decryption = FALSE
|
|||
|
|
_cell_disable_flash_gdisk_db_blk_chksum = FALSE
|
|||
|
|
_cell_auto_dump_errstack = TRUE
|
|||
|
|
_cell_auto_dump_errstack_interval = 900
|
|||
|
|
_cell_si_max_num_diag_mode_dumps = 20
|
|||
|
|
_cell_fc_persistence_max_io_retry = 1
|
|||
|
|
_cell_fc_slowflush_sleep_interval = 500
|
|||
|
|
_cell_fc_persistence_state = 0
|
|||
|
|
_cell_fc_md_shadow_paging_enabled = TRUE
|
|||
|
|
_cell_fc_use_32k_cachelines = FALSE
|
|||
|
|
_cell_fc_scan_tc_blksize = 4
|
|||
|
|
_cell_fc_autocache_scans = TRUE
|
|||
|
|
_cell_fc_scan_elgblty_threshold = 1
|
|||
|
|
_cell_fc_scan_tc_threshold = 2
|
|||
|
|
_cell_fc_scan_tc_cooling_threshold = 10
|
|||
|
|
_cell_fc_scan_tc_decay_zone_sz = 4
|
|||
|
|
_cell_fc_scan_tc_num_decay_zones = 6
|
|||
|
|
_cell_fc_scan_threshold_timeout = 1
|
|||
|
|
_cell_fc_oltp_resv_pcntg = 50
|
|||
|
|
_cell_fc_cache_unkept_tbls = TRUE
|
|||
|
|
_cell_fc_num_hashbuckets = 0
|
|||
|
|
_cell_fc_aura2_md_shadow_paging_enabled = FALSE
|
|||
|
|
_cell_fc_bootstrap_timeout = 5000000
|
|||
|
|
_cell_fc_cache_mirror_writes = 1
|
|||
|
|
_cell_fc_dw_batch_size = 1
|
|||
|
|
_cell_fc_lru_scan4freeable_depth = 128
|
|||
|
|
_cell_fc_enable_opread = TRUE
|
|||
|
|
_cell_fc_replacement_threshold = 94
|
|||
|
|
_cell_fc_trim_threshold = 97
|
|||
|
|
_cell_fc_lrg_compression_ratio = 5
|
|||
|
|
_cell_fc_outstanding_trim_ios = 32
|
|||
|
|
_cell_simulate_railroad_crashes = FALSE
|
|||
|
|
_cell_fc_toresilver_limit_chdrs = 390000
|
|||
|
|
_cell_qm_max_simulated_railroad_crashes = 2
|
|||
|
|
_cell_latency_warning_threshold =
|
|||
|
|
_cell_latency_threshold_check_interval = 360000
|
|||
|
|
_cell_latency_threshold_print_warning = FALSE
|
|||
|
|
_cell_si_expensive_debug_tracing = FALSE
|
|||
|
|
_cell_si_lock_pool_num_locks = 1024
|
|||
|
|
_cell_poor_perf_schedule_time = 5000
|
|||
|
|
_cell_iohang_schedule_time = 500
|
|||
|
|
_cell_assert_unsafe_allocmem = FALSE
|
|||
|
|
_cell_fplib_fix_control = 0
|
|||
|
|
Unable to lookup value for parameter _lost_cache_detect
|
|||
|
|
_cell_num_vers_check_fail_messages = 0
|
|||
|
|
_cell_qm_db_quarantine_time_threshold = 86400
|
|||
|
|
_cell_pthread_stacksize = 10485760
|
|||
|
|
_cell_flashlog_flags = 0
|
|||
|
|
_cell_flashlog_max_active_table_size = 8191
|
|||
|
|
_cell_secure_erase_power = 5
|
|||
|
|
_cell_mpp_cpu_freq = 2
|
|||
|
|
_ms_listener_port = 5043
|
|||
|
|
_cell_mpp_threshold = 90
|
|||
|
|
_cell_mpp_max_pushback = 50
|
|||
|
|
_si_write_diag_disable = FALSE
|
|||
|
|
_cell_max_cellsrvstat_sessions = 3
|
|||
|
|
_cell_si_diag_mode_force = FALSE
|
|||
|
|
_cell_tracefile_max_size = 1610612736
|
|||
|
|
_cell_state_dump_options = 0
|
|||
|
|
_cell_num_offload_processes = 0 (default = 1)
|
|||
|
|
_cell_num_offload_groupmsg_threads = 0
|
|||
|
|
_cell_in_debug_mode = FALSE
|
|||
|
|
_cell_oflsrv_heartbeat_timeout_sec = 6
|
|||
|
|
ERROR: _gentimestats_rut_thresh has invalid ossp_conf size of 8
|
|||
|
|
_skgxp_diag_bucket_size = 32
|
|||
|
|
_cell_diag_bucket_size = 131072 (default = 128)
|
|||
|
|
Unable to lookup value for parameter _gentimestats_rut_disable_stkdmp
|
|||
|
|
_ms_mprotect_corrupt_buf = TRUE
|
|||
|
|
_cell_perf_action =
|
|||
|
|
_cell_perf_tests =
|
|||
|
|
_cell_fc_enable_resilvering = TRUE
|
|||
|
|
_cell_netsend_out_jobq_count = 10
|
|||
|
|
_cell_cache_out_jobq_count = 50
|
|||
|
|
_cell_aio_ctx_count = 5
|
|||
|
|
_cell_iops_perf_testing = FALSE
|
|||
|
|
_cell_flashcache_dsync_jobs = 4
|
|||
|
|
_cell_wait_gdisk_refcnt_timeout_in_sec = 600
|
|||
|
|
_cell_gd_io_quiescent_timeout = 10
|
|||
|
|
_cell_auto_close_fd_interval = 120
|
|||
|
|
_cell_dump_sga_on_oom_exception = FALSE
|
|||
|
|
_cell_quarantine_manager_disabled = FALSE
|
|||
|
|
_cell_qm_disable_sql_step_quarantine = FALSE
|
|||
|
|
_cell_qm_disable_disk_region_quarantine = FALSE
|
|||
|
|
_cell_qm_db_quarantine_threshold = 3
|
|||
|
|
_cell_qm_offload_quarantine_threshold = 3
|
|||
|
|
_cell_thread_max_trace_file_size = -1
|
|||
|
|
_cell_redolog_fast_ack = FALSE
|
|||
|
|
_cell_disable_flashcache_db_blk_chksum = FALSE
|
|||
|
|
_cell_disable_platform_decryption = FALSE
|
|||
|
|
_cell_disable_flash_gdisk_db_blk_chksum = FALSE
|
|||
|
|
_cell_auto_dump_errstack = TRUE
|
|||
|
|
_cell_auto_dump_errstack_interval = 900
|
|||
|
|
_cell_si_max_num_diag_mode_dumps = 20
|
|||
|
|
_cell_fc_persistence_max_io_retry = 1
|
|||
|
|
_cell_fc_slowflush_sleep_interval = 500
|
|||
|
|
_cell_fc_persistence_state = 0
|
|||
|
|
_cell_fc_md_shadow_paging_enabled = TRUE
|
|||
|
|
_cell_fc_use_32k_cachelines = FALSE
|
|||
|
|
_cell_fc_scan_tc_blksize = 4
|
|||
|
|
_cell_fc_autocache_scans = TRUE
|
|||
|
|
_cell_fc_scan_elgblty_threshold = 1
|
|||
|
|
_cell_fc_scan_tc_threshold = 2
|
|||
|
|
_cell_fc_scan_tc_cooling_threshold = 10
|
|||
|
|
_cell_fc_scan_tc_decay_zone_sz = 4
|
|||
|
|
_cell_fc_scan_tc_num_decay_zones = 6
|
|||
|
|
_cell_fc_scan_threshold_timeout = 1
|
|||
|
|
_cell_fc_oltp_resv_pcntg = 50
|
|||
|
|
_cell_fc_cache_unkept_tbls = TRUE
|
|||
|
|
_cell_fc_num_hashbuckets = 0
|
|||
|
|
_cell_fc_aura2_md_shadow_paging_enabled = FALSE
|
|||
|
|
_cell_fc_bootstrap_timeout = 5000000
|
|||
|
|
_cell_fc_cache_mirror_writes = 1
|
|||
|
|
_cell_fc_dw_batch_size = 1
|
|||
|
|
_cell_fc_lru_scan4freeable_depth = 128
|
|||
|
|
_cell_fc_enable_opread = TRUE
|
|||
|
|
_cell_fc_replacement_threshold = 94
|
|||
|
|
_cell_fc_trim_threshold = 97
|
|||
|
|
_cell_fc_lrg_compression_ratio = 5
|
|||
|
|
_cell_fc_outstanding_trim_ios = 32
|
|||
|
|
_cell_simulate_railroad_crashes = FALSE
|
|||
|
|
_cell_fc_toresilver_limit_chdrs = 390000
|
|||
|
|
_cell_qm_max_simulated_railroad_crashes = 2
|
|||
|
|
_cell_latency_warning_threshold =
|
|||
|
|
_cell_latency_threshold_check_interval = 360000
|
|||
|
|
_cell_latency_threshold_print_warning = FALSE
|
|||
|
|
_cell_si_expensive_debug_tracing = FALSE
|
|||
|
|
_cell_si_lock_pool_num_locks = 1024
|
|||
|
|
_cell_poor_perf_schedule_time = 5000
|
|||
|
|
_cell_iohang_schedule_time = 500
|
|||
|
|
_cell_assert_unsafe_allocmem = FALSE
|
|||
|
|
_cell_fplib_fix_control = 0
|
|||
|
|
Unable to lookup value for parameter _lost_cache_detect
|
|||
|
|
_cell_num_vers_check_fail_messages = 0
|
|||
|
|
_cell_qm_db_quarantine_time_threshold = 86400
|
|||
|
|
_cell_pthread_stacksize = 10485760
|
|||
|
|
_cell_flashlog_flags = 0
|
|||
|
|
_cell_flashlog_max_active_table_size = 8191
|
|||
|
|
_cell_secure_erase_power = 5
|
|||
|
|
_cell_mpp_cpu_freq = 2
|
|||
|
|
_ms_listener_port = 5043
|
|||
|
|
_cell_mpp_threshold = 90
|
|||
|
|
_cell_mpp_max_pushback = 50
|
|||
|
|
_si_write_diag_disable = FALSE
|
|||
|
|
_cell_max_cellsrvstat_sessions = 3
|
|||
|
|
_cell_si_diag_mode_force = FALSE
|
|||
|
|
_cell_tracefile_max_size = 1610612736
|
|||
|
|
_cell_state_dump_options = 0
|
|||
|
|
_cell_num_offload_processes = 0 (default = 1)
|
|||
|
|
_cell_num_offload_groupmsg_threads = 0
|
|||
|
|
_cell_in_debug_mode = FALSE
|
|||
|
|
_cell_oflsrv_heartbeat_timeout_sec = 6
|
|||
|
|
ERROR: _gentimestats_rut_thresh has invalid ossp_conf size of 8
|
|||
|
|
_skgxp_diag_bucket_size = 32
|
|||
|
|
_cell_diag_bucket_size = 131072 (default = 128)
|
|||
|
|
Unable to lookup value for parameter _gentimestats_rut_disable_stkdmp
|
|||
|
|
_ms_mprotect_corrupt_buf = TRUE
|
|||
|
|
_cell_perf_action =
|
|||
|
|
_cell_perf_tests =
|
|||
|
|
_cell_fc_enable_resilvering = TRUE
|
|||
|
|
_cell_netsend_out_jobq_count = 10
|
|||
|
|
_cell_cache_out_jobq_count = 50
|
|||
|
|
_cell_aio_ctx_count = 5
|
|||
|
|
_cell_iops_perf_testing = FALSE
|
|||
|
|
_cell_netsend_returnjob_thres_for_8Kbuf = 500
|
|||
|
|
_kse_snap_ring_size = 0
|
|||
|
|
_kse_snap_ring_record_stack = FALSE
|
|||
|
|
_cell_num_priv_fsa_8k_buffers = 0
|
|||
|
|
_cell_num_dynamic_priv_fsa_8k_buffers = 60
|
|||
|
|
_cell_num_dynamic_priv_fsa_cachegets = 50
|
|||
|
|
_cell_num_dynamic_priv_fsa_bids = 50
|
|||
|
|
_cell_dynamic_priv_fsa_8k_iops_threshold = 160000
|
|||
|
|
_cell_assert_on_diagmode_catching_wrong_results = FALSE
|
|||
|
|
_cell_cd_scrubbing_exclude_list =
|
|||
|
|
_cell_receiveport_buf_alloc_incr = 10
|
|||
|
|
_cell_num_qos_1_mb_recv_ports = 1
|
|||
|
|
_cell_max_receive_buffers_qos_1mb_port = 10
|
|||
|
|
_cell_oob_max_growth_percent = 20
|
|||
|
|
_cell_oob_max_growth_qos = 250
|
|||
|
|
_oss_enable_scrub_repair = TRUE
|
|||
|
|
_cell_system_thread_max_trace_file_size = 6291456
|
|||
|
|
_cell_timer_granularity_msec = 5
|
|||
|
|
_cell_ffi_flush_interval = 2000
|
|||
|
|
_cell_ffi_max_memory_usage_in_mb = 2000
|
|||
|
|
_cell_netsend_queue_thresh = 500
|
|||
|
|
_cell_port_frozen_threshold = 3600000
|
|||
|
|
_dskm_test_fence_postpone = 0
|
|||
|
|
_cell_rslv_poor_health = TRUE
|
|||
|
|
_cell_hugetlbtext_relocate = TRUE
|
|||
|
|
_cell_allow_write_cancellation_upon_hair_trigger = FALSE
|
|||
|
|
_cell_enable_buffer_owner_hist = FALSE
|
|||
|
|
Cellsrv Default Trace Size Limit 15042511
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
###################################
|
|||
|
|
ZFS Tuning
|
|||
|
|
##############
|
|||
|
|
|
|||
|
|
NFS parameter listen_backlog=128
|
|||
|
|
ZFS52-2# ndd -set /dev/tcp tcp_conn_req_max_q 1024
|
|||
|
|
ZFS52-2# ndd -set /dev/tcp tcp_conn_req_max_q0 8192
|
|||
|
|
|
|||
|
|
|
|||
|
|
###################################
|
|||
|
|
Exadata Network Interface Check
|
|||
|
|
###################################
|
|||
|
|
|
|||
|
|
##-- Check bonded interface slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bond0/bonding/slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bond1/bonding/slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bond2/bonding/slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bondeth0/bonding/slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bondeth1/bonding/slaves
|
|||
|
|
dcli -l root -g ~/dbs_group cat /sys/class/net/bondib0/bonding/slaves
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##-- Check network interface status
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth0|egrep 'detected|Speed'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth1|egrep 'detected|Speed'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth2|egrep 'detected|Speed'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth3|egrep 'detected|Speed'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth4|egrep 'detected|Speed'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth5|egrep 'detected|Speed'|sort -k2
|
|||
|
|
|
|||
|
|
|
|||
|
|
##-- Check supported network interface speed
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth0|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth1|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth2|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth3|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth4|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
dcli -l root -g ~/dbs_group ethtool eth5|egrep -A2 ' Supported link modes'|sort -k2
|
|||
|
|
|
|||
|
|
##-- Check IP Address
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bond0|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bond1|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bond2|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bondeth0|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bondeth1|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig bondib0|grep 'inet addr'
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth0|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth1|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth2|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth3|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth4|grep 'inet addr'
|
|||
|
|
dcli -l root -g ~/dbs_group ifconfig eth5|grep 'inet addr'
|
|||
|
|
|
|||
|
|
|
|||
|
|
###############################
|
|||
|
|
Exadata Unix Account Creation
|
|||
|
|
###############################
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/dbs_group mkdir -p /home/vgupta
|
|||
|
|
dcli -l root -g ~/dbs_group useradd -u 24117 -g techdept -G dbapm -d /home/vgupta -s /bin/bash vgupta
|
|||
|
|
## change user password expiry information
|
|||
|
|
dcli -l root -g ~/dbs_group chage -E -1 -m 0 -M 99999 -W 7 vgupta
|
|||
|
|
dcli -l root -g ~/dbs_group chown vgupta:vgupta /home/vgupta
|
|||
|
|
|
|||
|
|
dcli -l root -g ~/dbs_group "passwd vgupta <<EOF
|
|||
|
|
password
|
|||
|
|
password
|
|||
|
|
EOF
|
|||
|
|
"
|
|||
|
|
|
|||
|
|
#################
|
|||
|
|
Exadata Tuning
|
|||
|
|
#################
|
|||
|
|
|
|||
|
|
#------------------------------------------
|
|||
|
|
# Increase vm.max_map_count to 200000
|
|||
|
|
#------------------------------------------
|
|||
|
|
|
|||
|
|
# Max oracle process memory is allowd upto (_realfree_heap_pagesize_hint * vm.max_map_count ).
|
|||
|
|
# Default value of vm.max_map_count is 65536. This can be changed on the fly
|
|||
|
|
# Default value of _realfree_heap_pagesize_hint parameter is 65536. It requires instance bounce to change this value.
|
|||
|
|
|
|||
|
|
|
|||
|
|
# Check
|
|||
|
|
dcli -l root -g dbs_group cat /proc/sys/vm/max_map_count
|
|||
|
|
dcli -l root -g dbs_group /sbin/sysctl vm.max_map_count
|
|||
|
|
|
|||
|
|
# Change
|
|||
|
|
dcli -l root -g dbs_group 'echo 200000 > /proc/sys/vm/max_map_count'
|
|||
|
|
dcli -l root -g dbs_group 'echo vm.max_map_count=200000 >> /etc/sysctl.conf'
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
Exadata Disk Scrubbing
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
# Check Disk scrubbing schedule
|
|||
|
|
dcli -l root -g ~/cell_group ' grep hardDiskScrubInterval $OSSCONF/cell_disk_config.xml'
|
|||
|
|
dcli -l root -g ~/cell_group ' grep hardDiskScrubStartTime $OSSCONF/cell_disk_config.xml'
|
|||
|
|
|
|||
|
|
# Stop disk scrubbing
|
|||
|
|
dcli -l root -g ~/cell_group " cellcli -e ALTER CELL hardDiskScrubInterval=none "
|
|||
|
|
|
|||
|
|
# Schedule disk scrubbing time
|
|||
|
|
dcli -l root -g ~/cell_group " \" cellcli -e ALTER CELL hardDiskScrubStartTime='2015-08-23T00:00:00-07:00' \" "
|
|||
|
|
|
|||
|
|
# Set disk scrubbing interval (Valid options are daily, weekly, biweekly and none). Time is in ms.
|
|||
|
|
# 14 days = 1209600000 ms
|
|||
|
|
# 7 days = 604800000 ms
|
|||
|
|
# 1 day = 86400000 ms
|
|||
|
|
dcli -l root -g ~/cell_group " cellcli -e ALTER CELL hardDiskScrubInterval=biweekly "
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
-------------------------------------------------------------------
|
|||
|
|
-- ASM Disk Errors
|
|||
|
|
-------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
SELECT failgroup
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_00',read_errs+write_errs,0)) CD_00
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_01',read_errs+write_errs,0)) CD_01
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_02',read_errs+write_errs,0)) CD_02
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_03',read_errs+write_errs,0)) CD_03
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_04',read_errs+write_errs,0)) CD_04
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_05',read_errs+write_errs,0)) CD_05
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_06',read_errs+write_errs,0)) CD_06
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_07',read_errs+write_errs,0)) CD_07
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_08',read_errs+write_errs,0)) CD_08
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_09',read_errs+write_errs,0)) CD_09
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_10',read_errs+write_errs,0)) CD_10
|
|||
|
|
, sum(DECODE(substr(name,INSTR(name,'_',-1,3)+1,5), 'CD_11',read_errs+write_errs,0)) CD_11
|
|||
|
|
FROM gv$asm_disk_stat
|
|||
|
|
where name like '%CD%'
|
|||
|
|
GROUP BY failgroup
|
|||
|
|
ORDER BY 1;
|
|||
|
|
|
|||
|
|
|
|||
|
|
##########################
|
|||
|
|
# Exadata Rsync backup
|
|||
|
|
##########################
|
|||
|
|
|
|||
|
|
BACKUP_DIR=/u23/oraback/exadata/`hostname -s`/
|
|||
|
|
rsync -a -v --one-file-system --delete /app ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /bin ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /boot ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /etc ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /lib ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /lib64 ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /mnt ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /opt ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /root ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /sbin ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /selinux ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /srv ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /usr ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /var ${BACKUP_DIR}
|
|||
|
|
rsync -a -v --one-file-system --delete /u01 ${BACKUP_DIR} --exclude='/u01/patches/' --exclude='*.aud' --exclude='*.trc' --exclude='*.trm'
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
BACKUP_DIR=/u23/oraback/exadata/`hostname -s`/
|
|||
|
|
rsync -a -v --one-file-system --delete /u01 ${BACKUP_DIR} --exclude='/u01/patches/' --exclude='*.aud' --exclude='*.trc' --exclude='*.trm'
|
|||
|
|
|