What is the SGC Stack Command-Line Console?
The SGC Stack Command-Line Management Console is a CLI tool working in interactive and non-interactive mode to manage and configure the SGC Stack cluster. The Command-Line Console uses JMX Beans exposed by the SGC Stack to manage cluster configuration. The command syntax is based on ITU-T MML Recommendations Z.315 and Z.316.
Installation and requirements
Command-Line Console installation requires unpacking the tar.gz archive file in any location. Unpacked, the folder structure is:
File/Directory | Description |
---|---|
|
SGC CLI installation directory |
|
logging configuration and CLI settings file |
|
Java libraries used by SGC CLI. |
|
log file |
|
CLI start-up script |
JAVA_HOME
The SGC CLI start-up script expects the |
Working with the SGC CLI
The SGC CLI should be started by executing the sgc-cli.sh
script. Default connection settings point to the SGC JMX Server exposed at:
host: 127.0.0.1 port: 50111
Here is an example of starting the CLI with the default IP and port:
./sgc-cli.sh
Here is an example of starting the CLI with an alternative IP and port setup:
./sgc-cli.sh -h 192.168.1.100 -p 50101
The SGC CLI supports other configuration parameters, which you can display by executing the startup script with the -?
or --help
options:
usage: sgc-cli.sh [-?] [-b <FILE>] [-h <HOST>] [-P <PASSWORD>] [-p <PORT>] [-stopOnError <true/false>] [-U <USER>] [-x <FILE>] +-----------------------------Options list-----------------------------+ -?,--help Displays usage -b,--batch <FILE> Batch file -h,--host <HOST> JMX server user -P,--pass <PASSWORD> JMX password -p,--port <PORT> JMX server port -ssl,--ssl <true/false> JMX connection SSL enabled -stopOnError,--stopOnError <true/false> Stop when any error occurs in batch command -U,--user <USER> JMX user -x,--export <FILE> File where the configuration dump will be saved +----------------------------------------------------------------------+
Enabling secured JMX server connection
CLI supports secured JMX server connection through the SSL protocol (SSL). It can be enabled in two ways:
-
by specifying the
ssl=true
property inconf/cli.properties
, -
by adding the configuration parameter
-ssl true
to the start script.
The configuration parameter value takes precedence over the value defined in conf/cli.properties .
|
The SSL connection (in both cases) also requires specifying additional properties in the conf/cli.properties
file, for the trustStore, keyStore
password and location. Below is a sample configuration:
####################### ###SSL configuration### ####################### #File location relative to conf folder javax.net.ssl.keyStore=sgc-client.keystore javax.net.ssl.keyStorePassword=changeit #File location relative to conf folder javax.net.ssl.trustStore=sgc-client.keystore javax.net.ssl.trustStorePassword=changeit
Basic command format
The command syntax is based on ITU-T MML Recommendations Z.315 and Z.316:
command: [parameter-name1=parameter-value1][,parameter-name2=value2]…;
Where:
-
command
is the name of the command to be executed -
parameter-name
is the name of command parameter -
parameter-value
is the value of the command parameter.
Command parameters are separated by commas ( When specifying a command with no parameters, the colon ( The ending semicolon ( |
MML syntax auto-completing
The CLI supports MML syntax auto-completing on the command name and command parameters level. Pressing the <TAB> key after the prompt will display all available command names:
SGC[127.0.0.1:50111]><TAB_PRESSED> batch clear-active-alarm clear-all-alarms create-as create-as-connection create-as-precond create-conn-ip create-connection create-cpc create-dpc create-inbound-gtt create-local-endpoint create-local-endpoint-ip create-node create-outbound-gt create-outbound-gtt create-replace-gt create-route create-snmp-node create-target-address create-usm-user disable-as disable-connection disable-local-endpoint disable-node disable-snmp-node display-active-alarm display-as display-as-connection display-as-precond display-conn-ip display-connection display-cpc display-dpc display-event-history display-inbound-gtt display-info-asinfo display-info-associationinfo display-info-dpcinfo display-info-healthinfo display-info-localssninfo display-info-ogtinfo display-info-opcinfo display-info-remotessninfo display-info-tcapconninfo display-local-endpoint display-local-endpoint-ip display-node display-outbound-gt display-outbound-gtt display-parameters display-replace-gt display-route display-snmp-node display-target-address display-usm-user enable-as enable-connection enable-local-endpoint enable-node enable-snmp-node exit export help modify-as modify-as-connection modify-connection modify-dpc modify-inbound-gtt modify-local-endpoint modify-node modify-outbound-gt modify-outbound-gtt modify-parameters modify-replace-gt modify-snmp-node modify-target-address modify-usm-user remove-as remove-as-connection remove-as-precond remove-conn-ip remove-connection remove-cpc remove-dpc remove-inbound-gtt remove-local-endpoint remove-local-endpoint-ip remove-node remove-outbound-gt remove-outbound-gtt remove-replace-gt remove-route remove-snmp-node remove-target-address remove-usm-user SGC[127.0.0.1:50111]>
When you press the <TAB> key after providing a command name, the CLI displays all available parameters for that command.
Pressing <TAB> after providing command parameters displays legal values (for enumeration, reference, and boolean parameters). For example:
SGC[127.0.0.1:50111]> modify-connection: <TAB_PRESSED> oname=A-CONN-1 oname=B-CONN-1 SGC[127.0.0.1:50111]> modify-connection: oname=
Help mode
You can access the SGC CLI’s built in help system by either:
-
executing the command
help: topic=topicName
-
switching to help mode, by executing the manual
help
command (with no parameters).
Help mode displays topics that you can access. (Alternatively, you can press the <TAB> to display available values of a topic command parameter. The list of available topics in manual help mode looks like this:
SGC[127.0.0.1:50111]> help Executing help manual... Use <TAB> to show topic list. Write 'topic name' to see its description. Use exit command if you want to quit the manual. Hint: 'create-, display-, remove-, modify-, enable-, disable-' operations are described by single topic for given MBean name. Available topics: as as-connection as-precond batch clear-active-alarm clear-all-alarms conn-ip connection cpc display-active-alarm display-event-history display-info-asinfo display-info-associationinfo display-info-dpcinfo display-info-healthinfo display-info-localssninfo display-info-ogtinfo display-info-opcinfo display-info-remotessninfo display-info-tcapconninfo dpc exit export help inbound-gtt local-endpoint local-endpoint-ip node outbound-gt outbound-gtt parameters replace-gt route snmp-node target-address usm-user help>
The result of executing a help topic command looks like this:
SGC[127.0.0.1:50111]> help: topic=<TAB_PRESSED> topic=as topic=as-connection topic=as-precond topic=batch topic=clear-active-alarm topic=clear-all-alarms topic=conn-ip topic=connection topic=cpc topic=display-active-alarm topic=display-event-history topic=display-info-asinfo topic=display-info-associationinfo topic=display-info-dpcinfo topic=display-info-healthinfo topic=display-info-localssninfo topic=display-info-ogtinfo topic=display-info-opcinfo topic=display-info-remotessninfo topic=display-info-tcapconninfo topic=dpc topic=exit topic=export topic=help topic=inbound-gtt topic=local-endpoint topic=local-endpoint-ip topic=node topic=outbound-gt topic=outbound-gtt topic=parameters topic=replace-gt topic=route topic=snmp-node topic=target-address topic=usm-user SGC[127.0.0.1:50111]> help: topic=conn-ip; Configuration of IPs for "connection", to make use of SCTP multi-homed feature define multiple IPs for single "connection". Object conn-ip is defined by the following parameters: oname: object name ip: IP address conn-name: Name of the referenced connection Supported operations on conn-ip are listed below ({param=x} - mandatory parameter, [param=x] - optional parameter): display-conn-ip: [oname=x],[column=x]; create-conn-ip: {oname=x}, {ip=x}, {conn-name=x}; remove-conn-ip: {oname=x}; SGC[127.0.0.1:50111]>
Interactive mode
By default, the CLI starts in interactive mode, which lets the System Administrator execute commands and observe their results through the system terminal. For example, here’s a successfully executed command:
SGC[127.0.0.1:50111]> display-info-healthinfo: ; Found 1 object(s): +---------------+---------------+----------+----------+---------------+---------------+---------------+----------+----------+ |contextExecutio|contextExecutio|allocatedR|allocatedI|workerExecution|workerExecution|nodeId |executorQu|workerGrou| |nTime |nCount |eqTasks |ndTasks |Time |Count | |eueSize |pSize | +---------------+---------------+----------+----------+---------------+---------------+---------------+----------+----------+ |0 |0 |0 |0 |0 |0 |CL1-N1 |0 |32 | +---------------+---------------+----------+----------+---------------+---------------+---------------+----------+----------+ SGC[127.0.0.1:50111]>
Here’s an example of a command that failed:
SGC[127.0.0.1:50111]> remove-conn-ip: oname=invalidName; ERROR REMOVE_OBJECT_FAILED: Instance 'SGC:category=conn-ip,type=m3ua,id=invalidName' doesn't exist. SGC[127.0.0.1:50111]>
Command result truncation
CLI supports the truncation of command result (cell data) to make the output more convenient (In case of large cell data). This configuration property is defined in the conf/cli.properties
file. Following is the property:
table.format.maxCellContentLength=40
See also
Supported CLI Operations
|