Managing Services

Clients and management users access the services available on the Solace Messaging Platform through TCP service ports on a Solace router.

Solace routers support the following services:

  • Solace Message Format (SMF)—This service allows clients to communicate with a router on the Message Backbone interface.
  • Solace Element Management Protocol (SEMP)—This service allows management applications to communicate with a router on the Management interface.
  • Web transport—This service allows Web clients to communicate with a router.
  • Solace Representational State Transfer (REST)—This service allows REST clients to communicate with a router using standard HTTP requests.
  • Message Queuing Telemetry Transport (MQTT)—This service allows clients to communicate with a router using the MQTT messaging protocol.
  • Advanced Message Queuing Protocol (AMQP)—This service allows AMQP clients to communicate with a router using the AMQP open standard application layer protocol.

NOTICE: Config-Sync will not automatically synchronize services. Therefore, if the router is being used in a high-availability (HA) redundant deployment or in a replicated site, you must manually configure services on each mate router or replicated Message VPN.

To determine whether an object/property is Config-Syncʼed, look up the command used to configure the object/property in the Command Line Interface Reference, or, in the Solace CLI end the command with “?”. The Help will list whether the object/property is Config-Syncʼed.

Managing SMF Service

At the system-level, you can configure a listen port for SMF service and enable/disable SMF service on all Message VPNs on the router. You can also configure SMF events and event thresholds.

Setting SMF Listen Ports

To configure the TCP port number that SMF clients use when connecting to the router, enter the following commands:

solace(configure)# service smf

solace(configure/service/smf)# listen-port <port> {[compressed] [routing-control] [ssl]}

Where:

<port> specifies the TCP port number that SMF clients use when connecting to the router. The default value is 55555.

compressed specifies the port to connect to for exchanging compressed messages.

routing-control specifies the port to connect to for exchanging inter-node routing control messages. Note that Inter-node routing control messages cannot run over the compressed port. Therefore, you cannot specify compressed along with routing-control.

ssl specifies the port to connect to for exchanging Transport Layer Security (TLS)/ Secure Sockets Layer (SSL) traffic.

Note:   

  • You must shutdown SMF services on the router before setting the SMF listen ports, otherwise an error message is received.
  • The no versions of this command do the following:
    • no listen-port resets the port to the default value of 55555
    • no listen-port compressed resets the port to the default value of 55003
    • no listen-port routing-control resets the port to the default value of 55556
    • no listen-port ssl resets the port to the default value of 443

Enabling System-Level SMF Service

Alert ! Disabling SMF service at the system-level will disconnect all client and router connections to the router. Therefore, it is recommended that if you need to stop SMF service on the router, you do so when the service disruption will have the least impact. Also, to avoid such a large service interruption, you can optionally disable SMF service only on specific Message VPNs (see Configuring SMF Service).

By default, SMF services are enabled on both Solace appliances and VMRs.

  • To enable SMF service on the router, enter the following commands:

    solace(configure)# service smf

    solace(configure/service/smf)# no shutdown

  • To disable SMF services on the router, enter the following commands:

    solace(configure)# service smf

    solace(configure/service/smf)# shutdown

Configuring SMF Events

You can optionally configure the set and clear thresholds at which system-level events are generated for a number or percentage of simultaneous SMF client connections. For information on how system-level service events can be generated and how to set the event thresholds for them, see Configuring System Event Thresholds.

Managing SEMP Service

At the system-level, you can configure a listen port for SEMP service and enable/disable SEMP service on a Solace router.

Setting a SEMP Listen Port

To configure the TCP port number for SEMP clients to use when connecting to a router, enter the following commands:

solace(configure)# service semp

solace(configure/service/semp)# listen-port <port> [ssl]

Where:

<port> specifies the TCP port number to use for a SEMP connection to the router. The default value for plain text connections is 80.

ssl specifies the port number is for TLS/SSL-encrypted connections. The default value TLS/SSL connections is 443.

Note:   

  • You must first shutdown SEMP service on the router before you can set a SEMP listen port.
  • The no versions of this command do the following:
    • no listen-port resets the port to the default value for plain text connections
    • no listen-port ssl resets the port to the default value for TLS/SSL connections

