Command Traces on Cloudbyte ElastiStor
Often, consumers of storage boxes, including IT admins, may come across questions about what happens when they perform simple system operations or execute commands on the CLI. And while they may not want to get too low-level (that is engineering’s headache), any technical descriptions about what happens in the background is always appreciated. From personal experience as a customer-facing-team-member in CloudByte, a considerable part of training sessions for our clients’ storage operations teams is centered around explaining “basic” internals of common system functions OR user operations. I thought it would be a good idea to place some simple findings we share with them. Hope that it helps in understanding storage better!
Actions on NFS v3 volumes & corresponding Remote procedure functions
How often have you wondered what happens when you use an NFS export over the network? What are the remote calls sent from the NFS client to the NFS server? Why do you need this info anyway? Well, it helps us understand the protocol better and point-out some undesired behaviour (performance problem?) proactively. (An aside — if you happen to be a storage-QA engineer-trying-to-perform-some-nfs-stress, it may help you understand which popular open-source nfs tools are trying to do to the shares!!)
Here is a collection (by no means comprehensive) of common user actions on the nfs shares & the corresponding nfs remote procedures (and hopefully their numbers). This was collected using a simple Linux tool called nfsstat
Also, this link provides a brief overview on all the functions described below. Happy NFS-learning!!
http://www.freesoft.org/CIE/Topics/115.htm
SCSI Commands upon common system functions
For the storage enthusiasts, any talk of disks will have them delving into the world of SCSI. I have always been interested in what SCSI requests are sent to the disks in an application server/storage box. Here is a small collection of system operations mapped to SCSI commands on Cloudbyte’s Elastistor.
The system commands below are triggered by actual client I/O operations, or are triggered as part of the many data-protection & health-check/monitoring scripts that run in the background on ElastiStor.
Here is the link detailing the structure of the SCSI opcodes listed below, happy SCSI-learning!!
http://t10.org/ftp/t10/document.05/05-344r0.pdf
Setup: Dell R720 server connected to a Dell MD1200 disk enclosure