Package: simplybk
Simply BlockWeb Api appPlease see this documentWebApp/README.mdCommand Line Interface$sbcli--help
usage:sbcli[-h][-d]{storage-node,cluster,lvol,mgmt,pool}...

UltramanagementCLI

positionalarguments:{storage-node,cluster,lvol,mgmt-node,pool}storage-nodeStoragenodecommandsclusterClustercommandslvollvolcommandsmgmtManagementnodecommandspoolPoolcommands

optionalarguments:-h,--helpshowthishelpmessageandexit-d,--debugPrintdebugmessagesCluster commands$sbclicluster-h
usage:sbclicluster[-h]{init,status,suspend,unsuspend,add-dev-model,rm-dev-model,add-host-auth,rm-host-auth,get-capacity,get-io-stats,set-log-level,get-event-log}...

Clustercommands

positionalarguments:{init,status,suspend,unsuspend,add-dev-model,rm-dev-model,add-host-auth,rm-host-auth,get-capacity,get-io-stats,set-log-level,get-event-log}initCreateanemptyclusterstatusShowclusterstatussuspendSuspendcluster.TheclusterwillstopprocessingallIO.Attention!Thiswillcausean"all paths down"eventfornvmeof/iscsivolumesonallhostsconnectedtothecluster.unsuspendUnsuspendcluster.TheclusterwillstartprocessingIOagain.add-dev-modelAddadevicetothewhitelistbythedevicemodelid.Whenaddingnodestotheclusterlateron,alldevicesofthespecifiedmodel-ids,whicharepresentonthenodetobeaddedtothecluster,areaddedtothestoragenodeforthecluster.Thisdoesnotapplyforalreadyaddeddevices,butonlyaffectdevicesonadditionalnodes,whichwillbeaddedtothecluster.Itisalwayspossibletoalsoadddevicespresentonaservertoanodemanually.rm-dev-modelRemovedevicefromthewhitelistbythedevicemodelid.Thisdoesnotapplyforalreadyaddeddevices,butonlyaffectdevicesonadditionalnodes,whichwillbeaddedtothecluster.add-host-authIfthe"authorized hosts only"securityfeatureisturnedon,hostsmustbeexplicitlyaddedtotheclusterviatheirnqnbeforetheycandiscoverthesubsysteminitiateaconnection.rm-host-authIfthe"authorized hosts only"securityfeatureisturnedon,thisfunctionremoveshosts,whichhavebeenaddedtotheclusterviatheirnqn,fromthelistofauthorizedhosts.Afterahosthasbeenremoved,itcannotconnectanylongertothesubsystemandcluster.get-capacityReturnsthecurrenttotalavailablecapacity,utilizedcapacity(inpercentandabsolute)andprovisionedcapacity(inpercentandabsolute)inGBinthecluster.get-io-statsReturnstheiostatistics.If--historyisnotselected,thisisamonitor,whichupdatescurrentstatisticsrecordseverytwoseconds(similartoping):read-iopswrite-iopstotal-iopsread-mbswrite-mbstotal-mbsset-log-levelDefinesthedetailoftheloginformationcollectedandstoredget-event-logreturnsclustereventloginsyslogformat

optionalarguments:-h,--helpshowthishelpmessageandexitInitializing new cluster$sbcliclusterinit-h
usage:sbcliclusterinit[-h]--blk_size{512,4096}--page_size_in_blocksPAGE_SIZE_IN_BLOCKS--model_idsMODEL_IDS[MODEL_IDS...]--ha_type{single,ha}--tls{on,off}--auth-hosts-only{on,off}--dhchap{off,one-way,bi-direct}[--NQNNQN][--iSCSI]Createanemptycluster

optionalarguments:-h,--helpshowthishelpmessageandexit--blk_size{512,4096}Theblocksizeinbytes--page_size_in_blocksPAGE_SIZE_IN_BLOCKSThesizeofadatapageinlogicalblocks--model_idsMODEL_IDS[MODEL_IDS...]alistofsupportedNVMedevicemodel-ids--ha_type{single,ha}Canbe"single"forsinglenodeclustersor"HA",whichrequiresatleast3nodes--tls{on,off}TCP/IPtransportsecuritycanbeturnedonandoff.Ifturnedon,bothhostsandstoragenodesmustauthenticatetheconnectionviaTLScertificates--auth-hosts-only{on,off}ifturnedon,hostsmustbeexplicitelyaddedtotheclustertobeabletoconnecttoanyNVMEoFsubsysteminthecluster--dhchap{off,one-way,bi-direct}ifsetto"one-way",hostsmustpresentasecretwheneveraconnectionisinitiatedbetweenahostandalogicalvolumeonaNVMEoFsubsysteminthecluster.Ifsetto"bi-directional",bothhostandsubsystemmustpresentasecrettoauthenticateeachother--NQNNQNclusterNQNsubsystem--iSCSITheclustersupportsiscsiLUNsinadditiontonvmeofvolumesShow cluster status$sbcliclusterstatus-h
usage:sbcliclusterstatus[-h]cluster-id

