If you attended my Exadata hacking session today, you saw me using the cellver.sql script which lists some basic configuration info about the currently connected storage cells:
SQL> @exadata/cellver Show Exadata cell versions from V$CELL_CONFIG.... CELLNAME CELLSRV_VERSION FLASH_CACHE_MODE CPU_COUNT UPTIME KERNEL_VERSION MAKE_MODEL -------------------- -------------------- -------------------- ---------- -------------------- ------------------------------ -------------------------------------------------- 192.168.12.10 11.2.3.2.1 WriteBack 24 8 days, 2:07 2.6.32-400.11.1.el5uek Oracle Corporation SUN FIRE X4270 M2 SERVER SAS 192.168.12.11 11.2.3.2.1 WriteBack 24 8 days, 2:06 2.6.32-400.11.1.el5uek Oracle Corporation SUN FIRE X4270 M2 SERVER SAS 192.168.12.8 11.2.3.2.1 WriteBack 24 8 days, 2:06 2.6.32-400.11.1.el5uek Oracle Corporation SUN FIRE X4270 M2 SERVER SAS 192.168.12.9 11.2.3.2.1 WriteBack 24 8 days, 2:06 2.6.32-400.11.1.el5uek Oracle Corporation SUN FIRE X4270 M2 SERVER SAS
The output is pretty self-explanatory. One thing to note is that the CPU_COUNT is not the number of CPU cores, but just the number of “virtual” CPU threads presented to the OS, in this case 24 threads over 12 cores.
The script itself is simple, just extracting some XML values from the “CELL” type config records:
SQL> l 1 SELECT 2 cellname cv_cellname 3 , CAST(extract(xmltype(confval), '/cli-output/cell/releaseVersion/text()') AS VARCHAR2(20)) cv_cellVersion 4 , CAST(extract(xmltype(confval), '/cli-output/cell/flashCacheMode/text()') AS VARCHAR2(20)) cv_flashcachemode 5 , CAST(extract(xmltype(confval), '/cli-output/cell/cpuCount/text()') AS VARCHAR2(10)) cpu_count 6 , CAST(extract(xmltype(confval), '/cli-output/cell/upTime/text()') AS VARCHAR2(20)) uptime 7 , CAST(extract(xmltype(confval), '/cli-output/cell/kernelVersion/text()') AS VARCHAR2(30)) kernel_version 8 , CAST(extract(xmltype(confval), '/cli-output/cell/makeModel/text()') AS VARCHAR2(50)) make_model 9 FROM 10 v$cell_config -- gv$ isn't needed, all cells should be visible in all instances 11 WHERE 12 conftype = 'CELL' 13 ORDER BY 14* cv_cellname
I will add some more scripts to the exadata directory over the coming days.
Enjoy! :)





Nice :-) Thank you, Tanel!
I know you get asked this after every presentation but what the h@ll: I was unable to attend the webinar yesterday. I’ve thoroughly enjoyed all of the others. Will this one be posted any time soon?
Thanks for all you do for the community Tanel.
Chris
Yep I hope to upload it either today or over the weekend. Not sure yet when, but once it’s up, I’ll mention it in the blog!
Hope Oracle enhances this view with some performance statistics about cells, disks, flash in future. For now, information about luns, cell disks, grid disks and physical disks can be pulled in sql style (http://vishaldesai.wordpress.com/2012/08/20/vcell_config/).
Nice!
Nice Tanel !
@vishal (and the others of course ;-) ) if you want to get some performance metrics related to the Exadata cells (and see the interaction with the db servers), you may find this blog series usefull :
http://bdrouvot.wordpress.com/2013/02/15/asm-io-statistics-utility/
http://bdrouvot.wordpress.com/2013/02/18/asm-preferred-read-collect-performance-metrics/
http://bdrouvot.wordpress.com/2013/02/21/exadata-storage-cells-io-performance-metrics-and-io-distribution-with-db-servers/
http://bdrouvot.wordpress.com/2013/03/06/asm-io-statistics-utility-update-for-exadata/
The last 2 ones explain how it can be useful for Exadata.
Thx
Bertrand
Good stuff, I will add these scripts to my exadata peformance tools page … whenever I manage to actually write it :)