Trees | Indices | Help |
|
---|
|
object --+ | IPlugin
The base interface for various Storage Connect plug-in interfaces.
The class tree of the Storage Connect API is as follows:
![]() |
Class Hierarchy for IPlugin |
|
|||
Inherited from |
|
|||
str
|
|
||
|
|||
|
|
|||
a new object with type S, a subtype of T |
|
||
dict
|
|
||
str
|
|
||
|
|
|||
str
|
name =
Class name. |
||
list of str
|
plugin_api_version =
The over arching API version for the plugin interface. |
||
list of str
|
required_api_vers = None The minimum API version required by the plugin. |
||
logging object
|
logger = None Logging instance to be used by the plugin. |
||
str
|
iscsiadm =
Location of the iscsiadm executable. |
||
str
|
plugin_type =
Specific type of plugin. |
||
str
|
plugin_name =
The name of the plugin - Name used to populate the user interface drop down list. |
||
str
|
vendor_name =
Name of the Vendor supplying the plugin. |
||
str
|
plugin_version =
Version of the plugin. |
||
str
|
ss_extra_info_help =
The help text that will be displayed for the extra info to the user when creating the Storage Server. |
||
str
|
se_extra_info_help =
The help text that will be displayed for the extra info to the user when creating a Storage Element. |
||
str
|
fs_extra_info_help =
The help text that will be displayed for the extra info to the user when creating a File System. |
||
str
|
file_extra_info_help =
The help text that will be displayed for the extra info to the user when creating a File. |
||
dict
|
plugin_ability =
Capabilities that this specific plugin support. |
||
str
|
dev_path_prefix =
This is the device path prefix that plug-ins should use when filling in the path in the SERecord. |
||
str
|
dev_name_regex =
This is the device name regex that plug-ins should use when scanning through the devices to fill in the path in SERecord. |
||
str
|
SANStorage =
Used to designate that the plugin can handle all types of SCSI storage (FC, FCoE, SAS, SATA, etc.) except iSCSI. |
||
str
|
iSCSIStorage =
Used to designate that the plugin can handle iSCSI storage. |
||
str
|
FileSysStorage =
Used to designate that the plugin handle File System storage. |
||
str
|
NetworkFileSystem =
Used to designate that the plugin is for a network file system. |
||
str
|
LocalFileSystem =
Used to designate that the plugin is for a local file system. |
||
dict
|
__access_grp_fields__ =
Field list for the access group. |
||
dict
|
__vol_group_fields__ =
Field list for the volume group. |
||
dict
|
__qos_vals_fields__ =
Field list for the qos_vals. |
||
dict
|
__SSRecord__ =
Storage Server record. |
||
dict
|
__SSRecord_fields__ =
Field list for the Storage Server record. |
||
dict
|
__SERecord__ =
Storage Element record. |
||
dict
|
__SERecord_fields__ =
Field list for the Storage Element record. |
||
str
|
LUNType =
Used to designate that the SE record represent a LUN. |
||
str
|
GhostLUNType =
Used to designate that the SE record represent a Ghost LUN. |
||
str
|
SnapType =
Used to designate that the SE record represent a Snapshot. |
||
str
|
SnapCloneType =
Used to designate that the SE record represent a clone from a snapshot. |
||
list
|
__SETypes__ =
Known Storage Element types. |
||
dict
|
__FSRecord__ =
File System record. |
||
dict
|
__FSRecord_fields__ =
Field list for the File System record. |
||
dict
|
__BackingDeviceRecord__ =
Backing device record. |
||
dict
|
__BackingDeviceRecord_fields__ =
Field list for the backing device records. |
||
dict
|
__MountRecord__ =
Mount point record. |
||
dict
|
__MountRecord_fields__ =
Field list for the Mount point records. |
||
dict
|
__FileRecord__ =
File record. |
||
dict
|
__FileRecord_fields__ =
Field list for the File System record. |
||
str
|
FileType =
Used to designate that the FR record represent a file. |
||
str
|
DirType =
Used to designate that the FR record represent a directory. |
||
str
|
SymLinkType =
Used to designate that the FR record represent a symbolic link. |
||
str
|
CharDevType =
Used to designate that the FR record represent a character device. |
||
str
|
BlkDevType =
Used to designate that the FR record represent a block device. |
||
str
|
FifoType =
Used to designate that the FR record represent a FIFO file. |
||
str
|
SockFileType =
Used to designate that the FR record represent a socket file. |
||
list
|
__FRTypes__ =
Known File record types. |
||
str
|
__osc_install_dir__ =
The Oracle Storage Connect installation directory. |
||
str
|
__plugin_top_dir__ =
Top directory under which all Storage Connect plugins will be installed. |
||
list
|
__plugin_types__ =
Known Oracle Storage Connect plugin types. |
||
str
|
__plugin_temp_dir__ =
Directory where temporrary files woud be created under. |
||
bool
|
__generic_plugin__ = False Flag if this is a generic Plugin - Vendor implemented plugins should NOT change this! |
||
bool
|
__cluster_required__ = False Flag if this Plugin requires the cluster to be up - Vendor implemented plugins should NOT change this! |
||
cache object
|
cache = OSCCache.OSCDefaultCache() Caching that can be used by the plugin. |
|
|||
dict
|
__access_grp__ =
Access group. |
||
dict
|
__vol_group__ =
Volume group. |
||
dict
|
__qos_vals__ =
Quality-of-Service. |
|
|||
Inherited from |
|
Override the method to enforce that no Storage Connect classes be instantiated.
|
Create a dict from a string in the form of attr=value[,...].
|
This method will create a string in the form of key=value[,...] from a dict.
|
This will do a block copy from the source to the destination
|
Return the plugin type.
|
This method is identical to the standard tempfile.TemporaryFile() method. Please see the tempfile.TemporaryFile() documentation on how to use it. |
This method is identical to the standard tempfile.NamedTemporaryFile() method. Please see the tempfile.NamedTemporaryFile() documentation on how to use it. |
|
plugin_abilityCapabilities that this specific plugin support. Version of the API have the following fields:Name Comment -------------------------------------------------------------------- "snapshot": # Set to ONLINE/OFFLINE if the plugin # can create snapshots, NO if not. "custom_snap_name": # Set this to YES if a custom name can # be given to the snapshot. "snap_is_sync": # Set this to YES if creating the # snapshot is synchronously. "clone": # Set to ONLINE/OFFLINE if the plugin # can create clones, NO if not. "custom_clone_name": # Set this to YES if a custom name can # be given to the new clone. "clone_is_sync": # Set this to YES if creating the # clone is synchronously. "resize": # Set to ONLINE/OFFLINE if the plugin # can resize Storage Elements, NO # if not. "resize_is_sync": # Set this to YES if resizing the # Storage Element is synchronously. "splitclone": # Set to ONLINE/OFFLINE if the plugin # can split clones, NO if not. "splitclone_is_sync": # Set this to YES if splitting the # clones is synchronously. "splitclone_while_open": # Set this to YES if the plugin allows # the clones to open when splitting. "snapclone": # Set to ONLINE/OFFLINE if the plugin # can create a clone from a snapshot, # NO if not. "snapclone_is_sync": # Set this to YES if cloning from a # snapshot is synchronously. "require_storage_name": # Set this to YES if the plugin require # the user to supply a Storage Name # (normally used by storage # concentrators and appliances) "backing_device_type": # This is for File System plugins ONLY, # it defines what type of backing device # the file system use when creating a # file system. "access_control": # Set this to YES if the plugin support # access control groups. "max_access_entries": # Set this to the maximum number any one # access group can contain.
|
__access_grp_fields__Field list for the access group. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "grp_name": str # Name of the access group. "grp_entries": list # This is the access control entries # for the group. For example, # SAN would have a list of WWNs, # iSCSI, a list of initiator names # and for network file systems, a # list of host names. "grp_modes": list # Optional list of modes associated # with the access group, for # example the export mode for a # network file system.
|
__vol_group_fields__Field list for the volume group. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "vol_name": str # Name of the volume group. "vol_total_sz": int # Total size of the volume group. "vol_used_sz": int # Currently used space. "vol_free_sz": int # Currently available space. "vol_alloc_sz": int # Currently allocated space. "vol_desc": str # Volume group description.
|
__qos_vals_fields__Field list for the qos_vals. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "priority": int # Priority of the QoS value, # zero (0) being the highest # priority. It is not required for # the values to follow numerically "value": str # Quality-of-Service name as known # by the Storage Server.
|
__SSRecord__Storage Server record. All the known fields and if the key is mandatory are listed in SSRecord.
|
__SSRecord_fields__Field list for the Storage Server record. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "name": str # Name of the Storage Server as # shown in the Oracle VM Manager. "uuid": str # UUID string of the Storage Server # Record. "storage_server_id": str # Storage Server unique identifier. # This is for use solely by the # plug-in to uniquely identify # the Storage Server. "storage_type": str # Storage type: SAN, iSCSI or # FileSys. "access_host": str # Host/IP address used to access the # storage. "access_port": str # Port number to access the storage. "username": str # Storage server username. "passwd": str # Storage server password. "chap": bool # Does storage server require CHAP? "admin_host": str # Host/IP address to admin the # storage. "admin_user": str # Storage administrator user name. "admin_passwd": str # Storage administrator password. "netdevs": list # Network device(s) used to access # the storage. "storage_name": str # Actual name of the Storage Server. "status": str # Status of the Storage Server. "total_sz": int # Total size in bytes. "used_sz": int # Actual space already used. "free_sz": int # Available space in bytes. "alloc_sz": int # Allocated/reserved space in bytes. "access_grps": list # List of access groups. See # __access_grp_fields__ "vol_groups": list # List of vol_groups. See # __vol_group_fields__ "storage_id": str # Storage identifier (iSCSI target # name). "storage_desc": str # Storage description. "extra_info": str # Extra info (open format). NOTE: Depending on the storage types some fields would not be in the dict for instance SAN would not have the username, passwd etc. also if the start method does not return a updated record with the storage_id set it would not be passed in subsequent operations.
|
__SERecord__Storage Element record. All the known fields and if the key is mandatory are listed in SERecord.
|
__SERecord_fields__Field list for the Storage Element record. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "se_type": str # See __SETypes__. "ss_uuid": str # UUID for the owning SSRecord. "name": str # User friendly name. "uuid": str # UUID string for the device. "page83_id": str # SCSI Page 83 unique LUN ID. "id": str # ID for the SE (LUN/Snap ID). "vendor": str # Vendor as seen by a SCSI INQ. "product_id": str # Product as seen by a SCSI INQ. "path": list # System path(s) to the device. "array_path": str # Path on the array for the device. "size": int # Size in bytes. "status": str # Returned status of the SE. "vol_group_name": str # Volume group this SE belongs to. "access_grp_names": list # List of access group names. "qos": str # Quality-of-Service for the SE. "state": SE_STATES # Current state of the SE. "extra_info": str # Extra info (open format). NOTE: Depending on the storage types some fields would not be in the dict for instance SAN would not have the username, passwd etc.
|
__SETypes__Known Storage Element types. A SERecord must be of these types. Version of the API define the following types:Type Comment -------------------------------------------------------------------- LUNType # Normal block device LUN. GhostLUNType # Ghost LUN. SnapType # Snapshot created for a LUN, File system or File. SnapCloneType # Clone created from a snapshot. This is a special # case since it can become a full LUN in the # future. We need to keep track as on most arrays # the snap is locked until the snap clone is # deleted or split from the snapshot.
|
__FSRecord__File System record. All the known fields and if the key is mandatory are listed in FSRecord.
|
__FSRecord_fields__Field list for the File System record. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "access_path": str # Access path for the file system, # this is only used for networked # file systems. "ss_uuid": str # UUID of the SS Record owning this # file system. "name": str # User friendly name of the file # system. "mount_options": list # List of default mount options for # the file system. "array_path": str # Path on storage server for the # file system. "uuid": str # UUID of the the file system. "size": int # Size, returned, supplied for # resizing. "status": str # Status of the file system for # display. "state": FS_STATES # State of the file system. "access_grp_names": list # List of access group names the # file system is (or will be) # exported to. "qos": str # Quality-of-Service for the FS. "backing_device": str/list # This is used to specify what type # of device the File System # requires. "extra_info": str # Extra info (open format extra # info). NOTE: Depending on the file system type some fields would not be in the dict.
|
__BackingDeviceRecord__Backing device record. All the known fields and if the key is mandatory are listed in BackingDeviceRecord.
|
__BackingDeviceRecord_fields__Field list for the backing device records. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "name": str # Name of the backing device. "total_sz": int # Total size of the backing device. "free_sz": int # Available free size in the backing # device. "value": str # Value that need to be passed back # to the plugin to use this backing # device. "description": str # User friendly description for the # backing device that will be.
|
__MountRecord__Mount point record. All the known fields and if the key is mandatory are listed in MountRecord.
|
__MountRecord_fields__Field list for the Mount point records. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "uuid": str # UUID of this mount point. "fs_uuid": str # UUID of the File System owning # this mount point. "mount_point": str # Path file system should be or is # mounted on. "options": list # List of mount options for this # specific mount point. "status": str # Status of the mount point for # display. "extra_info": str # Extra info (open format extra # info).
|
__FileRecord__File record. All the known fields and if the key is mandatory are listed in FileRecord.
|
__FileRecord_fields__Field list for the File System record. Version of the API have the following fields:Name Type Comment -------------------------------------------------------------------- "fr_type": str # See __FRTypes__. "file_path": str # Absolute path to the file. "fs_uuid": str # UUID of the file system containing # the file. "name_pattern": str # This would optionally contain the # pattern the file or directory # name should match when listing. "snap_name": str # Name of the snap. "extra_info": str # Extra info (open format). NOTE: Depending on the file system type some fields would not be in the dict.
|
__FRTypes__Known File record types. A FileRecord must be of these types. Version of the API define the following types:Type Comment -------------------------------------------------------------------- FileType # Normal file. DirType # Directory. SymLinkType # Symbolic link. CharDevType # Character device file. BlkDevType # Block device file. FifoType # FIFO pipe file. SocketType # Socket file. SnapType # Snapshot / RefLink created of the file. SnapCloneType # Clone created from a snapshot. This is a special # case since in some file systems the Snapshot # must stay around as long as there is a clone # based on it. It is only used when the file # system have this restriction.
|
|
__access_grp__Access group. All the known fields and if the key is mandatory are listed in Access Group fields.
|
__vol_group__Volume group. All the known fields and if the key is mandatory are listed in Volume group fields.
|
__qos_vals__Quality-of-Service. All the known fields and if the key is mandatory are listed in QoS fields.
|
Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Fri May 6 16:45:18 2011 | http://epydoc.sourceforge.net |