Showclusterstatus

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexitSuspend cluster$sbcliclustersuspend-h
usage:sbcliclustersuspend[-h]cluster-id

Suspendcluster.TheclusterwillstopprocessingallIO.Attention!Thiswillcausean"all paths down"eventfornvmeof/iscsivolumesonallhostsconnectedtothecluster.

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexitUnsuspend cluster$sbcliclusterunsuspend-h
usage:sbcliclusterunsuspend[-h]cluster-id

Unsuspendcluster.TheclusterwillstartprocessingIOagain.

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexitAdd device model to the NVMe devices whitelist$sbcliclusteradd-dev-model-h
usage:sbcliclusteradd-dev-model[-h]cluster-idmodel-ids[model-ids...]Addadevicetothewhitelistbythedevicemodelid.Whenaddingnodestotheclusterlateron,alldevicesofthespecifiedmodel-ids,whicharepresentonthenodetobeaddedtothe
cluster,areaddedtothestoragenodeforthecluster.Thisdoesnotapplyforalreadyaddeddevices,butonlyaffectdevicesonadditionalnodes,whichwillbeaddedtothecluster.It
isalwayspossibletoalsoadddevicespresentonaservertoanodemanually.

positionalarguments:cluster-idtheclusterUUIDmodel-idsalistofsupportedNVMedevicemodel-ids

optionalarguments:-h,--helpshowthishelpmessageandexitRemove device model from the NVMe devices whitelist$sbcliclusterrm-dev-model-h
usage:sbcliclusterrm-dev-model[-h]cluster-idmodel-ids[model-ids...]Removedevicefromthewhitelistbythedevicemodelid.Thisdoesnotapplyforalreadyaddeddevices,butonlyaffectdevicesonadditionalnodes,whichwillbeaddedtothecluster.

positionalarguments:cluster-idtheclusterUUIDmodel-idsalistofNVMedevicemodel-ids

optionalarguments:-h,--helpshowthishelpmessageandexitAdd host auth$sbcliclusteradd-host-auth-h
usage:sbcliclusteradd-host-auth[-h]cluster-idhost-nqn

Ifthe"authorized hosts only"securityfeatureisturnedon,hostsmustbeexplicitlyaddedtotheclusterviatheirnqnbeforetheycandiscoverthesubsysteminitiateaconnection.

positionalarguments:cluster-idtheclusterUUIDhost-nqnNQNofthehosttoallowtodiscoverandconnecttotehcluster

optionalarguments:-h,--helpshowthishelpmessageandexitRemove host auth$sbcliclusterrm-host-auth-h
usage:sbcliclusterrm-host-auth[-h]cluster-idhost-nqn

Ifthe"authorized hosts only"securityfeatureisturnedon,thisfunctionremoveshosts,whichhavebeenaddedtotheclusterviatheirnqn,fromthelist
ofauthorizedhosts.Afterahosthasbeenremoved,itcannotconnectanylongertothesubsystemandcluster.

positionalarguments:cluster-idtheclusterUUIDhost-nqnNQNofthehosttoremovefromtheallowedhostslist

optionalarguments:-h,--helpshowthishelpmessageandexitGet total cluster capacity$sbcliclusterget-capacity-h
usage:sbcliclusterget-capacity[-h][--historyHISTORY]cluster-id

Returnsthecurrenttotalavailablecapacity,utilizedcapacity(inpercentandabsolute)andprovisionedcapacity(inpercentandabsolute)inGBinthecluster.

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORY(XXdYYh),listhistoryrecords(oneforevery15minutes)forXXdaysandYYhours(upto10daysintotal).Return io statistics of a cluster$sbcliclusterget-io-stats-h
usage:sbcliclusterget-io-stats[-h][--historyHISTORY]cluster-id

Returnstheiostatistics.If--historyisnotselected,thisisamonitor,whichupdatescurrentstatisticsrecordseverytwoseconds(similartoping):read-iopswrite-iopstotal-iops
read-mbswrite-mbstotal-mbs

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORY(XXdYYh),listhistoryrecords(oneforevery15minutes)forXXdaysandYYhours(upto10daysintotal).Set log level$sbcliclusterset-log-level-h
usage:sbcliclusterset-log-level[-h]cluster-id{debug,test,prod}Definesthedetailoftheloginformationcollectedandstored

positionalarguments:cluster-idtheclusterUUID{debug,test,prod}Loglevel

optionalarguments:-h,--helpshowthishelpmessageandexitGet events log$sbcliclusterget-event-log-h
usage:sbcliclusterget-event-log[-h][--fromFROM][--toTO]cluster-id

