Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
* Note: This method is available only through the per-node API endpoint 5.0 or later.
*
* @param request The request @see com.solidfire.element.api.GetClusterConfigRequest
*
* @return the response
**/
GetClusterConfigResult getClusterConfig(final GetClusterConfigRequest request);
/**
* Convenience method for getClusterConfig
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getClusterConfig(GetClusterConfigRequest)
**/
GetClusterConfigResult getClusterConfig();
/**
* GetClusterFullThreshold is used to view the stages set for cluster fullness levels. All levels are returned when this method is entered.
*
* @param request The request @see com.solidfire.element.api.GetClusterFullThresholdRequest
*
* @return the response
**/
GetClusterFullThresholdResult getClusterFullThreshold(final GetClusterFullThresholdRequest request);
/**
* Convenience method for getClusterFullThreshold
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getClusterFullThreshold(GetClusterFullThresholdRequest)
**/
GetClusterFullThresholdResult getClusterFullThreshold();
/**
* ModifyClusterFullThreshold is used to change the level at which an event is generated when the storage cluster approaches the capacity utilization requested. The number entered in this setting is used to indicate the number of node failures the system is required to recover from. For example, on a 10 node cluster, if you want to be alerted when the system cannot recover from 3 nodes failures, enter the value of "3". When this number is reached, a message alert is sent to the Event Log in the Cluster Management Console.
*
* @param request The request @see com.solidfire.element.api.ModifyClusterFullThresholdRequest
*
* @return the response
**/
ModifyClusterFullThresholdResult modifyClusterFullThreshold(final ModifyClusterFullThresholdRequest request);
/**
* Convenience method for modifyClusterFullThreshold
*
* @param stage2AwareThreshold Number of nodes worth of capacity remaining on the cluster that triggers a notification.
*
* @param stage3BlockThresholdPercent Percent below "Error" state to raise a cluster "Warning" alert.
*
* @param maxMetadataOverProvisionFactor A value representative of the number of times metadata space can be over provisioned relative to the amount of space available. For example, if there was enough metadata space to store 100 TiB of volumes and this number was set to 5, then 500 TiB worth of volumes could be created.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#modifyClusterFullThreshold(ModifyClusterFullThresholdRequest)
**/
ModifyClusterFullThresholdResult modifyClusterFullThreshold(Optional stage2AwareThreshold, Optional stage3BlockThresholdPercent, Optional maxMetadataOverProvisionFactor);
/**
* GetClusterStats is used to return high-level activity measurements for the cluster. Values returned are cumulative from the creation of the cluster.
*
* @param request The request @see com.solidfire.element.api.GetClusterStatsRequest
*
* @return the response
**/
GetClusterStatsResult getClusterStats(final GetClusterStatsRequest request);
/**
* Convenience method for getClusterStats
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getClusterStats(GetClusterStatsRequest)
**/
GetClusterStatsResult getClusterStats();
/**
* ListClusterAdmins returns the list of all cluster administrators for the cluster. There can be several cluster administrators that have different levels of permissions. There can be only one primary cluster administrator in the system. The primary Cluster Admin is the administrator that was created when the cluster was created. LDAP administrators can also be created when setting up an LDAP system on the cluster.
*
* @param request The request @see com.solidfire.element.api.ListClusterAdminsRequest
*
* @return the response
**/
ListClusterAdminsResult listClusterAdmins(final ListClusterAdminsRequest request);
/**
* Convenience method for listClusterAdmins
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listClusterAdmins(ListClusterAdminsRequest)
**/
ListClusterAdminsResult listClusterAdmins();
/**
* AddClusterAdmin adds a new Cluster Admin. A Cluster Admin can be used to manage the cluster via the API and management tools. Cluster Admins are completely separate and unrelated to standard tenant accounts.
*
* Each Cluster Admin can be restricted to a sub-set of the API. SolidFire recommends using multiple Cluster Admins for different users and applications. Each Cluster Admin should be given the minimal permissions necessary to reduce the potential impact of credential compromise.
*
* @param request The request @see com.solidfire.element.api.AddClusterAdminRequest
*
* @return the response
**/
AddClusterAdminResult addClusterAdmin(final AddClusterAdminRequest request);
/**
* ModifyClusterAdmin is used to change the settings for a Cluster Admin or LDAP Cluster Admin. Access for the administrator Cluster Admin account cannot be changed.
*
* @param request The request @see com.solidfire.element.api.ModifyClusterAdminRequest
*
* @return the response
**/
ModifyClusterAdminResult modifyClusterAdmin(final ModifyClusterAdminRequest request);
/**
* RemoveClusterAdmin is used to remove a Cluster Admin. The "admin" Cluster Admin cannot be removed.
*
* @param request The request @see com.solidfire.element.api.RemoveClusterAdminRequest
*
* @return the response
**/
RemoveClusterAdminResult removeClusterAdmin(final RemoveClusterAdminRequest request);
/**
* Convenience method for removeClusterAdmin
*
* @param clusterAdminID ClusterAdminID for the Cluster Admin to remove.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#removeClusterAdmin(RemoveClusterAdminRequest)
**/
RemoveClusterAdminResult removeClusterAdmin(Long clusterAdminID);
/**
* The SetClusterConfig API method is used to set the configuration this node uses to communicate with the cluster it is associated with. To see the states in which these objects can be modified see Cluster Object on page 109. To display the current cluster interface settings for a node, run the GetClusterConfig API method.
*
* Note: This method is available only through the per-node API endpoint 5.0 or later.
*
* @param request The request @see com.solidfire.element.api.SetClusterConfigRequest
*
* @return the response
**/
SetClusterConfigResult setClusterConfig(final SetClusterConfigRequest request);
/**
* Convenience method for setClusterConfig
*
* @param cluster Objects that are changed for the cluster interface settings. Only the fields you want changed need to be added to this method as objects in the "cluster" parameter.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#setClusterConfig(SetClusterConfigRequest)
**/
SetClusterConfigResult setClusterConfig(ClusterConfig cluster);
/**
* GetSnmpACL is used to return the current SNMP access permissions on the cluster nodes.
*
* @param request The request @see com.solidfire.element.api.GetSnmpACLRequest
*
* @return the response
* @since 8.0
**/
@Since("8.0")
GetSnmpACLResult getSnmpACL(final GetSnmpACLRequest request);
/**
* Convenience method for getSnmpACL
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getSnmpACL(GetSnmpACLRequest)
* @since 8.0
**/
@Since("8.0")
GetSnmpACLResult getSnmpACL();
/**
* SetSnmpACL is used to configure SNMP access permissions on the cluster nodes. The values set with this interface apply to all nodes in the cluster, and the values that are passed replace, in whole, all values set in any previous call to SetSnmpACL. Also note that the values set with this interface replace all "network" or "usmUsers" values set with the older SetSnmpInfo.
*
* @param request The request @see com.solidfire.element.api.SetSnmpACLRequest
*
* @return the response
* @since 8.0
**/
@Since("8.0")
SetSnmpACLResult setSnmpACL(final SetSnmpACLRequest request);
/**
* Convenience method for setSnmpACL
*
* @param networks List of networks and what type of access they have to the SNMP servers running on the cluster nodes. See SNMP Network Object for possible "networks" values. REQUIRED if SNMP v# is disabled.
*
* @param usmUsers List of users and the type of access they have to the SNMP servers running on the cluster nodes. REQUIRED if SNMP v3 is enabled.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#setSnmpACL(SetSnmpACLRequest)
* @since 8.0
**/
@Since("8.0")
SetSnmpACLResult setSnmpACL(SnmpNetwork[] networks, SnmpV3UsmUser[] usmUsers);
/**
* GetSnmpTrapInfo is used to return current SNMP trap configuration information.
*
* @param request The request @see com.solidfire.element.api.GetSnmpTrapInfoRequest
*
* @return the response
**/
GetSnmpTrapInfoResult getSnmpTrapInfo(final GetSnmpTrapInfoRequest request);
/**
* Convenience method for getSnmpTrapInfo
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getSnmpTrapInfo(GetSnmpTrapInfoRequest)
**/
GetSnmpTrapInfoResult getSnmpTrapInfo();
/**
* SetSnmpTrapInfo is used to enable and disable the generation of SolidFire SNMP notifications (traps) and to specify the set of network host computers that are to receive the notifications. The values passed with each SetSnmpTrapInfo method replaces all values set in any previous method to SetSnmpTrapInfo.
*
* @param request The request @see com.solidfire.element.api.SetSnmpTrapInfoRequest
*
* @return the response
**/
SetSnmpTrapInfoResult setSnmpTrapInfo(final SetSnmpTrapInfoRequest request);
/**
* EnableSnmp is used to enable SNMP on the cluster nodes. The values set with this interface apply to all nodes in the cluster, and the values that are passed replace, in whole, all values set in any previous call to EnableSnmp.
*
* @param request The request @see com.solidfire.element.api.EnableSnmpRequest
*
* @return the response
**/
EnableSnmpResult enableSnmp(final EnableSnmpRequest request);
/**
* Convenience method for enableSnmp
*
* @param snmpV3Enabled If set to "true", then SNMP v3 is enabled on each node in the cluster. If set to "false", then SNMP v2 is enabled.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#enableSnmp(EnableSnmpRequest)
**/
EnableSnmpResult enableSnmp(Boolean snmpV3Enabled);
/**
* DisableSnmp is used to disable SNMP on the cluster nodes.
*
* @param request The request @see com.solidfire.element.api.DisableSnmpRequest
*
* @return the response
**/
DisableSnmpResult disableSnmp(final DisableSnmpRequest request);
/**
* Convenience method for disableSnmp
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#disableSnmp(DisableSnmpRequest)
**/
DisableSnmpResult disableSnmp();
/**
* GetSnmpInfo is used to return the current simple network management protocol (SNMP) configuration information.
*
* Note: GetSnmpInfo will be available for Element OS 8 and prior releases. It will be deprecated after Element OS 8. There are two new SNMP API methods that you should migrate over to. They are GetSnmpState and GetSnmpACL. Please see details in this document for their descriptions and usage.
*
* @param request The request @see com.solidfire.element.api.GetSnmpInfoRequest
*
* @return the response
**/
GetSnmpInfoResult getSnmpInfo(final GetSnmpInfoRequest request);
/**
* Convenience method for getSnmpInfo
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getSnmpInfo(GetSnmpInfoRequest)
**/
GetSnmpInfoResult getSnmpInfo();
/**
* SetSnmpInfo is used to configure SNMP v2 and v3 on the cluster nodes. The values set with this interface apply to all nodes in the cluster, and the values that are passed replace, in whole, all values set in any previous call to SetSnmpInfo.
*
* Note: EnableSnmp and SetSnmpACL methods can be used to accomplish the same results as SetSnmpInfo. SetSnmpInfo will no longer be available after the Element 8 release. Please use EnableSnmp and SetSnmpACL in the future.
*
* @param request The request @see com.solidfire.element.api.SetSnmpInfoRequest
*
* @return the response
**/
SetSnmpInfoResult setSnmpInfo(final SetSnmpInfoRequest request);
/**
* GetSnmpState is used to return the current state of the SNMP feature.
*
* Note: GetSnmpState is new for Element OS 8. Please use this method and SetSnmpACL to migrate your SNMP functionality in the future.
*
* @param request The request @see com.solidfire.element.api.GetSnmpStateRequest
*
* @return the response
* @since 8.0
**/
@Since("8.0")
GetSnmpStateResult getSnmpState(final GetSnmpStateRequest request);
/**
* Convenience method for getSnmpState
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getSnmpState(GetSnmpStateRequest)
* @since 8.0
**/
@Since("8.0")
GetSnmpStateResult getSnmpState();
/**
* Retrieves the current version of the API and a list of all supported versions.
*
* @param request The request @see com.solidfire.element.api.GetAPIRequest
*
* @return the response
**/
GetAPIResult getAPI(final GetAPIRequest request);
/**
* Convenience method for getAPI
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getAPI(GetAPIRequest)
**/
GetAPIResult getAPI();
/**
* GetNtpInfo is used to return the current network time protocol (NTP) configuration information.
*
* @param request The request @see com.solidfire.element.api.GetNtpInfoRequest
*
* @return the response
**/
GetNtpInfoResult getNtpInfo(final GetNtpInfoRequest request);
/**
* Convenience method for getNtpInfo
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getNtpInfo(GetNtpInfoRequest)
**/
GetNtpInfoResult getNtpInfo();
/**
* GetCurrentClusterAdmin returns information for the current primary cluster administrator. The primary Cluster Admin was ncreated when the cluster was created.
*
* @param request The request @see com.solidfire.element.api.GetCurrentClusterAdminRequest
*
* @return the response
**/
GetCurrentClusterAdminResult getCurrentClusterAdmin(final GetCurrentClusterAdminRequest request);
/**
* Convenience method for getCurrentClusterAdmin
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getCurrentClusterAdmin(GetCurrentClusterAdminRequest)
**/
GetCurrentClusterAdminResult getCurrentClusterAdmin();
/**
* The EnableEncryptionAtRest method is used to enable the Advanced Encryption Standard (AES) 256-bit encryption at rest on the cluster so that the cluster can manage the encryption key used for the drives on each node. This feature is not enabled by default. Enabling this operation allows the cluster to automatically manage encryption keys internally for the drives on each node in the cluster. Nodes do not store the keys to unlock drives and the keys are never passed over the network. Two nodes participating in a cluster are required to access the key to disable encryption on a drive. The encryption management does not affect performance or efficiency on the cluster. If an encryption-enabled drive or node is removed from the cluster with the API, all data is secure erased and any data left on the drive cannot be read or accessed.
* Enabling or disabling encryption should be performed when the cluster is running and in a healthy state. Encryption can be enabled or disabled at your discretion and can be performed as often as you need.
* Note: This process is asynchronous and returns a response before encryption is enabled. The GetClusterInfo method can be used to poll the system to see when the process has completed.
*
* @param request The request @see com.solidfire.element.api.EnableEncryptionAtRestRequest
*
* @return the response
**/
EnableEncryptionAtRestResult enableEncryptionAtRest(final EnableEncryptionAtRestRequest request);
/**
* Convenience method for enableEncryptionAtRest
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#enableEncryptionAtRest(EnableEncryptionAtRestRequest)
**/
EnableEncryptionAtRestResult enableEncryptionAtRest();
/**
* The DisableEncryptionAtRest method enables you to remove the encryption that was previously applied to the cluster using the EnableEncryptionAtRest method.
* This disable method is asynchronous and returns a response before encryption is disabled.
* You can use the GetClusterInfo method to poll the system to see when the process has completed.
*
* @param request The request @see com.solidfire.element.api.DisableEncryptionAtRestRequest
*
* @return the response
**/
DisableEncryptionAtRestResult disableEncryptionAtRest(final DisableEncryptionAtRestRequest request);
/**
* Convenience method for disableEncryptionAtRest
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#disableEncryptionAtRest(DisableEncryptionAtRestRequest)
**/
DisableEncryptionAtRestResult disableEncryptionAtRest();
/**
* SnmpSendTestTraps enables you to test SNMP functionality for a cluster. This method instructs the cluster to send test SNMP traps to the currently configured SNMP manager.
*
* @param request The request @see com.solidfire.element.api.SnmpSendTestTrapsRequest
*
* @return the response
**/
SnmpSendTestTrapsResult snmpSendTestTraps(final SnmpSendTestTrapsRequest request);
/**
* Convenience method for snmpSendTestTraps
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#snmpSendTestTraps(SnmpSendTestTrapsRequest)
**/
SnmpSendTestTrapsResult snmpSendTestTraps();
/**
* Used to retrieve the result of asynchronous method calls.
* Some method calls are long running and do not complete when the initial response is sent.
* To obtain the result of the method call, polling with GetAsyncResult is required.
*
* GetAsyncResult returns the overall status of the operation (in progress, completed, or error) in a standard fashion,
* but the actual data returned for the operation depends on the original method call and the return data is documented with each method.
*
* The result for a completed asynchronous method call can only be retrieved once.
* Once the final result has been returned, later attempts returns an error.
*
* @param request The request @see com.solidfire.element.api.GetAsyncResultRequest
*
* @return the response
**/
GetAsyncResultResult getAsyncResult(final GetAsyncResultRequest request);
/**
* Convenience method for getAsyncResult
*
* @param asyncHandle A value that was returned from the original asynchronous method call.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getAsyncResult(GetAsyncResultRequest)
**/
GetAsyncResultResult getAsyncResult(Long asyncHandle);
/**
* AddDrives is used to add one or more available drives to the cluster enabling the drives to host a portion of the cluster's data.
* When you add a node to the cluster or install new drives in an existing node, the new drives are marked as "available" and must be added via AddDrives before they can be utilized.
* Use the "ListDrives" method to display drives that are "available" to be added.
* When you add multiple drives, it is more efficient to add them in a single "AddDrives" method call rather than multiple individual methods with a single drive each.
* This reduces the amount of data balancing that must occur to stabilize the storage load on the cluster.
*
* When you add a drive, the system automatically determines the "type" of drive it should be.
*
* The method returns immediately. However, it may take some time for the data in the cluster to be rebalanced using the newly added drives.
* As the new drive(s) are syncing on the system, you can use the "ListSyncJobs" method to see how the drive(s) are being rebalanced and the progress of adding the new drive.
*
* @param request The request @see com.solidfire.element.api.AddDrivesRequest
*
* @return the response
**/
AddDrivesResult addDrives(final AddDrivesRequest request);
/**
* Convenience method for addDrives
*
* @param drives List of drives to add to the cluster.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#addDrives(AddDrivesRequest)
**/
AddDrivesResult addDrives(NewDrive[] drives);
/**
* ListDrives allows you to retrieve the list of the drives that exist in the cluster's active nodes.
* This method returns drives that have been added as volume metadata or block drives as well as drives that have not been added and are available.
*
* @param request The request @see com.solidfire.element.api.ListDrivesRequest
*
* @return the response
**/
ListDrivesResult listDrives(final ListDrivesRequest request);
/**
* Convenience method for listDrives
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listDrives(ListDrivesRequest)
**/
ListDrivesResult listDrives();
/**
* GetDriveHardwareInfo returns all the hardware info for the given drive. This generally includes manufacturers, vendors, versions, and other associated hardware identification information.
*
* @param request The request @see com.solidfire.element.api.GetDriveHardwareInfoRequest
*
* @return the response
**/
GetDriveHardwareInfoResult getDriveHardwareInfo(final GetDriveHardwareInfoRequest request);
/**
* Convenience method for getDriveHardwareInfo
*
* @param driveID DriveID for the drive information requested. DriveIDs can be obtained via the "ListDrives" method.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getDriveHardwareInfo(GetDriveHardwareInfoRequest)
**/
GetDriveHardwareInfoResult getDriveHardwareInfo(Long driveID);
/**
* ListDriveHardware returns all the drives connected to a node. Use this method on the cluster to return drive hardware information for all the drives on all nodes.
*
* @param request The request @see com.solidfire.element.api.ListDriveHardwareRequest
*
* @return the response
**/
ListDriveHardwareResult listDriveHardware(final ListDriveHardwareRequest request);
/**
* Convenience method for listDriveHardware
*
* @param force This must be set to true in order to retrieve the drive hardware stats from the cluster.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listDriveHardware(ListDriveHardwareRequest)
**/
ListDriveHardwareResult listDriveHardware(Boolean force);
/**
* ResetDrives is used to pro-actively initialize drives and remove all data currently residing on the drive. The drive can then be reused in an existing node or used in an upgraded SolidFire node. This method requires the force=true parameter to be included in the method call.
*
* Note: This method is available only through the per-node API endpoint 5.0 or later.
*
* @param request The request @see com.solidfire.element.api.ResetDrivesRequest
*
* @return the response
**/
ResetDrivesResult resetDrives(final ResetDrivesRequest request);
/**
* Convenience method for resetDrives
*
* @param drives List of device names (not driveIDs) to reset.
*
* @param force The "force" parameter must be included on this method to successfully reset a drive.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#resetDrives(ResetDrivesRequest)
**/
ResetDrivesResult resetDrives(String drives, Boolean force);
/**
* The TestDrives API method is used to run a hardware validation on all the drives on the node. Hardware failures on the drives are detected if present and they are reported in the results of the validation tests.
*
* Note: This test takes approximately 10 minutes.
*
* Note: This method is available only through the per-node API endpoint 5.0 or later.
*
* @param request The request @see com.solidfire.element.api.TestDrivesRequest
*
* @return the response
**/
TestDrivesResult testDrives(final TestDrivesRequest request);
/**
* Convenience method for testDrives
*
* @param minutes The number of minutes to run the test can be specified.
*
* @param force The "force" parameter must be included on this method to successfully test the drives on the node.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#testDrives(TestDrivesRequest)
**/
TestDrivesResult testDrives(Optional minutes, Boolean force);
/**
* GetDriveStats return high-level activity measurements for a single drive. Values are cumulative from the addition of the drive to the cluster. Some values are specific to Block Drives. Statistical data may not be returned for both block and metadata drives when running this method.
* For more information on which drive type returns which data, see Response Example (Block Drive) and Response Example (Volume Metadata Drive) in the SolidFire API guide.
*
* @param request The request @see com.solidfire.element.api.GetDriveStatsRequest
*
* @return the response
**/
GetDriveStatsResult getDriveStats(final GetDriveStatsRequest request);
/**
* Convenience method for getDriveStats
*
* @param driveID Specifies the drive for which statistics are gathered.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getDriveStats(GetDriveStatsRequest)
**/
GetDriveStatsResult getDriveStats(Long driveID);
/**
* SecureEraseDrives is used to remove any residual data from drives that have a status of "available." For example, when replacing a drive at its end-of-life that contained sensitive data.
* It uses a Security Erase Unit command to write a predetermined pattern to the drive and resets the encryption key on the drive. The method may take up to two minutes to complete, so it is an asynchronous method.
* The GetAsyncResult method can be used to check on the status of the secure erase operation.
*
* Use the "ListDrives" method to obtain the driveIDs for the drives you want to secure erase.
*
* @param request The request @see com.solidfire.element.api.SecureEraseDrivesRequest
*
* @return the response
**/
AsyncHandleResult secureEraseDrives(final SecureEraseDrivesRequest request);
/**
* Convenience method for secureEraseDrives
*
* @param drives List of driveIDs to secure erase.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#secureEraseDrives(SecureEraseDrivesRequest)
**/
AsyncHandleResult secureEraseDrives(Long[] drives);
/**
* You can use RemoveDrives to proactively remove drives that are part of the cluster.
* You may want to use this method when reducing cluster capacity or preparing to replace drives nearing the end of their service life.
* Any data on the drives is removed and migrated to other drives in the cluster before the drive is removed from the cluster. This is an asynchronous method.
* Depending on the total capacity of the drives being removed, it may take several minutes to migrate all of the data.
* Use the "GetAsyncResult" method to check the status of the remove operation.
*
* When removing multiple drives, use a single "RemoveDrives" method call rather than multiple individual methods with a single drive each.
* This reduces the amount of data balancing that must occur to even stabilize the storage load on the cluster.
*
* You can also remove drives with a "failed" status using "RemoveDrives".
* When you remove a drive with a "failed" status it is not returned to an "available" or "active" status.
* The drive is unavailable for use in the cluster.
*
* Use the "ListDrives" method to obtain the driveIDs for the drives you want to remove.
*
* @param request The request @see com.solidfire.element.api.RemoveDrivesRequest
*
* @return the response
**/
AsyncHandleResult removeDrives(final RemoveDrivesRequest request);
/**
* Convenience method for removeDrives
*
* @param drives List of driveIDs to remove from the cluster.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#removeDrives(RemoveDrivesRequest)
**/
AsyncHandleResult removeDrives(Long[] drives);
/**
* The ListFibreChannelPortInfo is used to return information about the Fibre Channel ports. The API method is intended for use on individual nodes; userid and password is required for access to individual Fibre Channel nodes. However, this method can be used on the cluster if the force=true parameter is included in the method call. When used on the cluster, all Fibre Channel interfaces are listed.
*
* @param request The request @see com.solidfire.element.api.ListFibreChannelPortInfoRequest
*
* @return the response
* @since 8.0
**/
@Since("8.0")
ListFibreChannelPortInfoResult listFibreChannelPortInfo(final ListFibreChannelPortInfoRequest request);
/**
* Convenience method for listFibreChannelPortInfo
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listFibreChannelPortInfo(ListFibreChannelPortInfoRequest)
* @since 8.0
**/
@Since("8.0")
ListFibreChannelPortInfoResult listFibreChannelPortInfo();
/**
* The ListNodeFibreChannelPortInfo is used to return information about the Fibre Channel ports. The API method is intended for use on individual nodes; userid and password is required for access to individual Fibre Channel nodes. However, this method can be used on the cluster if the force=true parameter is included in the method call. When used on the cluster, all Fibre Channel interfaces are listed.
*
* @param request The request @see com.solidfire.element.api.ListNodeFibreChannelPortInfoRequest
*
* @return the response
* @since 7.0
**/
@Since("7.0")
ListNodeFibreChannelPortInfoResult listNodeFibreChannelPortInfo(final ListNodeFibreChannelPortInfoRequest request);
/**
* Convenience method for listNodeFibreChannelPortInfo
*
* @param force Specify force=true to call method on all member nodes of the cluster.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listNodeFibreChannelPortInfo(ListNodeFibreChannelPortInfoRequest)
* @since 7.0
**/
@Since("7.0")
ListNodeFibreChannelPortInfoResult listNodeFibreChannelPortInfo(Optional force);
/**
* The ListFibreChannelSessions is used to return information about the active Fibre Channel sessions on a cluster.
*
* @param request The request @see com.solidfire.element.api.ListFibreChannelSessionsRequest
*
* @return the response
* @since 7.0
**/
@Since("7.0")
ListFibreChannelSessionsResult listFibreChannelSessions(final ListFibreChannelSessionsRequest request);
/**
* Convenience method for listFibreChannelSessions
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#listFibreChannelSessions(ListFibreChannelSessionsRequest)
* @since 7.0
**/
@Since("7.0")
ListFibreChannelSessionsResult listFibreChannelSessions();
/**
* You can use the GetClusterHardwareInfo method to retrieve the hardware status and information for all Fibre Channel nodes, iSCSI nodes and drives in the cluster. This generally includes manufacturers, vendors, versions, and other associated hardware identification information.
*
* @param request The request @see com.solidfire.element.api.GetClusterHardwareInfoRequest
*
* @return the response
**/
GetClusterHardwareInfoResult getClusterHardwareInfo(final GetClusterHardwareInfoRequest request);
/**
* Convenience method for getClusterHardwareInfo
*
* @param type Include only a certain type of hardware information in the response. Can be one of the following:drives: List only drive information in the response.nodes: List only node information in the response.all: Include both drive and node information in the response.If this parameter is omitted, a type of "all" is assumed.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getClusterHardwareInfo(GetClusterHardwareInfoRequest)
**/
GetClusterHardwareInfoResult getClusterHardwareInfo(Optional type);
/**
* GetHardwareConfig enables you to display the hardware configuration information for a node. NOTE: This method is available only through the per-node API endpoint 5.0 or later.
*
* @param request The request @see com.solidfire.element.api.GetHardwareConfigRequest
*
* @return the response
**/
GetHardwareConfigResult getHardwareConfig(final GetHardwareConfigRequest request);
/**
* Convenience method for getHardwareConfig
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getHardwareConfig(GetHardwareConfigRequest)
**/
GetHardwareConfigResult getHardwareConfig();
/**
* GetNodeHardwareInfo is used to return all the hardware info and status for the node specified. This generally includes manufacturers, vendors, versions, and other associated hardware identification information.
*
* @param request The request @see com.solidfire.element.api.GetNodeHardwareInfoRequest
*
* @return the response
**/
GetNodeHardwareInfoResult getNodeHardwareInfo(final GetNodeHardwareInfoRequest request);
/**
* Convenience method for getNodeHardwareInfo
*
* @param nodeID The ID of the node for which hardware information is being requested. Information about a node is returned if a node is specified.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getNodeHardwareInfo(GetNodeHardwareInfoRequest)
**/
GetNodeHardwareInfoResult getNodeHardwareInfo(Long nodeID);
/**
* GetNvramInfo allows you to retrieve information from each node about the NVRAM card.
*
* @param request The request @see com.solidfire.element.api.GetNvramInfoRequest
*
* @return the response
**/
GetNvramInfoResult getNvramInfo(final GetNvramInfoRequest request);
/**
* Convenience method for getNvramInfo
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#getNvramInfo(GetNvramInfoRequest)
**/
GetNvramInfoResult getNvramInfo();
/**
* This will invoke any API method supported by the SolidFire API for the version and port the connection is using.
* Returns a nested hashtable of key/value pairs that contain the result of the invoked method.
*
* @param request The request @see com.solidfire.element.api.InvokeSFApiRequest
*
* @return the response
**/
Object invokeSFApi(final InvokeSFApiRequest request);
/**
* Convenience method for invokeSFApi
*
* @param method The name of the method to invoke. This is case sensitive.
*
* @param parameters An object, normally a dictionary or hashtable of the key/value pairs, to be passed as the params for the method being invoked.
*
*
* @return the response
* @see com.solidfire.element.api.SolidFireElementIF#invokeSFApi(InvokeSFApiRequest)
**/
Object invokeSFApi(String method, Optional