Configuring ports in stand-alone mode

You can configure the necessary ports for servers and clients in an eXtreme scale deployment by using command-line parameters, property files or programmatically. Most examples included in the following sections describe command-line parameters to the startOgServer [Version 8.6 and later]or startXsServer script. Equivalent configuration options can also be set in properties files, using the embedded server API or the client API.

Procedure

  1. Start catalog service endpoints.

    WebSphere® eXtreme Scale uses IIOP to communicate between Java™ virtual machines. The catalog service JVMs are the only processes that require the explicit configuration of ports for the IIOP services and group services ports. Other processes dynamically allocate ports.

    1. Specify client and peer ports.
      The client port and peer port are used for communication between catalog services in a catalog service domain. To specify the client port and peer port, use the following command-line option:
      -catalogServiceEndPoints <serverName:hostName:clientPort:peerPort>
      Specifies a list of catalog servers to link together into a catalog service domain. Each attribute is defined as follows:
      serverName
      Specifies the name of the catalog server.
      hostName
      Specifies the host name for the computer where the server is launched.
      clientPort
      Specifies the port that is used for peer catalog service communication.
      peerPort
      This value is the same as the haManagerPort. Specifies the port that is used for peer catalog service communication.
      The following example starts the cs1 catalog server, which is in the same catalog service domain as the cs2 and cs3 servers:
      startOgServer.bat|sh cs1 -catalogServiceEndPoints 
      cs1:MyServer1.company.com:6601:6602,cs2:MyServer2.company.com:6601:6602,cs3:MyServer3.company.com:6601:6602
      If you start additional catalog servers, they must include the same servers in the -catalogServiceEndPoints argument. The order of the list can be different, but the servers contained in the list must be the same for each catalog server. Do not put any spaces in the list.
      You can also set the catalog service end points with the catalogClusterEndPoints server property.
    2. Set the listener host and port.
      The listener port is used for communication between catalog services in a catalog service domain, and for communication between catalog services and container servers and clients. To specify the listener port and listener host, use the following command-line options:
      -listenerHost <host name>

      Specifies the host name to which the Object Request Broker (ORB) or eXtremeIO (XIO) transport protocol binds for communication. The value must be a fully qualified domain name or IP address. If your configuration involves multiple network cards, set the listener host and port to the IP address for which to bind. By setting the listener and host port, it allows the transport mechanism in the JVM know which IP address to use. If you do not specify which IP address to use, symptoms such as connection timeouts, unusual API failures, and clients that seem to hang can occur.

      Default: localhost
      -listenerPort <port>
      Specifies the port number to which the ORB or the XIO transport protocol binds for communication. The port number that is defined for listenerPort is used for bidirectional communication between a client and a container server that are in the same domain. It is also used for communication between a catalog server and a container server that are in the same domain. This port is also used for intra-domain replication between primary and replica shards, and inter-domain replication between primary shards.Default: 2809

      You can also set the listener port and listener host with the listenerHost and listenerPort server properties.

    3. Optional: Set the JMX service port.

      The JMX service port is used for communication from JMX clients. To specify the JMX service port, use the following command-line option:

      -JMXServicePort <port>
      Required only for WebSphere eXtreme Scale in a stand-alone environment. Specifies the port number on which the MBean server listens for communication with Java Management Extensions (JMX).

      Default: 1099 for catalog servers

      You can also set the JMX service port with the JMXServicePort server property.

    4. Optional: Set the JMX connector port.

      The JMX connector port is used for communication from JMX clients. To specify the JMX connector port, use the following command-line option:

      -JMXConnectorPort <port>
      Defines the Secure Sockets Layer (SSL) port to which the Java Management Extensions (JMX) service binds. Only required if an SSL transport protocol is needed for JMX data.

      You can also set the JMX connector port with the JMXConnectorPort server property.

    5. Set the Secure Socket Layer (SSL) port.
      When security is enabled, an SSL port is also required. To specify the SSL port, use the following command-line option:
      -jvmArgs -Dcom.ibm.CSI.SSLPort=<sslPort>
    Figure 1. Example using the command line. Start the first catalog server on hostA.

    If you want to use the Object Request Broker as your transport mechanism, use the startOgServer command to start the server. If you want to use IBM® eXtremeIO as your transport mechanism, use the startXsServer command to start the server. For more information about transports, see Configuring transports.

    An example of the command follows:

    ./startOgServer.sh cs1 -listenerHost hostA -listenerPort 2809
    -catalogServiceEndPoints cs1:hostA:6601:6611,cs2:hostB:6601:6611
    ./startXsServer.sh cs1 -listenerHost hostA -listenerPort 2809
    -catalogServiceEndPoints cs1:hostA:6601:6611,cs2:hostB:6601:6611
    Start the second catalog server on hostB. An example of the command follows:
    ./startOgServer.sh cs2 -listenerHost hostB -listenerPort 2809
    -catalogServiceEndPoints cs1:hostA:6601:6611,cs2:hostB:6601:6611
    ./startXsServer.sh cs2 -listenerHost hostB -listenerPort 2809
    -catalogServiceEndPoints cs1:hostA:6601:6611,cs2:hostB:6601:6611
  2. Start container server endpoints.

    If you want to use the Object Request Broker as your transport mechanism, use the startOgServer command to start the server. If you want to use IBM eXtremeIO as your transport mechanism, use the startXsServer command to start the server. For more information about transports, see Configuring transports.

    The following command starts a container server to use with the example catalog service:
    ./startOgServer.sh c0 -catalogServiceEndPoints hostA:2809,hostB:2809 
    [Version 8.6 and later]
    ./startXsServer.sh c0 -catalogServiceEndPoints hostA:2809,hostB:2809 

    The container server Java virtual machines use two ports. The HA manager port is used for internal communication between peer container servers and catalog servers. The listener port is used for IIOP communication between peer container servers, catalog servers, and clients. The listener host is used to bind the ORB to a specific network adapter. If you do not specify, both ports are dynamically selected. However, if you want to explicitly configure ports, such as in a firewall environment, you can use a command-line options to specify the ORB port.

    1. Specify the listener host and port.
      To specify the listener port and listener host, use the following command-line options:
      -listenerHost <host name>

      Specifies the host name to which the Object Request Broker (ORB) or eXtremeIO (XIO) transport protocol binds for communication. The value must be a fully qualified domain name or IP address. If your configuration involves multiple network cards, set the listener host and port to the IP address for which to bind. By setting the listener and host port, it allows the transport mechanism in the JVM know which IP address to use. If you do not specify which IP address to use, symptoms such as connection timeouts, unusual API failures, and clients that seem to hang can occur.

      Default: localhost
      -listenerPort <port>
      Specifies the port number to which the ORB or the XIO transport protocol binds for communication. The port number that is defined for listenerPort is used for bidirectional communication between a client and a container server that are in the same domain. It is also used for communication between a catalog server and a container server that are in the same domain. This port is also used for intra-domain replication between primary and replica shards, and inter-domain replication between primary shards.Default: 2809

      You can also set listener port and listener host with the listenerHost and listenerPort server properties.

    2. Specify the HA manager port.
      To specify the HA manager port, use the following command-line option:
      -haManagerPort <port>
      Specifies the port that is used by the high availability (HA) manager for heartbeat communication between peer container servers. The HAManagerPort port is only used for peer-to-peer communication between container servers that are in same domain. If the HAManagerPort property is not defined, then an ephemeral port is used. In WebSphere Application Server, this setting is inherited by the high availability manager port configuration.

      You can also set the HA manager port with the HAManagerPort server property.

    3. Optional: Specify the SSL port.
      When security is enabled, a Secure Socket Layer (SSL) port is also required. To specify the SSL port, use the following command-line option:
      -jvmArgs -Dcom.ibm.CSI.SSLPort=<sslPort>
    4. Optional: Specify the JMX service port.
      -JMXServicePort <port>
      Required only for WebSphere eXtreme Scale in a stand-alone environment. Specifies the port number on which the MBean server listens for communication with Java Management Extensions (JMX).

      Default: 1099 for catalog servers

      You can also set the JMX service port with the JMXServicePort server property.

    5. Optional: Set the JMX connector port.

      The JMX connector port is used for communication from JMX clients. To specify the JMX connector port, use the following command-line option:

      -JMXConnectorPort <port>
      Defines the Secure Sockets Layer (SSL) port to which the Java Management Extensions (JMX) service binds. Only required if an SSL transport protocol is needed for JMX data.

      You can also set the JMX connector port with the JMXConnectorPort server property.

  3. Start client endpoints.
    Clients must know the catalog service listener end points only. Clients retrieve end points for container server Java virtual machines, which are the Java virtual machines that hold the data, automatically from the catalog service. To connect to the catalog service in the previous example, the client must pass the following list of host:port pairs to the connect API:
    hostA:2809,hostB:2809

    The client can also receive callbacks from container servers when using the DataGrid API. These callbacks communicate using IIOP with the ORB listener port. To specify the port and network adapter to receive callbacks, set the listenerHost and listenerPort properties in the client properties file.

    When security is enabled, a Secure Socket Layer (SSL) port is also required. To specify the SSL port, use the following system property when starting the client process:
    -jvmArgs -Dcom.ibm.CSI.SSLPort=<sslPort>