returnsclustereventloginsyslogformat

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexit--fromFROMfromtime,format:dd-mm-yyhh:mm--toTOtotime,format:dd-mm-yyhh:mmStorage node commands$sbclistorage-node-h
usage:sbclistorage-node[-h]{add,remove,list,restart,shutdown,suspend,resume,get-io-stats,list-devices,reset-device,run-smart,add-device,replace,remove-device,set-ro-device,set-failed-device,set-online-device,get-capacity-device,get-io-stats-device,get-event-log,get-log-page-device}...

Storagenodecommands

positionalarguments:{add,remove,list,restart,shutdown,suspend,resume,get-io-stats,list-devices,reset-device,run-smart,add-device,replace,remove-device,set-ro-device,set-failed-device,set-online-device,get-capacity-device,get-io-stats-device,get-event-log,get-log-page-device}addAddstoragenoderemoveRemovestoragenodelistListstoragenodesrestartRestartastoragenode.Allfunctionsanddevicedriverswillbereset.Duringrestart,thenodedoesnotacceptIO.Inahigh-availabilitysetup,thiswillnotimpactoperations.shutdownShutdownastoragenode.Oncethecommandisissued,thenodewillstopacceptingIO,butIO,whichwaspreviouslyreceived,willstillbeprocessed.Inahigh-availabilitysetup,thiswillnotimpactoperations.suspendSuspendastoragenode.ThenodewillstopacceptingnewIO,butwillfinishprocessinganyIO,whichhasbeenreceivedalready.resumeResumeastoragenodeget-io-statsReturnsthecurrentiostatisticsofanodelist-devicesListstoragedevicesreset-deviceResetstoragedevicerun-smartRuntestsagainststoragedeviceadd-deviceAddanewstoragedevicereplaceReplaceastoragenode.Thiscommandisrunonthenewphysicalserver,whichisexpectedtoreplacetheoldserver.Attention!!!Allthenvmedevices,whicharepartoftheclustertowhichthenodebelongs,mustbeinsertedintothenewserverbeforethiscommandisrun.Theoldnodewillbede-commissionedandcannotbeusedanymore.remove-deviceRemoveastoragedevice.Thedevicewillbecomeunavailable,independentlyifitwasphysicallyremovedfromtheserver.Thisfunctioncanbeusedifauto-detectionofremovaldidnotworkorifthedevicemustbemaintainedotherwisewhileremaininginsertedintotheserver.set-ro-deviceSetstoragedevicereadonlyset-failed-deviceSetstoragedevicetofailedstate.Thiscommandcanbeused,ifanadministratorbelievesthatthedevicemustbechanged,butitsstatusandhealthstatedonotleadtoanautomaticdetectionofthefailurestate.Attention!!!Thefailedstateisfinal,alldataonthedevicewillbeautomaticallyrecoveredtootherdevicesinthecluster.set-online-deviceSetstoragedevicetoonlinestateget-capacity-deviceReturnsthesize,absoluteandrelativeutilizationofthedeviceinbytesget-io-stats-deviceReturnstheiostatistics.If--historyisnotselected,thisisamonitor,whichupdatescurrentstatisticsrecordseverytwoseconds(similartoping):read-iopswrite-iopstotal-iopsread-mbswrite-mbstotal-mbsget-event-logReturnsstoragenodeeventloginsyslogformat.Thisincludeseventsfromthestoragenodeitself,thenetworkinterfacesandalldevicesonthenode,includinghealthstatusinformationandupdates.get-log-page-deviceGetnvmelog-pageinformationfromthedevice.Attention!Theavailabilityofparticularlogpagesdependsonthedevicemodel.Formoreinformation,seenvmespecification.

optionalarguments:-h,--helpshowthishelpmessageandexitAdd new storage nodemust be run on the storage node itself$sbclistorage-nodeadd-h
usage:sbclistorage-nodeadd[-h][--data-nicsDATA_NICS[DATA_NICS...]][--distr]cluster-idifname

Addstoragenode

positionalarguments:cluster-idUUIDoftheclustertowhichthenodewillbelongifnameManagementinterfacename

optionalarguments:-h,--helpshowthishelpmessageandexit--data-nicsDATA_NICS[DATA_NICS...]Datainterfacenames--distrInstallDisturbspdkappinsteadofdefault:ultra21Remove storage node$sbclistorage-noderemove-h
usage:sbclistorage-noderemove[-h]node-id

Removestoragenode

positionalarguments:node-idnode-idofstoragenode

optionalarguments:-h,--helpshowthishelpmessageandexitList storage nodes$sbclistorage-nodelist-h
usage:sbclistorage-nodelist[-h][--json]cluster-id

Liststoragenodes