Enabling System-Level SEMP Service

Alert ! Shutting down SEMP service at the system-level will cause a disruption in management service when run since it disconnects all SEMP and SolAdmin connections from the router. Therefore, it is recommended that if you need to stop SEMP service on the router, you do so when the service disruption will least impact to clients.

  • To enable SEMP services on the router, enter the following command:

    solace(configure/service/semp)# no shutdown

  • To disable SEMP services on the router, enter the following command:

    solace(configure/service/semp)# shutdown

Managing REST Service

Solace routers can support REST clients. At the system-level, you can enable or disable REST incoming and/or outgoing connections to the router. You can also configure REST events and event thresholds.

Alert ! Shutting down REST service at the system-level will disconnect all REST clients from the router and new clients will not be able to connect. Therefore, it is recommended that if you need to stop REST service on the router, you do so when the service disruption will least impact clients.

Enabling Incoming REST Connections

By default, service for incoming REST service connections is not running on a Solace router.

  • To enable incoming REST service connections on the router, enter the following commands:

    solace(configure)# service rest

    solace(configure/service/rest)# incoming

    solace(configure/service/rest/incoming)# no shutdown

  • To disable incoming REST service connections on the router, enter the following commands:

    solace(configure)# service rest

    solace(configure/service/rest)# incoming

    solace(configure/service/rest/incoming)# shutdown

Enabling Outgoing REST Connections

By default, service for outgoing REST service connections is not running on a Solace router.

  • To enable outgoing REST service connections on the router, enter the following commands:

    solace(configure)# service rest

    solace(configure/service/rest)# outgoing

    solace(configure/service/rest/outgoing)# no shutdown

  • To disable outgoing REST service connections on the router, enter the following commands:

    solace(configure)# service rest

    solace(configure/service/rest)# outgoing

    solace(configure/service/rest/outgoing)# shutdown

Configuring REST Events

For information on configuring REST client event thresholds, see Configuring REST Outgoing Service Event Thresholds.

Managing Web Transport Service

At the system-level, you can configure a listen port for Web Transport service, specify the Web URL suffixes, and enable/disable Web Transport service on all Message VPNs on a Solace router.

Setting Web Transport Listen Ports

To configure the TCP port number for Web clients to use when connecting to the router, enter the following commands:

solace(configure)# service web-transport

solace(configure/service/web-transport)# listen-port <port> [ssl]

Where:

<port> specifies the TCP port number that Web clients use when connecting to the router. The default value is 80.

ssl specifies the port to connect to for exchanging TLS/SSL traffic. The default value is 443.

Note:   

  • You must first shutdown Web Transport services on the router before setting the Web Transport listen ports.
  • The no versions of this command do the following:
    • no listen-port resets the port to the default value of 80
    • no listen-port ssl resets the port to the default value of 443

Enabling System-Level Web Transport Service

Alert ! Shutting down Web transport service at the system-level will disconnect all Web transport clients from the router and new clients will not be able to connect. Therefore, it is recommended that if you need to stop Web transport service on the router, you do so when the service disruption will least impact clients. Also, to avoid such a large service interruption, you can optionally disable Web transport service only on specific Message VPNs (see Configuring Web Transport Service).

By default, Web Transport service is not running on a Solace router.

  • To start Web transport service on the router, enter the following commands:

    solace(configure)# service web-transport

    solace(configure/service/web-transport)# no shutdown

  • To stop Web transport service on the router, enter the following commands:

    solace(configure)# service web-transport

    solace(configure/service/web-transport)# shutdown

Note:   

  • By default, Web transport service on a Solace appliance is locked. You must have a valid product key supplied by Solace to unlock Web Transport service on a router. (For more information, see Managing Appliance Product Keys.)
  • To enable Web transport clients to connect to the router, you must start SMF services on the router because Web transport clients are also considered to be SMF clients. (For more information, see Enabling System-Level SMF Service.)

Specifying Web URL Suffixes

You can set the Web URL suffix that Web clients will receive from the router when they login, and then use when communicating with the Solace router (for example, for the purpose of load balancing client sessions).

