Command Reference
The following section contains information about the commands usable by either GSCCADM,SPORDADM or SPORDCONF.
GSCCADM
These are the available GSCCADM commands:
help
The “help” command shows usable commands. When used with a subcommand, it shows their syntax and use.
Syntax:
help
help <subcommand>
Examples:
gscc doc01>help
Available gsccadm commands:
<COMMAND> <SUBCOMMAND> <PARAMETERS>
clear clears and purge vars or files
disable disable a function like operator
enable enable a funktion like operator
get get a value like time
gscc cluster internal command - send commands to gsccd
monitor monitor for members
oper operator commands can be send here
query queries all kind of information like status
settsmadm configure secure TSM password for GSCC
trigger commits a planned cluster action
update updates admin users
version gsccadm version
enable
The “enable” command can set the operator mode for a GSCC cluster member or put it into “force” mode.
Syntax:
enable <subcommand> <member>
Parameters:
<subcommand> (Required) - The enable command which should be executed. For available subcommands, use "help enable".
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>enable operator TSM1
INFO: Operator-Mode enabled for TSM1 - please standby!
enable operator
Syntax:
enable operator <MEMBER>
Examples:
gscc doc01>enable operator TSM1
INFO: Operator-Mode enabled for TSM1 - please standby!
Note
Use get to look up which members are available for this command and query status to see the current state of the available members.
enable force
The “enable force” command starts enables specific gscmd commands for a given amount of time.
Caution
Do only use this if you are 100% sure what you are doing!
Syntax:
enable force <member>
Example:
gscc doc01>enable force TSM1
WARNING: Forced actions are temporarily enabled for TSM1 !
oper
The “oper” command can manage GSCC operations for a GSCC member which is in “Operator” state. It has several subcommands.
Syntax:
operator <subcommand> <member>
Parameters:
<subcommand> (Required) - The operator command which should be executed. For available subcommands, use "help oper".
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper join TSM1
INFO: Command join for TSM1 listed !
Note
Use get to look up which members are available for this command and query to see the current state of the available members.
oper join
The “oper join” command sets the local member ready for joining. Prior to joining, the peer member has to be set to “join”, too.
Syntax:
oper join <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper join TSM1
INFO: Command join for TSM1 listed !
oper starttsm
The “oper starttsm” command attempts to start the Spectrum Protect Server and to add configured IP aliases.
Syntax:
oper starttsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper starttsm TSM1
INFO: Command starttsm for TSM1 listed !
oper stoptsm
The “oper stoptsm” command attempts to stop the Spectrum Protect Server and to remove configured IP aliases.
Syntax:
oper stoptsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper stoptsm TSM1
INFO: Command stoptsm for TSM1 listed !
oper switchtsm
The “oper switchtsm” command attempts to stop the Spectrum Protect Server and to remove configured IP aliases on the local cluster member and start the Spectrum Protect Server and add configured IP aliases on the remote cluster member in one step.
Note
This command has to be used on the active cluster member to work.
Syntax:
oper switchtsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper switchtsm TSM1
INFO: Command switchtsm for TSM1 listed !
oper restarttsm
The “oper restarttsm” command attempts to stop and then start the Spectrum Protect Server again.
Syntax:
oper restarttsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc sles-01>oper restarttsm ISP01
INFO: Command restarttsm for ISP01 listed !
oper reintegrate
The “oper reintegrate” command attempts to reintegrate the old primary member as the standby member after a takeover occured. This only works if the local member is “standard” and the peer member is “primary” and inactive.
Syntax:
oper reintegrate <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc sles-01>oper reintegrate ISP01
INFO: Command reintegrate for ISP01 listed !
oper addhomevg
The “oper addhomevg” adds the configured logical volume group and volumes on the local cluster member, if configured in your GSCC configuration.
Syntax:
oper addhomevg <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper addhomevg TSM1
INFO: Command addhomevg for TSM1 listed !
oper rmhomevg
The “oper rmhomevg” varies the configured logical volume group and volumes offline on the local cluster member, if configured in your GSCC configuration.
Syntax:
oper rmhomevg <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper rmhomevg TSM1
INFO: Command rmhomevg for TSM1 listed !
oper activatetsm
The “oper activatetsm” command attempts to add the configured logical volume group and volumes on the local cluster member, if configured in your GSCC configuration, and then to start the Spectrum Protect Server and to add configured IP aliases.
Syntax:
oper activatetsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper activatetsm TSM1
INFO: Command activatetsm for TSM1 listed !
oper deactivatetsm
The “oper deactivatetsm” command attempts to stop the Spectrum Protect Server and to remove configured IP aliases and then varies the configured logical volume group and volumes offline on the local cluster member, if configured in your GSCC configuration.
Syntax:
oper deactivatetsm <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper deactivatetsm TSM1
INFO: Command deactivatetsm for TSM1 listed !
oper startstby
The “oper startstby” command starts the local db2 database and activates it.
Syntax:
oper startstby <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper startstby TSM1
INFO: Command startstby for TSM1 listed !
oper stopstby
The “oper stopstby” command deactivates the local db2 database and stops it.
Syntax:
oper stopstby <member>
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>oper stopstby TSM1
INFO: Command stopstby for TSM1 listed !
get
The “get” command shows either the time set on the system or the configured GSCC members.
Syntax:
get time
get member
Parameters:
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>get member
TSM1
query
The “query” command can show various information about the cluster status, depending on the used subcommand
Syntax:
query <subcommand> <parameter>
Parameters:
<subcommand> (Required) - The query command which should be executed. For available subcommands, use "help query".
<member> (Required) - The GSCC cluster member for which the command should be executed.
Examples:
gscc doc01>query status TSM1
210510101911 TSM1 Operator
query status
The “query status” command shows the status of one or all cluster members.
Syntax:
query status
query status <member>
Parameters:
<member> (Optional) - The GSCC cluster member for which the command should be executed. If none is given, query status lists all available members.
Examples:
gscc doc01>query status TSM1
210510101911 TSM1 Operator
query hadr
The “query hadr” command shows the hadr status and additional information of one or all cluster members.
Syntax:
query hadr
query hadr <member>
Parameters:
<member> (Optional) - The GSCC cluster member for which the command should be executed. If none is given, query status lists all available members.
Examples:
gscc doc01>q hadr
TSM1: doc01 - STANDBY DB - 2021-11-16-15.55 - Role: STANDBY - State: PEER - Gap: 0 - Con: CONNECTED - P-Log S0001074.LOG
update admin
The “update admin” command lets you add, remove or change GSCC users.
Syntax:
update admin <subcommand> <parameter(s)>
Parameters:
<subcommand> (Required) - The update admin command which should be executed. For available subcommands, use "help update".
<parameter(s)> (Required) - Depends on the used subcommand.
Examples:
gscc sles-02>update admin add test S@f3P4ssword
INFO: User test added !
update admin add
The “update admin add” command adds a new user to use with GSCC.
Syntax:
update admin add <user> <pw>
Parameters:
<user> (Required) - The username for the new user.
<pw> (Required) - The password for the new user.
Examples:
gscc sles-02>update admin add test S@f3P4ssword
INFO: User test added
update admin del
The “update admin del” command deletes a GSCC user.
Syntax:
update admin del <user>
Parameters:
<user> (Required) - The username for the user you want to delete.
Examples:
gscc sles-02>update admin del test
INFO: User test deleted !
update admin pw
The “update admin pw” command udpates a password for an existing GSCC user.
Syntax:
update admin pw <user> <oldpw> <newpw>
Parameters:
<user> (Required) - The username for the new user.
<oldpw> (Required) - The existing password for the new user.
<newpw> (Required) - The new password for the new user.
Examples:
gscc sles-02>update admin pw test S@f3P4ssword test
INFO: User test updated !
Forced actions
Usually, when starting ISP services in a GSCC environment, the cluster members are in a state in which the DB2 HADR is working as intended, so taking over an ISP instance is possible without the risk of data loss.
In specific cases however, GSCC will not perform an HADR takeover, because one or more of the members are not in a clean role state. Usually this means that some actions during a cluster outage led to a DB2 configuration which is not suitable for clustering anymore and that the members should be brought up in the correct role before taking further action.
- However, with the enable force command you can circumvent the rules for taking over the DB2 database if the GSCC member have on of these role combinations:
The local member is in a “standby” role, but the peer member is unavailable.
The local and the peer member are both in a “standby” role
The local and the peer member are both in a “standard” role
The local member is in a “standard” role, but the peer member is unavailable.
The local member is in a “primary” role, but the peer member is in the “primary” state.
Danger
Do only use this if you are 100% sure what you are doing! If used incorrectly, you can end up with an old ISP DB2 state, resulting in the loss of backed up data!
Performing a takeover with “enable force” could then look like this:
GSCMD
The “gscmd” commands are a special command group in gsccadm to manage the DB2 database manager and the database including HADR. The command is only executed locally, but there are commands, which point to the remote instance.
The command is used like this:
gscmd <member> <gscmd-subcommand>
list
The “list” subcommand shows a list of available commands.
Syntax:
gscmd <member> list
Example:
gscc lax11>gscmd TSM143 list
Usage: gscmd <membername> <action>...
Available actions:
addhadrip removehadrip stopdb2
hadrprimary hadrstandby hadrpeerstandby hadrmercystandby
activatedb activatepeerdb deactivatedb deactivatepeerdb
takeoverdb takeoverpeerdb
takeoverdbpeerwindowonly takeoverdbbyforce
dbstatus peerdbstatus
role peerrole
state peerstate
rolestate peerrolestate
startdbm startpeerdbm
stophadr
transfersendmailowner
qowner
Warning
Not all of these commands are intended to be used manually. If you are unsure about a command and if it is not explained in this documentation, do not execute it by yourself. You can corrupt your cluster by misuse!
startdbm
The “startdbm” command starts the DB2 database manager and activates the database.
Syntax:
gscmd <member> startdbm
Example:
gscc lax11>gscmd TSM143 startdbm
Starting database manager for tsm143.
DB2START processing was successful.
role
The “role” command checks the HADR role (database manager must be running)
Syntax:
gscmd <member> role
Example:
gscc lax11>gscmd TSM143 role
STANDBY
activatedb
The “activatedb” command activates a DB2 database (database manager must be running).
Syntax:
gscmd <member> activatedb
Example:
gscc lax11>gscmd TSM143 activatedb
Activating database for tsm143.
DB20000I The ACTIVATE DATABASE command completed successfully.
state
The “state” command checks the HADR state of the given member (database must be activated). For more details use query hadr instead.
Syntax:
gscmd <member> state
Example:
gscc lax11>gscmd TSM143 state
REMOTE_CATCHUP_PENDING
deactivatedb
The “deactivatedb” command deactivates an HADR Standby database.
Syntax:
gscmd <member> deactivatedb
Example:
gscc lax11>gscmd TSM143 deactivatedb
Deactivating database for tsm143.
Stopping database manager for tsm143.
Stopping DB2 backend process for tsm143.
The TERMINATE command completed successfully.
Stopping DB2 license daemon for tsm143.
stophadr
The “stophadr” command stops HADR on a database.
Syntax:
gscmd <member> stophadr
Example:
gscc lax11>gscmd TSM143 role
STANDBY
gscc lax11>gscmd TSM143 stophadr
Stopping HADR.
The STOP HADR ON DATABASE command completed successfully.
gscc lax11>gscmd TSM143 role
STANDARD
hadrstandby
The “hadrstandby” command starts HADR as Standby on a database.
Syntax:
gscmd <member> hadrstandby
Example:
gscc lax11>gscmd TSM143 role
STANDARD
gscc lax11>gscmd TSM143 hadrstandby
Starting DB2 as Standby.
The START HADR ON DATABASE command completed successfully.
gscc lax11>gscmd TSM143 role
STANDBY
Note
This is only possible on a previously restored database or a previous standby database, which was not activated a Standard database. In a reintegration situation, this command is used to reintegrate a previously primary database into a HADR relationship with an activated Standby database (STANDARD role after takeover).
hadrprimary
The “hadrprimary” command starts HADR as Primary on a database.
Syntax:
gscmd <member> hadrprimary
Example:
gscc lax10>gscmd TSM143 hadrprimary
Starting database manager for tsm143.
DB2START processing was successful.
Starting primary database for tsm143.
The START HADR ON DATABASE command completed successfully.
Note
This is only possible, if a Standby database is activated and this database is in the STANDARD role.
DB2 Reintegration after forced Takeover:
gscc lax11>q tsm
TSM143 running_nohadr
gscc lax11>gscmd TSM143 role
STANDARD
When a system with a primary database crashes, the standby database needs to be activated by force, because the communication with the previous primary database is no longer possible. The standby database switches the role to “STANDARD” and TSM is started on that database. When the previous primary database is coming up again, it still has the role “PRIMARY”, but will not be activated by GSCC. When the server only crashed and the database is in a good state, it can be reintegrated as new standby database (roles are switched). This avoids a resync activity, which would be necessary, if the original primary database is damaged! The following steps perform the reintegration: TSM is running on the previuos standby, now in role “STANDARD”.
Start database manager on the other host, database still Primary:
gscc lax10>gscmd TSM143 startdbm
Starting database manager for tsm143.
DB2START processing was successful.
gscc lax11>gscmd TSM143 role
PRIMARY
Start HADR on that host with role standby instead of primary to reintegrate database:
gscc lax10>gscmd TSM143 hadrstandby
Starting DB2 as Standby.
The START HADR ON DATABASE command completed successfully.
gscc lax10>gscmd TSM143 role
STANDBY
SPORDADM
The command is used like this:
spordadm <instancename> <subcommand>
Note
<instancename> is based on the spord configuration file (/etc/spord/spord.conf). If only instancename is specified, spordadm will connect to the corresponding container.
Usable subcommands are these:
start - starts the container with corresponding name together with GSCC daemons
startsrv - Starts the container and dsmserv - interactive way. No GSCC daemons started
startoc - Starts the Operations Center container, together with the webserver
startmon - starts a GSCC monitoring container
create - preview/execute a command to create a new container (includes dsmserv format)
removedb - preview/execute a command to remove the ISP DB
stop - stops the container. "spordadm all stop" will stop all running containers
stopforce - Stops a container even if it has an ISP instances running (dsmserv process)
gsccadm - connects to GSCC CLI trasparently, through the container
stopgscc - stops GSCC daemons (gscomd, gsccd and gsemd) from the container
startgscc - starts GSCC daemons
startgsccmon - starts gscomd daemon, the only needed for a Monitoring container
stopgsccmon - stops gscomd daemon from a Monitoring container
startgsuid - starts gsuid (the webserver needed for GSCC GUI) inside the container
stopgsuid - stops gsuid
setoper - runs setoper command, which forces GSCC to start in Operator mode. This command is started before GSCC daemons
showlogs - Displays the container logs
listimages - lists all container images already loaded on the system
loadimage - loads a new container image. This command requires a second parameter which is the path to the new image
removeimage - Deletes a container image. This command requires a second parameter "IMAGE ID" which is shown in the "listimages" output.
listlabels - Shows all the Labels of a container image. This command requires a second parameter "IMAGE ID" which is shown in the "listimages" output.
Note
Not all subcommands will be explained in this documentation, since some should only be executed when instructed to do so.
start
The “start” command starts a container and its’ GSCC daemons.
Syntax:
spordadm <instancename> start
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
spordadm ISP01 start
Starting "ISP01" container ...
"docker ps" output:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8dffe732dcf4 dockercentos74:SP8.1.12.100-GSCC-DSMISI "/opt/generalstorage…" 2 seconds ago Up 1 second gscc-ISP01
startsrv
The “startsrv” command starts the container and the dsmserv process in an interactive way. No GSCC daemons are started.
Syntax:
spordadm <instancename> startsrv
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
[root@rhelgscc-1 ~]# spordadm 1 startsrv
Starting "ISP01" container and dsmserv...
##################################################################
# General Storage SPORD - (c) 2022 General Storage Software GmbH #
##################################################################
INFO: Reading configuration file /etc/spord/spord.conf.
INFO: Receiving configuration for ISP01!
------------------------------
SPORDNAME: ISP01
...
startoc
The “startoc” command starts a dedicated Operations Center container and its webserver.
Syntax:
spordadm <instancename> startoc
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
[root@rhelgscc-1 ~]# spordadm ispoc startoc
Starting "ISPOC" Operations Center container...
"podman ps" output:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
76e0d4a43885 localhost/dockercentos79:SP8.1.17-OC /opt/generalstora... 1 second ago Up 1 second ago OC-ISPOC
stop
The “stop” command stops a running container if it is safe to do so.
Syntax:
spordadm <instancename> stop
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
sles-01:~ # spordadm 1 stop
Command received to stop "gscc-ISP01" container
WARNING! There is a dsmserv process present inside "gscc-ISP01" container, won't be clean to stop it this way. Please check
...after stopping ISP Services...
sles-01:~ # spordadm 1 stop
Command received to stop "gscc-ISP01" container
Shuting down the container "gscc-ISP01" (it might take up to 10s to stop the container, check with "docker ps")
create
The “create” command either shows the command to create a new container based on information in spord.conf or creates it.
Syntax:
spordadm <instancename> create <-execute>
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
<-execute> (optional) - If this parameter is specified, the creation will be executed instead of showing the command to do so.
Examples:
sles-01:~ # spordadm ISP1 create
Command PREVIEW for "ISP1" SPORD ISP creation.
SPORD: /opt/generalstorage/spord/bin/spord create -sp=ISP1 -int=no
##################################################################
# General Storage SPORD - (c) 2022 General Storage Software GmbH #
##################################################################
INFO: Reading configuration file /etc/spord/spord.conf.
INFO: Receiving configuration for ISP1!
------------------------------
SPORDNAME: ISP1
SPORDBIN:
SPCONTBIN:
SPORDCONF: /etc/spord/spord.conf
SPORDHOME: /SPORD/HOME/ISP1
GSCCVERSION:
CUSTOMFILE:
DOCKIMG: dockercentos74:SP8.1.14.100-GSCC-DSMISI
ADDMAPPING: /SPORD/ISP/ISP1,/SPORD/GSCC/ISP1/etcgscc:/etc/gscc,/SPORD/GSCC/ISP1/vargscc:/var/gscc,/isi9300/isi9300/0001/dbbackups:/isi9300/isi9300/0001/dbbackups
ADDOPTION:
MAINCOMMAND: create
ARGUMENTS:
------------------------------
INFO: Using docker image dockercentos74:SP8.1.14.100-GSCC-DSMISI!
CREATE dockercentos74:SP8.1.14.100-GSCC-DSMISI
DOCKER COMMAND(NEW): docker run -it --rm --privileged --net=host --ipc=host --name=ISP1 -v /etc/localtime:/etc/localtime -v /dev:/dev -v /SPORD/HOME/ISP1:/SPORD/HOME/ISP1 -v /opt/generalstorage/spord/bin:/opt/generalstorage/spord/bin -v /SPORD/ISP/ISP1:/SPORD/ISP/ISP1 -v /SPORD/GSCC/ISP1/etcgscc:/etc/gscc -v /SPORD/GSCC/ISP1/vargscc:/var/gscc -v /isi9300/isi9300/0001/dbbackups:/isi9300/isi9300/0001/dbbackups dockercentos74:SP8.1.14.100-GSCC-DSMISI /opt/generalstorage/spord/bin/SPserver create /SPORD/HOME/ISP1/ISP1.dkd
INFO: Preview Mode. Command not executed.
gsccadm
The “gsccadm” command connects to the specified container and connects to the gscc CLI inside it.
Syntax:
spordadm <instancename> gsccadm
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
sles-01:~ # spordadm 1 gsccadm
General Storage Cluster Controller for ISP - Version 3.8.7.0
Command Line Administrative Interface
(C) Copyright General Storage 2021
Please enter user id: isp
Please enter password:
GSCC Version(CLI Revision): 3.8.7.0(2856)
gscc sles-01>
startgscc
The “startgscc” command starts the gscc services inside the specified container.
Syntax:
spordadm <instancename> startgscc
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
sles-01:~ # spordadm 1 startgscc
Starting GSCC daemons (gscomd, gsccd, gsemd) inside "gscc-ISP01" container...
stopgscc
The “stopgscc” command stops the gscc services inside the specified container.
Syntax:
spordadm <instancename> stopgscc
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
sles-01:~ # spordadm 1 stopgscc
Stopping GSCC daemons (gscomd, gsccd, gsemd) inside "gscc-ISP01" container...
setoper
The “setoper” command forces GSCC to start in Operator mode.
Note
This command has to be started before GSCC services are started.
Syntax:
spordadm <instancename> setoper
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
sles-01:~ # spordadm 1 setoper
Executing "setoper" command inside "gscc-ISP01" container...
ERROR: gsccd is still active (PID:18871)
...
sles-01:~ # spordadm 1 stopgscc
Stopping GSCC daemons (gscomd, gsccd, gsemd) inside "gscc-ISP01" container...
sles-01:~ # spordadm 1 setoper
Executing "setoper" command inside "gscc-ISP01" container...
INFO: Member ISP01 set to Operator at GSCC startup
sles-01:~ # spordadm 1 startgscc
Starting GSCC daemons (gscomd, gsccd, gsemd) inside "gscc-ISP01" container...
showlogs
The “showlogs” command shows the container application logs for a starting or running container.
Syntax:
spordadm <instancename> showlogs
Parameters:
<instancename> (Required) - The instance for which the command should be executed.
Examples:
[root@rhelgscc-1 ~]# spordadm ISP01 showlogs
SYSTEM PREPARATION
SPORDHOME (/SPORD/HOME/ISP01) available. Starting...
CLIENT FILE PREPARATION.................
ERROR: File dsmcert.sth missing in /SPORD/HOME/ISP01. Please create file by connecting with a sessionsec=trans ISP user.
INFO: Copy file from /opt/tivoli/tsm/client/ba/bin to /SPORD/HOME/ISP01!
ERROR: File dsmcert.kdb missing in /SPORD/HOME/ISP01. Please create file by connecting with a sessionsec=trans ISP user.
INFO: Copy file from /opt/tivoli/tsm/client/ba/bin to /SPORD/HOME/ISP01!
ERROR: File dsmcert.idx missing in /SPORD/HOME/ISP01. Please create file by connecting with a sessionsec=trans ISP user.
INFO: Copy file from /opt/tivoli/tsm/client/ba/bin to /SPORD/HOME/ISP01!
INFO: Client files preparation completed!
DETECTING ENVIRONMENT
PROCESSING DKDFILE /SPORD/HOME/ISP01/ISP01.dkd..............
ISP User: isp01
ISP UserID: 1600
ISP Group: isp01
ISP GroupID: 1600
ISP User Home Directory: /SPORD/ISP/ISP01/config
DB Directory Location(s): /SPORD/ISP/ISP01/db1,/SPORD/ISP/ISP01/db2,/SPORD/ISP/ISP01/db3,/SPORD/ISP/ISP01/db4
Active Log Directory: /SPORD/ISP/ISP01/actlog
Archive Log Directory: /SPORD/ISP/ISP01/arclog
Active Log Size: activelogsize=4092
...
Starting GSCC processes:
INFO: Writing Semaphore /SPORD/HOME/ISP01/SPgscc.lock
GSCC Container initialization completed!
listimages
The “listimages” command lists all loaded images for the container application.
Syntax:
spordadm listimages
Examples:
[root@rhelgscc-1 ~]# spordadm listimages
REPOSITORY TAG IMAGE ID CREATED SIZE
localhost/dockercentos79 SP8.1.17-GSCC-DSMISI af2098d76c89 7 months ago 4.75 GB
localhost/dockercentos79 SP8.1.15-GSCC-DSMISI bff0ddc43aac 11 months ago 4.7 GB
listlabels
The “listlabels” command lists all labels for a specified loaded image. The labels show additional information like Application Versions and date of creation.
Syntax:
spordadm listlabels <IMAGE ID>
Parameters:
<IMAGE ID> (Required) - The ID of the image file for which labels should be shown.
Examples:
[root@rhelgscc-1 ~]# spordadm listimages
REPOSITORY TAG IMAGE ID CREATED SIZE
localhost/dockercentos79 SP8.1.17-GSCC-DSMISI af2098d76c89 11 months ago 4.75 GB
[root@rhelgscc-1 ~]# spordadm listlabels af2098d76c89
{"GSCC":"3.8.8.2","GeneralStorageSoftwareGmbH":"SPORD","ISP":"8.1.17.000","ImageVersion":"20221215","build-date":"20170911","dsmisi":"3.2.2.0","license":"GPLv2","name":"CentOS Base Image","vendor":"CentOS"}
loadimage
The “loadimage” command loads a new image to the container applications’ library.
Syntax:
spordadm loadimage <imagepath>
Parameters:
<imagepath> (Required) - The full path to the image file which should be loaded.
Examples:
[root@rhelgscc-1 provisioning]# spordadm loadimage /NFS/SPORDDEPLOY/provisioning/SP8.1.17-GSCC-DSMISI
Loading container image /NFS/SPORDDEPLOY/provisioning/SP8.1.17-GSCC-DSMISI...
Getting image source signatures
Copying blob 606d67d8e1b8 skipped: already exists
Copying blob 606d67d8e1b8 skipped: already exists
Copying blob e81a4cf0662b done
Copying config af2098d76c done
Writing manifest to image destination
Storing signatures
Loaded image: localhost/dockercentos79:SP8.1.17-GSCC-DSMISI
removeimage
The “removeimage” command remove a previously loaded container image from the container applications’ library.
Syntax:
spordadm removeimage <IMAGE ID>
Parameters:
<IMAGE ID> (Required) - The ID of the image file which should be removed.
Examples:
[root@rhelgscc-1 ~]# spordadm listimages
REPOSITORY TAG IMAGE ID CREATED SIZE
localhost/dockercentos79 SP8.1.17-GSCC-DSMISI af2098d76c89 11 months ago 4.75 GB
localhost/dockercentos79 SP8.1.15-GSCC-DSMISI bff0ddc43aac 15 months ago 4.7 GB
[root@rhelgscc-1 ~]# spordadm removeimage bff0ddc43aac
Deleting Container image with ID bff0ddc43aac...
Untagged: localhost/dockercentos79:SP8.1.15-GSCC-DSMISI
Deleted: bff0ddc43aac97e3a18cc7f6f47581654377e7240f6b285d87ea503695d09306
SPORDCONF
The command is used like this:
spordconf -c - checks prerequisites as configured.
spordconf -p - prepare all necessary files for deployment from input files and templates.
spordconf -d - deploy instance (optionally with "dsmisi" or "dsmisionly") or all relevant instances for this system, or monitoring container with "MON".
spordconf -i - initialize instance. When 'HADR' is specified, also get Containers in HADR state. Or initialize a "MON"itoring container.
spordconf -c
The check command “-c” checks prerequisites as configured.
Syntax:
spordconf -c
Examples:
[root@rhelgscc-1 provisioning]# spordconf -c
[DEBUG] spordconf starting...
[DEBUG] Container application is podman
[DEBUG] Sourcing default input file for this host.
[DEBUG] Sourcing custom input file for this host.
[DEBUG] Starting check for prerequisites.
[INFO] Starting check for the operating system...
[INFO] rhel detected. Continuing.
[INFO] Starting check for specified directories...
[DEBUG] Checking for directory /NFS/SPORDDEPLOY...
[INFO] Directory /NFS/SPORDDEPLOY exists.
[DEBUG] Checking for directory /var/spord/logs...
[INFO] Directory /var/spord/logs exists.
[DEBUG] Checking for directory /etc/spord/conf/templates...
[INFO] Directory /etc/spord/conf/templates exists.
[DEBUG] Checking for directory /NFS/SPORDDEPLOY/backups...
[INFO] Directory /NFS/SPORDDEPLOY/backups exists.
[DEBUG] Checking for directory /NFS/SPORDDEPLOY/input...
[INFO] Directory /NFS/SPORDDEPLOY/input exists.
[DEBUG] Checking for directory /NFS/SPORDDEPLOY/staging...
[INFO] Directory /NFS/SPORDDEPLOY/staging exists.
[DEBUG] Checking for directory /NFS/SPORDDEPLOY/provisioning...
[INFO] Directory /NFS/SPORDDEPLOY/provisioning exists.
[DEBUG] Checking for directory /NFS/SPORDDEPLOY/output...
[INFO] Directory /NFS/SPORDDEPLOY/output exists.
[DEBUG] Checking for directory /SPORD...
[INFO] Directory /SPORD exists.
[INFO] Starting check for installed packages...
[DEBUG] Checking prerequisistes...
[INFO] Package: dsmisi installed.
[WARNING] Package 'blablub' not installed!
[INFO] Starting check for the container image...
[INFO] Specified container image localhost/dockercentos79:SP8.1.17-GSCC-DSMISI was found.
spordconf -p
The prepare command “-p” prepares all necessary files for deployment from given input files and templates.
Syntax:
spordconf -p
Examples:
[root@rhelgscc-1 provisioning]# spordconf -p
[DEBUG] spordconf starting...
[DEBUG] Container application is podman
[DEBUG] Sourcing default input file for this host.
[DEBUG] Sourcing custom input file for this host.
[DEBUG] Starting preparation.
[DEBUG] Trying to source cluster input file(s) for this host.
[DEBUG] Instance defined in /NFS/SPORDDEPLOY/input/rhelgscccluster/isp01.instance.input is relevant for this host. Sourcing
[DEBUG] Trying to source node input file for instance ISP01.
[DEBUG] Looking for a node input file for our Cluster rhelgscccluster.
[DEBUG] Node input file /NFS/SPORDDEPLOY/input/rhelgscccluster/rhelgscc-1.node.input sourced.
[DEBUG] /NFS/SPORDDEPLOY/output/rhelgscccluster already existent.
[DEBUG] /NFS/SPORDDEPLOY/output/rhelgscccluster/ISP01 already existent.
[DEBUG] Deleting everything in existing Outputdir /NFS/SPORDDEPLOY/output/rhelgscccluster/ISP01 prior to repopulating...
[DEBUG] Creating template list file /etc/spord/conf/templates/ALL.templates from /etc/spord/conf/templates
[INFO] Processing template files from /NFS/SPORDDEPLOY/staging/ALL.templates
[DEBUG] Backing up: output input scripts templates in /NFS/SPORDDEPLOY/backups.
[INFO] Backup successful: /NFS/SPORDDEPLOY/backups/rhelgscc-1.230719113949.tar
[DEBUG] No password for the GSCC administrative deployment user specified. Will generate a random password.
[DEBUG] Password for ISP deployment user admin is ODE5MTdhM2MwNTM4NjEwNzIwNDNkOWVj
[DEBUG] Our primary Instance IP is: 192.168.178.60
[DEBUG] Processing template file /etc/spord/conf/templates/cl.def.template
[DEBUG] Processing template file /etc/spord/conf/templates/gscc.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/gsccmon.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/gsuidcustom.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.dkd.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.dsm.opt.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.dsmserv.opt.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.gsalert.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.ips.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.ispdirs.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.runfile.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.spord.conf.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.tsm.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/instance.tsmlocalfs.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.dsmisi.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.dsm.opt.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.dsm.sys.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.instance.dsmisi.conf.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.isicluster.dsmisi.conf.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/outside.spord.conf.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.db2backup.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.db2hadr.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.db2restore.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.dsmcert.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.hadrinit.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.instance.clipup.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.instance.def.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.instance.dsm.sys.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.instance.heartbeat.template
[DEBUG] Processing template file /etc/spord/conf/templates/primary_node.outside.dsm.sys.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/spordmon.conf.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.db2backup.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.db2hadr.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.db2restore.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.dsmcert.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.hadrinit.cmd.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.instance.clipup.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.instance.def.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.instance.dsm.sys.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.instance.heartbeat.template
[DEBUG] Processing template file /etc/spord/conf/templates/standby_node.outside.dsm.sys.PART.template
[DEBUG] Processing template file /etc/spord/conf/templates/tsm_emergency.cmd.template
spordconf -d
The deploy command “-d” deploys all instance components to its destination (optionally with “dsmisi” or “dsmisionly”) or all relevant instances for this system, or monitoring container with “MON”.
Syntax:
spordconf -d <instance>|ALL|MON [dsmisi|dsmisionly]
Parameters:
<instance> (Required, if not "ALL" or "MON") - The instance for which the command should be executed.
ALL (Required, if no <instance> or "MON" specified) - All prepared instances will be deployed.
MON (Required, if no <instance> or "ALL" specified) - The monitoring container configuration will be deployed.
[dsmisi|dsmisionly] (Optional) - If specified, spordconf will try configuring dsmisi according to the configuration. If "dsmisionly", just the dsmisi config will be deployed, nothing else.
Examples:
[root@rhelgscc-1 provisioning]# spordconf -d ISP01
[DEBUG] spordconf starting...
[DEBUG] Container application is podman
[DEBUG] Sourcing default input file for this host.
[DEBUG] Sourcing custom input file for this host.
[DEBUG] Starting deployment.
[DEBUG] outputDir is /NFS/SPORDDEPLOY/output
[DEBUG] find /NFS/SPORDDEPLOY/output/*/ISP01 -type d -print 2>/dev/null
[DEBUG] Found specified Instance ISP01, in /NFS/SPORDDEPLOY/output/rhelgscccluster/ISP01
[DEBUG] clusterOutputDir is /NFS/SPORDDEPLOY/output/rhelgscccluster
[DEBUG] found instanceNodes /NFS/SPORDDEPLOY/output/rhelgscccluster/ISP01/nodes.
[INFO] Deployment running on PRIMARY site for instance ISP01 !
[DEBUG] Found a pre-deployment script. Executing now: /NFS/SPORDDEPLOY/provisioning/pre.deploy.sh with ISP01 as parameter
[DEBUG] Checking Instance status!
[DEBUG] instance.status file /SPORD/ISP01.status exists, checking Status.
[WARNING] Status is INITIALIZED.
[DEBUG] Prompting user to overwrite existing deployment.
Do you want to overwrite files for instance ISP01 with status INITIALIZED ? (y/n):y
Overwriting existing deployment.
[DEBUG] User chose to overwrite current deployment.
[DEBUG] Creating Instance directories
[DEBUG] Creating instance owner user and group, changing ownership
[DEBUG] Instance owner already exists. Justing changing ownership.
[INFO] spord.conf already exists, we will just edit our spordconf stanzas
[INFO] ISP Client seems to NOT be installed on host system! Not deploying dsm.sys and dsm.opt on host system.
[DEBUG] Copying output files to target directories
[INFO] Instance ISP01 already was initialized. Not changing instance Status.
[INFO] Deployment finished.
[DEBUG] Found a post-deployment script. Executing now: /NFS/SPORDDEPLOY/provisioning/post.deploy.sh with ISP01 as parameter
[root@rhelgscc-1 provisioning]#
spordconf -i
The init command “-i” initializes a container instance. When ‘HADR’ is specified, it also gets containers in HADR state.
Syntax:
spordconf -i <instance>|MON [HADR]
Parameters:
<instance> (Required, if not "MON") - The instance for which the command should be executed.
MON (Required, if no <instance> specified) - The monitoring container will be initialized.
[HADR] (Optional) - If specified, spordconf will try to configure and activate HADR. This needs to be run on both cluster systems in parallel to work.
Examples:
[root@rhelgscc-1 provisioning]# spordconf -i MON
[DEBUG] spordconf starting...
[DEBUG] Container application is podman
[DEBUG] Sourcing default input file for this host.
[DEBUG] Sourcing custom input file for this host.
[INFO] Starting initialization.
[DEBUG] Editing crontab to add MON entry...
[DEBUG] Crontab already configured. No changes neccessary.
Starting "GSCCMON" GSCC monitoring container ...
"podman ps" output:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f876ab7608b5 localhost/dockercentos79:SP8.1.17-GSCC-DSMISI /opt/generalstora... 1 second ago Up 2 seconds ago mon-GSCCMON