positionalarguments:cluster-ididoftheclusterforwhichnodesarelisted

optionalarguments:-h,--helpshowthishelpmessageandexit--jsonPrintoutputsinjsonformatRestart storage nodemust be run on the storage node itself$sbclistorage-noderestart-h
usage:sbclistorage-noderestart[-h][-t]cluster-id

Restartastoragenode.Allfunctionsanddevicedriverswillbereset.Duringrestart,thenodedoesnotacceptIO.Inahigh-availabilitysetup,thiswillnotimpactoperations.

positionalarguments:cluster-idtheclusterUUIDtowhichthenodebelongs

optionalarguments:-h,--helpshowthishelpmessageandexit-t,--testRunsmarttestontheNVMedevicesShutdown a storage node$sbclistorage-nodeshutdown-h
usage:sbclistorage-nodeshutdown[-h]cluster-id

Shutdownastoragenode.Oncethecommandisissued,thenodewillstopacceptingIO,butIO,whichwaspreviouslyreceived,willstillbeprocessed.Inahigh-availabilitysetup,thiswill
notimpactoperations.

positionalarguments:cluster-idtheclusterUUIDtowhichthenodebelongs

optionalarguments:-h,--helpshowthishelpmessageandexitSuspend a storage node$sbclistorage-nodesuspend-h
usage:sbclistorage-nodesuspend[-h]cluster-id

Suspendastoragenode.ThenodewillstopacceptingnewIO,butwillfinishprocessinganyIO,whichhasbeenreceivedalready.

positionalarguments:cluster-idtheclusterUUIDtowhichthenodebelongs

optionalarguments:-h,--helpshowthishelpmessageandexitResume a storage node$sbclistorage-noderesume-h
usage:sbclistorage-noderesume[-h]cluster-id

Resumeastoragenode

positionalarguments:cluster-idtheclusterUUIDtowhichthenodebelongs

optionalarguments:-h,--helpshowthishelpmessageandexitReturns the current io statistics of a node$sbclistorage-nodeget-io-stats-h
usage:sbclistorage-nodeget-io-stats[-h]cluster-id

Returnsthecurrentiostatisticsofanode

positionalarguments:cluster-idtheclusterUUID

optionalarguments:-h,--helpshowthishelpmessageandexitList storage devices$sbclistorage-nodelist-devices-h
usage:sbclistorage-nodelist-devices[-h]node-id[-a][-s{node-seq,dev-seq,serial}][--json]Liststoragedevices

positionalarguments:node-idthenode'sUUID

optionalarguments:-h,--helpshowthishelpmessageandexit-a,--allListalldevicesinthecluster-s{node-seq,dev-seq,serial},--sort{node-seq,dev-seq,serial}Sorttheoutputs--jsonPrintoutputsinjsonformatReset a storage device$sbclistorage-nodereset-device-h
usage:sbclistorage-nodereset-device[-h]device-id

Resetstoragedevice

positionalarguments:device-idthedevices'sUUID

optionalarguments:-h,--helpshowthishelpmessageandexitRun smart tests against a storage device$sbclistorage-noderun-smart-h
usage:sbclistorage-noderun-smart[-h]device-id

Runtestsagainststoragedevice

positionalarguments:device-idthedevices'sUUID

optionalarguments:-h,--helpshowthishelpmessageandexitAdd a new storage device$sbclistorage-nodeadd-device-h
usage:sbclistorage-nodeadd-device[-h]name

Addanewstoragedevice

positionalarguments:nameStoragedevicename(aslistedintheoperatingsystem).Thedevicewillbede-ttachedfromtheoperatingsystemandattachedtothestoragenode

optionalarguments:-h,--helpshowthishelpmessageandexitReplace a storage node$sbclistorage-nodereplace-h
usage:sbclistorage-nodereplace[-h]node-idifname[--data-nicsDATA_NICS[DATA_NICS...]]Replaceastoragenode.Thiscommandisrunonthenewphysicalserver,whichisexpectedtoreplacetheoldserver.Attention!!!Allthenvmedevices,whicharepartoftheclusterto
whichthenodebelongs,mustbeinsertedintothenewserverbeforethiscommandisrun.Theoldnodewillbede-commissionedandcannotbeusedanymore.

positionalarguments:node-idUUIDofthenodetobereplacedifnameManagementinterfacename

optionalarguments:-h,--helpshowthishelpmessageandexit--data-nicsDATA_NICS[DATA_NICS...]DatainterfacenamesRemove a storage device$sbclistorage-noderemove-device-h
usage:sbclistorage-noderemove-device[-h]device-id

Removeastoragedevice.Thedevicewillbecomeunavailable,independentlyifitwasphysicallyremovedfromtheserver.Thisfunctioncanbeusedifauto-detectionofremovaldidnotwork
orifthedevicemustbemaintainedotherwisewhileremaininginsertedintotheserver.

