In this example, we show how to discover a Network File Server using the REST API. Shared storage is required for a number of purposes within Oracle VM, such as storing the pool file system used for the cluster heartbeat device.
A Network File Server is frequently used to provide shared storage, but is not the only form of shared storage that can be used within your environment. For this reason, you need to specify which Storage Connect plug-in you are using when you add a new storage resource. In this case, we use the "Oracle Generic Network File System" plug-in that is configured when Oracle VM is installed. For this reason, we must obtain the plug-in's object ID before we set up the filer, as this is required as one of the parameters that is sent in the API request.
Additionally, a Network File Server requires that at least one Admin Server is specified to handle administrative tasks on the filer. This must be the object ID for one of the servers that you have already discovered in your environment.
Once you have this information available, you can discover a Network File Server on your network by submitting a POST request to the following URI:
https://hostname
:port
/ovm/core/wsapi/rest/FileServer
After discovery of a file server is complete, to make file server exports available to Oracle VM, it is usual to perform a file server refresh. This is achieved by obtaining the ID value for the newly added file server, and then submitting a PUT request to the following URI:
https://hostname
:port
/ovm/core/wsapi/rest/FileServer/id
/refresh
For the file server exports to become usable within Oracle VM it is also important that you perform a file system refresh for each file system available on the file server. This is achieved by submitting a PUT request to the following URI for each file-system:
https://hostname
:port
/ovm/core/wsapi/rest/FileServer/id
/refresh
You can get a listing for all the file systems exported on a particular file server, after it has been refreshed, by submitting a GET request on the following URI:
https://hostname
:port
/ovm/core/wsapi/rest/FileServer/id
/FileSystem/id