System Administration
System Configuration
Manage the Network Configuration of an Ocient System
control the grouping of sql nodes in an {{ocient}} system by managing network traffic using connectivity pools for advanced configuration, you can expand a connectivity pool by the number of nodes or you can change the network configuration of the system sql nodes belong to connectivity pools a connectivity pool is a pool of potential sql nodes for client connection the pool contains all the required information to connect to a node in that pool for a description of the metadata of a connectivity pool, see the cluster and node management docid\ xga0pas8wadtq33 a x7v statement all sql nodes in the system must belong to a connectivity pool if you do not configure the connectivity pools during bootstrapping, the ocient system assigns each sql node to its own connectivity pool named with the node name concatenated by default for example, for the node named sql0 , the system creates a connectivity pool named sql0 default for bootstrapping the ocient system, see ocient system bootstrapping docid 4005nflvguw4fqfqa1spu connectivity pool considerations for different networks, you can connect a sql node to multiple networks at the same time connectivity pools enable each sql node to specify the ip address and port number for listening in each network connectivity pools assume that the ip address for each sql node remains static they do not support dynamic ip addresses if the ip address of your sql node changes, you must manually update it by using an cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement you can direct network traffic to groups of sql nodes by creating connectivity pools with numerous nodes also, you can use connectivity pools to isolate sql nodes, which allows you to connect to a subset of nodes and redirect network traffic between them for example, you can configure the network so that the ocient system sends only certain sql queries to certain sql nodes you connect directly to sql nodes you must know the correct connection information to the sql node related to the connectivity pool where you want to create the connection sql nodes only listen to ip addresses and port numbers for the connectivity pools associated with the sql nodes each node can have multiple connectivity pools assigned to it assign different ip addresses to sql nodes based on the network (e g , vpn, internal network) you can configure the configuration to reflect your network whether the network is on site, a virtual public cloud, or a remote network connectivity pools can use the same ip addresses and port numbers across pools a pool can also use the ip address of the source client connection to distribute the sql queries in the case where the sql node connection information matches multiple connectivity pools when you connect to a sql node using a specific ip address, the node finds all connectivity pools associated with that ip address the sql node then identifies all the other nodes in the connectivity pool and uses that set of nodes as a redirect group to distribute the sql query when a sql node matches multiple pools by the ip address and port number combination, the node uses the source connection information (or the information you used to connect) to find a more relevant connectivity pool the sql node uses the chosen connectivity pool to redirect sql queries to the group of nodes initial configuration setup for the initial configuration, a common ocient system configuration has all sql nodes in one connectivity pool however, you can structure the network of nodes based on your initial needs you can change your initial configuration setup later as your needs change create your initial configuration of the network using the see the cluster and node management docid\ xga0pas8wadtq33 a x7v statement or specify the configuration in the bootstrap conf file for details about the bootstrap conf file, see node bootstrapping reference docid\ wztcsct8uijhzzx mhl0k if you do not specify the configuration of the sql nodes during the initial ocient system setup, the system assigns nodes to default connectivity pools in this case, each node always has a connectivity pool that isolates the node a common ocient system configuration has all nodes in one connectivity pool thus, you can create a new connectivity pool using the create connectivity pool statement to add all nodes in the network to it then, remove all the default pools using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement for advanced configuration, you can expand the connectivity or change the network configuration of the system expand the network of an ocient system you can expand the connectivity pool of an ocient system by adding sql nodes then, remove the automatically generated connectivity pool that is no longer needed for example, with an ocient system that has sql nodes sql0 , sql1 , and sq3 in the connectivity pool named test pool , add a new sql node sql4 to the pool that belongs to the default pool named sql0 default the nodes have the ip address 111 1 1 1 and port number 4050 for listening specify the local ip address and port number 4050 to return to the client alter connectivity pool test pool add participants( (node sql4 listen address '111 1 1 1' listen port 4050 advertised address 'localhost' advertised port 4050)); remove the default connectivity pool sql0 default drop connectivity pool if exists sql0 default; change the network configuration of an ocient system you can configure ip addresses that the ocient system uses to connect to the external client or to other nodes in the system configure ip addresses for external client connections using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement configure ip addresses for connections with other nodes in the system using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement if you add a new sql node to an existing ocient system, configure a new system, or add a sql role using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement, you must configure the connectivity pools using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statements if you add a sql node to any connectivity pool, then you must remove the default connectivity pool where the node previously belonged using the cluster and node management docid\ xga0pas8wadtq33 a x7v sql statement connectivity pool troubleshooting when you experience issues with connection to the configured connectivity pools, you have two ways to manipulate the network configuration temporarily to address the issues you can use the rolehostd conf file when you cannot establish the connection using the connectivity pool, you can use this configuration in the rolehostd conf file to correct the configuration of the sql nodes this configuration specifies that nodes listen using the ip address 0 0 0 0 and port number 4050 to enable recovery sql defaultlisten true you must restart the rolehostd process after you add this configuration sudo systemctl restart rolehostd or, you can change the ip address of the sql nodes in the connectivity pool for existing clusters, the ocient system configures all sql nodes to listen to the ip address 0 0 0 0 , which allows client connections to manually create the initial connectivity pools related links install an ocient system docid\ ohaih2 yvgdxfvej8iu w ocient system bootstrapping docid 4005nflvguw4fqfqa1spu node bootstrapping reference docid\ wztcsct8uijhzzx mhl0k cluster and node management docid\ xga0pas8wadtq33 a x7v cluster and node management docid\ xga0pas8wadtq33 a x7v cluster and node management docid\ xga0pas8wadtq33 a x7v cluster and node management docid\ xga0pas8wadtq33 a x7v