positionalarguments:device-idStoragedeviceID

optionalarguments:-h,--helpshowthishelpmessageandexitSet storage device to failed state$sbclistorage-nodeset-failed-device-h
usage:sbclistorage-nodeset-failed-device[-h]device-id

Setstoragedevicetofailedstate.Thiscommandcanbeused,ifanadministratorbelievesthatthedevicemustbechanged,butitsstatusandhealthstatedonotleadtoanautomatic
detectionofthefailurestate.Attention!!!Thefailedstateisfinal,alldataonthedevicewillbeautomaticallyrecoveredtootherdevicesinthecluster.

positionalarguments:device-idStoragedeviceID

optionalarguments:-h,--helpshowthishelpmessageandexitSet storage device to online state$sbclistorage-nodeset-online-device-h
usage:sbclistorage-nodeset-online-device[-h]device-id

Setstoragedevicetoonlinestate

positionalarguments:device-idStoragedeviceID

optionalarguments:-h,--helpshowthishelpmessageandexitReturns the size of a device$sbclistorage-nodeget-capacity-device-h
usage:sbclistorage-nodeget-capacity-device[-h][--historyHISTORY]device-id

Returnsthesize,absoluteandrelativeutilizationofthedeviceinbytes

positionalarguments:device-idStoragedeviceID

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORYlisthistoryrecords-oneforevery15minutes-forXXdaysandYYhours-upto10daysintotal-,format:XXdYYhReturns the io statistics of a device$sbclistorage-nodeget-io-stats-device-h
usage:sbclistorage-nodeget-io-stats-device[-h][--historyHISTORY]device-id

Returnstheiostatistics.If--historyisnotselected,thisisamonitor,whichupdatescurrentstatisticsrecordseverytwoseconds(similartoping):read-iopswrite-iopstotal-iops
read-mbswrite-mbstotal-mbs

positionalarguments:device-idStoragedeviceID

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORYlisthistoryrecords-oneforevery15minutes-forXXdaysandYYhours-upto10daysintotal-,format:XXdYYhReturns storage node event log in syslog format$sbclistorage-nodeget-event-log-h
usage:sbclistorage-nodeget-event-log[-h][--fromFROM][--toTO]node-id

Returnsstoragenodeeventloginsyslogformat.Thisincludeseventsfromthestoragenodeitself,thenetworkinterfacesandalldevicesonthenode,includinghealthstatusinformation
andupdates.

positionalarguments:node-idStoragenodeID

optionalarguments:-h,--helpshowthishelpmessageandexit--fromFROMfromtime,format:dd-mm-yyhh:mm--toTOtotime,format:dd-mm-yyhh:mmGet nvme log-page information from the device$sbclistorage-nodeget-log-page-device-h
usage:sbclistorage-nodeget-log-page-device[-h]device-id{error,smart,telemetry,dev-self-test,endurance,persistent-event}Getnvmelog-pageinformationfromthedevice.Attention!Theavailabilityofparticularlogpagesdependsonthedevicemodel.Formoreinformation,seenvmespecification.

positionalarguments:device-idStoragedeviceID{error,smart,telemetry,dev-self-test,endurance,persistent-event}Canbe[error,smart,telemetry,dev-self-test,endurance,persistent-event]optionalarguments:-h,--helpshowthishelpmessageandexitLVol commands$sbclilvol-h
usage:sbclilvol[-h]{add,qos-set,list,get,delete,connect,resize,set-read-only,create-snapshot,clone,get-host-secret,get-ctrl-secret,move,replicate,inflate,get-capacity,get-io-stats}...

LVolcommands

positionalarguments:{add,qos-set,list,get,delete,connect,resize,set-read-only,create-snapshot,clone,get-host-secret,get-ctrl-secret,move,replicate,inflate,get-capacity,get-io-stats}addAddLVol,ifboth--compand--cryptoareused,thenthecompressbdevwillbeatthetopqos-setChangeqossettingsforanactivelogicalvolumelistListallLVolsgetGetLVoldetailsdeleteDeleteLVolconnectshowconnectionstringtoLVolhostresizeResizeLVolset-read-onlySetLVolRead-onlycreate-snapshotCreatesnapshotfromLVolclonecreateLVolbasedonasnapshotget-host-secretReturnstheauto-generatedhostsecretrequiredforthenvmeofconnectionbetweenhostandclusterget-ctrl-secretReturnstheauto-generatedcontrollersecretrequiredforthenvmeofconnectionbetweenhostandclustermoveMovesafullcopyofthelogicalvolumebetweenclustersreplicateCreateareplicationpathbetweentwovolumesintwoclustersinflateInflateacloneto"full"logicalvolumeanddisconnectitfromitsparentsnapshot.get-capacityReturnsthecurrentprovisionedcapacityget-io-statsReturnseitherthecurrentiostatistics