To specify a Web URL suffix, you must shutdown Web Transport services on the router, and then enter the following commands:

solace(configure)# service web-transport

solace(configure/service/web-transport)# web-url-suffix <suffix>

Where:

<suffix> specifies the text for a Solace Messaging Application Programming Interface (API) to append to the Web URL when communicating with the router. This text can contain up to 127 alphanumeric characters and should be unique among all created Web URL suffixes.

Note:   

  • For more information on session load balancing and use of URLs, see Web Messaging Overview.
  • The no version of this command (no web-url-suffix) resets the Web URL suffix to the default value of empty string (that is, “ ”).

Managing MQTT Service

You can enable or disable MQTT service at the system-level on Solace routers.

Enabling System-Level MQTT Service

You can globally enable/disable MQTT service for a router. By default, MQTT service is not enabled.

Alert! If you disable MQTT service at the system level, you will disconnect all clients currently connected to any MQTT service-enabled Message VPNs on the router and new clients will not be able to connect. Therefore, it is recommended that if you need to stop MQTT service on the router, you do so when the service disruption will the least impact. Also, to avoid such a large service interruption, you can optionally disable MQTT service only on specific Message VPNs (see Enabling/Disabling MQTT Connections).

  • To enable MQTT service on the router, enter the following commands:

    solace(configure)# service mqtt

    solace(configure/service/mqtt)# shutdown

  • To disable MQTT service on the router, enter the following commands:

    solace(configure)# service mqtt

    solace(configure/service/mqtt)# no shutdown

Managing AMQP Service

Solace routers offers service to support AMQP clients. At the system-level, you can enable or disable AMQP service on the router.

Enabling System-Level AMQP Service

You can enable or disable AMQP service at the system-level on Solace routers.

Alert! If you disable AMQP service at the system level, you will disconnect all clients currently connected to any AMQP service-enabled Message VPNs on the router. To avoid such a large service interruption, you can disable AMQP service only on specific Message VPNs (see Enable/Disable AMQP Service for VPNs).

  • To enable AMQP service for the router, enter the following commands:

    solace(configure)# service amqp

    solace(configure/service/amqp)# no shutdown

  • To disable AMQP service for the router, enter the following commands:

    solace(configure)# service amqp

    solace(configure/service/amqp)# shutdown

Enabling All Messaging Services

The Solace router Message Backbone is a Virtual Routing and Forwarding (VRF) object that contains all Solace router interfaces (physical, LAG, and IP), and transports message and topic subscription traffic between client applications and the virtual routers on the Solace router.

The message backbone acts as a global switch that enables or disables all messaging services at the global level. Disabling the message backbone disables all messaging services until the message backbone is re-enabled.

Services that are disabled using the message backbone switch will retain their individually configured states when the message backbone is re-enabled. For example, if Web transport service is in a disabled state when the message backbone is disabled, Web transport service will remain disabled when the message backbone is re-enabled.

NOTICE: Config-Sync will not automatically synchronize this object/property. Therefore, if the router is being used in a high-availability (HA) redundant configuration or in a replicated site, you must manually configure this object/property on each mate router or replicated Message VPN.

To determine whether an object/property is Config-Syncʼed, look up the command used to configure the object/property in the Command Line Interface Reference, or, in the Solace CLI, end the command with “?”. The Help will list whether the object/property is Config-Syncʼed.

To shutdown the message backbone to disable all messaging services at a global level, enter the following commands:

solace(configure)# service msg-backbone shutdown

All clients will be disconnected.

Do you want to continue (y/n)? y

Note:  The no version of this command (no msg-backbone shutdown) globally enables messaging service. Services that were disabled before the message backbone was shutdown will remain disabled when this command is run.

Managing Service Event Thresholds

To configure the thresholds that define when system‑level events are generated for the number of simultaneous client connections to the router, enter the following command:

solace(configure)# service event

The CLI is now at a level at which you can configure the set and clear event thresholds at which system-level events are generated for the number of simultaneous client connections. These thresholds are set according to the service type used (for example, SMF, Web Transport, REST). For more information, see Configuring System Event Thresholds.