Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP SQL Anywhere, on-demand edition 1.0 SP 6 » Cloud servers

Cloud server ports and port ranges

All cloud servers, including the cloud partners and cloud arbiters, use a single server port for each of the TCP/IP (Command Sequence and TDS), HTTP, and HTTPS protocols.

What are the default port ranges?

The default port ranges for the cloud are the same regardless of operating system. However, the default ports for the initial cloud partner depend on the operating system that you use and the user that you choose to run the cloud servers.

On Linux, you can run the servers on a host as the root or as a non-root user. If you choose to run as the root user, then the default ports for the initial cloud partner are the same as the default ports for Windows. If you choose to run as a non-root user, then the default ports are different from Windows.

Port type Default value for the initial cloud partner (Windows or Linux root user) Default value for the initial cloud partner (Linux non-root user) Default ranges for all hosts
TCP/IP 2638 2638 2638,40200-40220
HTTP 80 40800 80,40800-40820
HTTPS 443 40400 443,40400-40420

If you change the port ranges, choose ranges of less than 50 ports to prevent performance issues. Both cloud partners and the cloud arbiter should use the default TCP/IP port 2638. If any server uses a TCP/IP, HTTP, or HTTPS port other than 2638, 80, or 443, respectively, then the client HOST connection parameter or the HTTP/HTTPS URL must specify the port using the format host-address:port.

Do the ports for the cloud partners and cloud arbiter change?

No, the ports for the cloud partners and cloud arbiter are fixed and are always known.

When you configure your cloud partners and cloud arbiter, the ports are set and remain the same for the life of the cloud partner. Specifying unavailable ports for these three servers prevents the cloud from starting and running properly.

When you convert a cloud server to a cloud partner, the cloud partner uses the TCP/IP, HTTP, and HTTPS ports that the server was using before it was converted. Similarly, when you set a cloud arbiter, the arbiter uses the three ports that the server was using before it was set.

For example, if a cloud server running on TCP/IP port 2638, HTTP port 80, and HTTPS port 443 is converted to a cloud partner, this cloud partner always uses TCP/IP port 2638, HTTP port 80, and HTTPS port 443.

Do the ports for cloud servers other than the cloud partners and cloud arbiter change?
  • Yes.

    By default, when you create a cloud server, the cloud server is assigned ports for each protocol from the port ranges for the host. When a cloud server restarts, it is again assigned ports from the port ranges for the host.

  • No.

    To guarantee that a cloud server always uses the same ports, use static ports for the cloud server. You can specify static ports for each protocol when you create a cloud server or when you edit a cloud server's ports. When a cloud server that has static ports is started, the cloud server attempts to reconnect to its ports. If the ports are not available, the cloud server does not start. Specifying the ports for a cloud server is useful for creating dedicated connection servers for client applications.

How are ports assigned to cloud servers?

When you run the Cloud Initialization utility, you specify the ports for the first cloud partner to use. The cloud partner uses these ports for the life of the partner. In addition, the cloud is assigned default port ranges. By default, when you add a host to the cloud, it is assigned the cloud port ranges unless you specify otherwise when creating the host installer. When you create a server, you can either accept the host port ranges or you can specify static ports to use. You can edit the ports of a server by editing the server properties.

How can I change ports and port ranges?

You can specify ports in multiple ways.

  • When you run the Cloud Initialization utility (dbcloudinit), you can specify the port to use for each protocol for the initial cloud partner. As part of the initialization, the cloud is assigned default port ranges.

  • You can edit the cloud default port ranges by editing the cloud properties. By default, the cloud port ranges become the default port ranges that are assigned to new hosts.

  • When you create a host install, you can edit the port ranges for the cloud servers on that host to use.

  • You can edit the host ports and ranges by editing the host properties.

  • When you create a cloud server, you can assign specific ports for the cloud server to use.

  • You can edit server ports by editing the cloud server properties.

What happens to the cloud server ports when I change a host port range?

When you change the port range of a host, all cloud servers that do not have static ports use ports from the new range. Only cloud servers with static ports continue to use the same ports, even if their port numbers do not belong to the current port ranges of their host.

Do I need to configure my firewall(s) to accommodate the ports?

Yes. If any host has a firewall running, configure the firewall to accept incoming and outgoing connections from the specified port range. Otherwise, your cloud may not work properly.

If your firewall blocks incoming connections by application, configure your firewall to allow connections to the dbsrv17 executable. Additionally, if your firewall blocks outgoing connections by application, configure your firewall to allow outgoing connections from all cloud executables.