optionalarguments:-h,--helpshowthishelpmessageandexitAdd LVol$sbclilvoladd-h
usage:sbclilvoladd[-h][--compress][--encrypt][--thick][--iscsi][--node-ha{0,1,2}][--dev-redundancy][--max-w-iopsMAX_W_IOPS][--max-r-iopsMAX_R_IOPS][--max-r-mbytesMAX_R_MBYTES][--max-w-mbytesMAX_W_MBYTES][--distr][--distr-ndcsDISTR_NDCS][--distr-npcsDISTR_NPCS][--distr-alloc_namesDISTR_ALLOC_NAMES]namesizepoolhostname

AddLVol,ifboth--compand--cryptoareused,thenthecompressbdevwillbeatthetop

positionalarguments:nameLVolnameoridsizeLVolsize:10M,10G,10(bytes)poolPoolUUIDornamehostnameStoragenodehostname

optionalarguments:-h,--helpshowthishelpmessageandexit--compressUseinlinedatacompressionandde-compressiononthelogicalvolume--encryptUseinlinedataencryptionandde-cryptiononthelogicalvolume--thickDeactivatethinprovisioning--iscsiUseISCSIfabrictypeinsteadofNVMEoF;inthiscase,itisrequiredtospecifytheclusterhoststowhichthevolumewillbeattached--node-ha{0,1,2}Themaximumamountofconcurrentnodefailuresacceptedwithoutinterruptionofoperations--dev-redundancy{1,2}supportedminimalconcurrentdevicefailureswithoutdataloss--max-w-iopsMAX_W_IOPSMaximumWriteIOPerSecond--max-r-iopsMAX_R_IOPSMaximumReadIOPerSecond--max-r-mbytesMAX_R_MBYTESMaximumReadMegaBytesPerSecond--max-w-mbytesMAX_W_MBYTESMaximumWriteMegaBytesPerSecond--distrUseDisturbbdevSet QOS options for LVol$sbclilvolqos-set[-h]usage:sbclilvolqos-set[-h][--max-w-iopsMAX_W_IOPS][--max-r-iopsMAX_R_IOPS][--max-r-mbytesMAX_R_MBYTES][--max-w-mbytesMAX_W_MBYTES]id

Changeqossettingsforanactivelogicalvolume

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexit--max-w-iopsMAX_W_IOPSMaximumWriteIOPerSecond--max-r-iopsMAX_R_IOPSMaximumReadIOPerSecond--max-r-mbytesMAX_R_MBYTESMaximumReadMegaBytesPerSecond--max-w-mbytesMAX_W_MBYTESMaximumWriteMegaBytesPerSecondList LVols$sbclilvollist-h
usage:sbclilvollist[-h][--cluster-idCLUSTER_ID][--json]ListallLVols

optionalarguments:-h,--helpshowthishelpmessageandexit--cluster-idCLUSTER_IDListLVolsinparticularcluster--jsonPrintoutputsinjsonformatGet LVol details$sbclilvolget-h
usage:sbclilvolget[-h][--json]id

GetLVoldetails

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexit--jsonPrintoutputsinjsonformatDelete LVol$sbclilvoldelete-h
usage:sbclilvoldelete[-h][--force]id

DeleteLVol.Thisisonlypossible,ifnomoresnapshotsandnon-inflatedclonesofthevolumeexist.Thevolumemustbesuspendedbeforeitcanbedeleted.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexit--forceForcedeleteLVolfromtheclusterShow nvme-cli connection commands$sbclilvolconnect-h
usage:sbclilvollvolconnect[-h]id

showconnectionstringstocluster.Multipleconnectionstotheclusterarealwaysavailableformulti-pathingandhigh-availability.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitResize$sbclilvolresize-h
usage:sbclilvolresize[-h]idsize

ResizeLVol.Thelvolcannotbeexceedthemaximumsizeforlvols.Itcannotexceedtotalremainingprovisionedspaceinpool.Itcannotdropbelowthecurrentutilization.

positionalarguments:idLVolidsizeNewLVolsizesize:10M,10G,10(bytes)optionalarguments:-h,--helpshowthishelpmessageandexitSet read only$sbclilvolset-read-only-h
usage:sbclilvolset-read-only[-h]id

SetLVolRead-only.CurrentwriteIOinflightwillstillbeprocessed,butfornewIO,onlyreadandunmapIOarepossible.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitSet read-write$sbclilvolset-read-write-h
usage:sbclilvolset-read-write[-h]id

SetLVolRead-Write.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitSuspend$sbclilvolsuspend-h
usage:sbclilvolsuspend[-h]id

SuspendLVol.IOinflightwillstillbeprocessed,butnewIOisnotaccepted.MakesurethatthevolumeisdetachedfromallhostsbeforesuspendingittoavoidIOerrors.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitUnsuspend$sbclilvolunsuspend-h
usage:sbclilvolunsuspend[-h]id

UnsuspendLVol.IOmayberesumed.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitCreate Snapshot from LVol$sbclilvolcreate-snapshot-h
usage:sbclilvolcreate-snapshot[-h]idname

CreatesnapshotfromLVol

positionalarguments:idLVolidnamesnapshotname

optionalarguments:-h,--helpshowthishelpmessageandexitClone: Create LVol based on a snapshot$sbclilvolclone-h
usage:sbclilvolclone[-h]snapshot_nameclone_name

CreateLVolbasedonasnapshot

positionalarguments:snapshot_namesnapshotnameclone_nameclonename

optionalarguments:-h,--helpshowthishelpmessageandexitReturns the host secret$sbclilvolget-host-secret-h
usage:sbclilvolget-host-secret[-h]id

Returnstheauto-generatedhostsecretrequiredforthenvmeofconnectionbetweenhostandcluster

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitReturns the controller secret$sbclilvolget-ctrl-secret-h
usage:sbclilvolget-ctrl-secret[-h]id

Returnstheauto-generatedcontrollersecretrequiredforthenvmeofconnectionbetweenhostandcluster

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitMoves a full copy of the logical volume between clusters$sbclilvolmove-h
usage:sbclilvolmove[-h]idcluster-idnode-id

Movesafullcopyofthelogicalvolumebetweenclusters

positionalarguments:idLVolidcluster-idDestinationClusterIDnode-idDestinationNodeID

optionalarguments:-h,--helpshowthishelpmessageandexitCreate a replication path between two volumes in two clusters$sbclilvolreplicate-h
usage:sbclilvolreplicate[-h][--asynchronous]idcluster-acluster-b

Createareplicationpathbetweentwovolumesintwoclusters

positionalarguments:idLVolidcluster-aAClusterIDcluster-bBClusterID

optionalarguments:-h,--helpshowthishelpmessageandexit--asynchronousReplicationmaybeperformedsynchronously(default)andasynchronouslyInflate a clone to "full" logical volume and disconnect it from its parent snapshot.$sbclilvolinflate-h
usage:sbclilvolinflate[-h]id

Inflateacloneto"full"logicalvolumeanddisconnectitfromitsparentsnapshot.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexitReturns the current LVol provisioned capacity$sbclilvolget-capacity-h
usage:sbclilvolget-capacity[-h][--historyHISTORY]id

Returnsthecurrent(orhistoric)provisionedandutilized(inpercentandabsolute)capacity.

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORY(XXdYYh),listhistoryrecords(oneforevery15minutes)forXXdaysandYYhours(upto10daysintotal).Returns either the current io statistics$sbclilvolget-io-stats-h
usage:sbclilvolget-io-stats[-h][--historyHISTORY]id

Returnseitherthecurrentorhistoriciostatistics(read-IO,write-IO,total-IO,readmbs,writembs,totalmbs).

positionalarguments:idLVolid

optionalarguments:-h,--helpshowthishelpmessageandexit--historyHISTORY(XXdYYh),listhistoryrecords(oneforevery15minutes)forXXdaysandYYhours(upto10daysintotal).Management node commands$sbclimgmt-h
usage:sbclimgmt[-h]{add,list,remove,show,status}...

Managementnodecommands

positionalarguments:{add,list,remove,show,status}addAddManagementnodetotheclusterlistListManagementnodesremoveRemoveManagementnodeshowListmanagementnodesstatusShowmanagementclusterstatus

optionalarguments:-h,--helpshowthishelpmessageandexitAdd management node$sbclimgmtadd-h
usage:sbclimgmtadd[-h]ip_port

AddManagementnodetothecluster

positionalarguments:ip_portDockerserverIP:PORT

optionalarguments:-h,--helpshowthishelpmessageandexitList management nodes$sbclimgmtlist-h
usage:sbclimgmtlist[-h][--json]ListManagementnodes

optionalarguments:-h,--helpshowthishelpmessageandexit--jsonPrintoutputsinjsonformatRemove management node$sbclimgmtremove-h
usage:sbclimgmtremove[-h]hostname

RemoveManagementnode

positionalarguments:hostnamehostname

optionalarguments:-h,--helpshowthishelpmessageandexitShow management nodes$sbclimgmtshow-h
usage:sbclimgmtshow[-h]Listmanagementnodes

optionalarguments:-h,--helpshowthishelpmessageandexitShow management cluster status$sbclimgmtstatus-h
usage:sbclimgmtstatus[-h]Showmanagementclusterstatus

optionalarguments:-h,--helpshowthishelpmessageandexitPool commands$sbclipool-h
usage:sbclipool[-h]{add,set,list,get,delete,enable,disable,get-secret,set-secret}...

Poolcommands

positionalarguments:{add,set,list,get,delete,enable,disable,get-secret,set-secret}addAddanewPoolsetSetpoolattributeslistListpoolsgetgetpooldetailsdeletedeletepool.Itisonlypossibletodeleteapoolifitisempty(noprovisionedlogicalvolumescontained).enableSetpoolstatustoActivedisableSetpoolstatustoInactive.Attention!ThiswillsuspendallnewIOtothepool!IOinflightprocessingwillbecompleted.get-secretReturnsautogenerated,20characterssecret.set-secretUpdatesthesecret(replacestheexistingonewithanewone)andreturnsthenewone.

optionalarguments:-h,--helpshowthishelpmessageandexitAdd poolQOS parameters are optional but when used in a pool, new Lvol
creation will require the active qos parameter.User can use both QOS parameters (--max-rw-iops, --max-rw-mbytes)
and will apply which limit comes first.$sbclipooladd-h
usage:sbclipooladd[-h][--pool-maxPOOL_MAX][--lvol-maxLVOL_MAX][--max-w-iopsMAX_W_IOPS][--max-r-iopsMAX_R_IOPS][--max-r-mbytesMAX_R_MBYTES][--max-w-mbytesMAX_W_MBYTES][--has-secret]name

AddanewPool

positionalarguments:namePoolname

optionalarguments:-h,--helpshowthishelpmessageandexit--pool-maxPOOL_MAXPoolmaximumsize:20M,20G,0(default)--lvol-maxLVOL_MAXLVolmaximumsize:20M,20G,0(default)--max-w-iopsMAX_W_IOPSMaximumWriteIOPerSecond--max-r-iopsMAX_R_IOPSMaximumReadIOPerSecond--max-r-mbytesMAX_R_MBYTESMaximumReadMegaBytesPerSecond--max-w-mbytesMAX_W_MBYTESMaximumWriteMegaBytesPerSecond--has-secretPooliscreatedwithasecret(allfurtherAPIinteractionswiththepoolandlogicalvolumesinthepoolrequirethissecret)Set pool attributes$sbclipoolset-h
usage:sbclipoolset[-h][--pool-maxPOOL_MAX][--lvol-maxLVOL_MAX][--max-w-iopsMAX_W_IOPS][--max-r-iopsMAX_R_IOPS][--max-r-mbytesMAX_R_MBYTES][--max-w-mbytesMAX_W_MBYTES]id

Setpoolattributes

positionalarguments:idPoolUUID

optionalarguments:-h,--helpshowthishelpmessageandexit--pool-maxPOOL_MAXPoolmaximumsize:20M,20G--lvol-maxLVOL_MAXLVolmaximumsize:20M,20G--max-w-iopsMAX_W_IOPSMaximumWriteIOPerSecond--max-r-iopsMAX_R_IOPSMaximumReadIOPerSecond--max-r-mbytesMAX_R_MBYTESMaximumReadMegaBytesPerSecond--max-w-mbytesMAX_W_MBYTESMaximumWriteMegaBytesPerSecondList pools$sbclipoollist-h
usage:sbclipoollist[-h][--json][--cluster-id]Listpools

optionalarguments:-h,--helpshowthishelpmessageandexit--jsonPrintoutputsinjsonformat--cluster-idIDoftheclusterGet pool details$sbclipoolget-h
usage:sbclipoolget[-h][--json]id

getpooldetails

positionalarguments:idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexit--jsonPrintoutputsinjsonformatDelete pool$sbclipooldelete-h
usage:sbclipooldelete[-h]id

deletepool.Itisonlypossibletodeleteapoolifitisempty(noprovisionedlogicalvolumescontained).

positionalarguments:idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexitSet pool status to Active$sbclipoolenable-h
usage:sbclipoolenable[-h]pool_id

SetpoolstatustoActive

positionalarguments:pool_idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexitSet pool status to Inactive$sbclipooldisable-h
usage:sbclipooldisable[-h]pool_id

SetpoolstatustoInactive.Attention!ThiswillsuspendallnewIOtothepool!IOinflightprocessingwillbecompleted.

positionalarguments:pool_idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexitGet pool secret$sbclipoolget-secret-h
usage:sbclipoolget-secret[-h]pool_id

Returnsautogenerated,20characterssecret.

positionalarguments:pool_idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexitUpdate pool secret$sbclipoolset-secret-h
usage:sbclipoolset-secret[-h]pool_id

Updatesthesecret(replacestheexistingonewithanewone)andreturnsthenewone.

positionalarguments:pool_idpooluuid

optionalarguments:-h,--helpshowthishelpmessageandexit