Contents

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

One can configure replicated HA profile through changing Configs.cfg file (text based configuration) or through Studio. Following section describe these options.
Text based
Profiles can now be configured through a text based properties file. Profiles can be found under the %FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_rpl directory (say, PROFILE_HOME). In order to configure replicated HA profile, edit Configs.cfg file under %PROFILE_HOME%\HAPrimary\conf and %PROFILE_HOME%\HASecondary\conf.

The default entries in Configs.cfg file looks like:

ObjectName=Container

HA Common Properties.
#
#FMQGroup.BackupServerIp=localhost
#FMQGroup.BackupServerPort=1956
#FMQGroup.BackupHAPort=3000
#FMQGroup.BackupHAIPAddress=localhost
#FMQGroup.Port=2000
#FMQGroup.PingInterval=30000
#FMQGroup.LockFile=null
#FMQGroup.SocketCreationTimeout=10000
#FMQGroup.GatewayServerIPAddress=localhost
#FMQGroup.GatewayServerPort=7
In front of every parameter, its default values are given.

Take the scenario of running HAPrimary on a machine with IPAddress: 192.169.1.22 and HASecondary on a machine with IPAddress: 192.169.1.200. GatewayServer address is given as 192.169.1.16 which is present in the network. If LockFile, say Lock.dat, has been shared from third system and mounted to /home/fmq1 on 192.168.1.22 system and to /home/fmq2 on 192.168.1.200 system, then on Primary profile these parameters should takes following value:

ObjectName=Container

HA Common Properties.
#
FMQGroup.BackupServerIp=192.168.1.200
#FMQGroup.BackupServerPort=1956
#FMQGroup.BackupHAPort=3000
FMQGroup.BackupHAIPAddress=192.168.1.200
#FMQGroup.Port=2000
#FMQGroup.PingInterval=30000
FMQGroup.LockFile=/home/fmq1/Lock.dat
#FMQGroup.SocketCreationTimeout=10000
FMQGroup.GatewayServerIPAddress=192.168.1.16
#FMQGroup.GatewayServerPort=7
On Secondary profile these parameters should takes following value:
ObjectName=Container

HA Common Properties
#
FMQGroup.BackupServerIp=192.168.1.22
#FMQGroup.BackupServerPort=1856
FMQGroup.BackupHAIPAddress=192.168.1.22
#FMQGroup.BackupHAPort==2000
#FMQGroup.Port=3000
#FMQGroup.PingInterval=30000
FMQGroup.GatewayServerIPAddress=192.168.1.16
#FMQGroup.GatewayServerPort=7
FMQGroup.LockFile=/home/fmq2/Lock.dat
#FMQGroup.SocketCreationTimeout=10000
Modified Configs.cfg file need to be saved for both Primary and secondary profiles.
Studio

Anchor
DDE_LINK3
DDE_LINK3
Note: Here, %SELECTED_HA_PROFILE% refers to FioranoMQ_HA_rpl\HAPrimary or FioranoMQ_HA_rpl\HASecondary.
If replicated HA profile needs to be used, then open FioranoMQ_HA_rpl/HAPrimary and FioranoMQ_HA_rpl/HASecondary profile in Studio Profile Manager. Right-click on the profile and click on FMQ Replicated HA. The FMQ Replicated HA wizard appears.

...


Image Added

You can configure all the required values from the wizard. After configuring the wizard, right-click the node and select Save option from the pop-up menu

...


Image Added
The following properties are available in the FMQ HA replicated wizard.
BackupHAIPAddress
This IP represents the URL where another FioranoMQ HA server runs. In case this HA server fails then all the required synchronized data is present in backup HA server and HA layer connects to backup HA server.
BackupHAPort
This port represents the backup machine HA port on which another FioranoMQ Server runs.
Port
This port represents the FMQ Server HA port on which this HA Server runs.
LockFile
Full path of the file which will be used for determining the HA states. This file should be present in the third machine and always available to the HA servers with all permissions. The LockFile machine must be same as the machine whose IPAddress is given as GatewayServerIPAddress.
GatewayServerIPAddress
This value represents the IP address of third machine which is always present in the network. This value must not be the machine where one of the FioranoMQ servers runs.
GatewayServerPort
This value represents the port to which any of the HA Servers pings. This port must not be used for some other purpose.
ActiveLockAcquisitionInterval:
This parameter indicates the wait Interval between each attempt to acquire the lock for active server. This value should be in multiples of pingInterval/2 otherwise server may try to acquire the lock on the next multiple of pingInterval/2.
PassiveLockAcquisitionInterval:
This parameter indicates the wait Interval for the passive server to acquire the lock when the link between active and passive server is down. This value should be greater than '2*ActiveLockReacquisitionInterval', otherwise an exception will be thrown. Server won't start if this value is not set properly.
All IP addresses, ports should represent the correct values. Without modifying any of these values HAPrimary and HASecondary can run on a single machine.
Take the scenario of running HAPrimary on a machine with IPAddress: 192.169.1.22 and HASecondary on a machine with IPAddress: 192.169.1.200. Gatewayserver address is given as 192.169.1.16 which is present in the network. If LockFile, say Lock.dat, has been shared from the third system and mounted to /home/fmq1 on 192.168.1.22 system and to /home/fmq2 on 192.168.1.200 system, then HAPrimary wizard looks like:

...


Image Added

And HASecondary wizard looks like

...


Image Added

Anchor
_Toc370988015
_Toc370988015
4.1.2 Advanced configurations

Text based
Edit Configs.cfg file under:
%FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_rpl\HAPrimary\conf for HAPrimary and
%FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_rpl\HASecondary\conf for HASecondary

 

Port

 

Specify the Port on which HA Manager would listen for connection from the peer HA Server. Apart from the port that the HA Server uses to listen for connections from its clients, it must also listen for a connection from its HA Peer Server, in order to know the status of its peer.This parameter is used to specify that port.

 

Valid values:

 

Default value is 2000 for Primary and 3000 for secondary profile.

 

Note: The port must be not in use by any other services.

 

Configuration:

 

In Configs.cfg file this property can be found under HA common Properties. For example: #FMQGroup.Port=2000

 

 

User can change this value and for taking changes into effect uncomment the value, like- FMQGroup.Port=2500

NagleAlgo

 

Boolean determining whether Nagle's Algorithm is enabled or not in socket creation with peer HA Server. Nagle's algorithm is used in TCP/IP networks for congestion control. It works by coalescing a number of small outgoing messages, and sending them all at once. Specifically, as long as there is a sent packet for which the sender has received no acknowledgment, the sender should keep buffering its output until it has a full packet's worth of output, so that output can be sent all at once.

 

Valid values:

 

 

Default value is no

yes - NagleAlgo is enabled

no - NagleAlgo is not enabled

 

Configuration:

 

In Configs.cfg file this property can be found under HA Connection Manager Settings. For example:

 

#

Anchor
DDE_LINK6
DDE_LINK6
NagleAlgo=false

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

NagleAlgo=true

SocketInitializationTimeout

 

Time (in milliseconds) within any client socket should identify itself and able to exchange the version number with server. The version number exchange is an authentication mechanism that FioranoMQ employs.

 

Valid values:

 

Default value is 60000 (which is equal to a minute).

 

Configuration:

 

In Configs.cfg file this property can be found under HA Connection Manager Settings. For example:

 

#SocketInitializationTimeout=60000

 

 

User can change this value and for taking changes into effect uncomment the value, like- SocketInitializationTimeout=65000

Anchor
DDE_LINK7
DDE_LINK7
ActiveLockReAcquisitionInterval

 

This parameter indicates the wait Interval between each attempt to acquire the lock for active server. This value should be in multiples of pingInterval/2 otherwise server may try to acquire the lock on the next multiple of pingInterval/2. Default value for this parameter is 30000.

 

Configuration:

 

In Configs.cfg file this property can be found under HA Manager Settings. For example:

 

#ActiveLockReAcquisitionInterval=30000

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

ActiveLockReAcquisitionInterval=35000

PassiveLockReAcquisitionInterval

 

This parameter indicates the wait Interval for the passive server to acquire the lock when the link between active and passive server is down. This value should be greater than '2*ActiveLockReacquisitionInterval', otherwise an exception will be thrown. Server won't start if this value is not set properly. Default value for this parameter is 60000.

 

Configuration:

 

In Configs.cfg file this property can be found under HA Manager Settings. For example:

 

#PassiveLockAcquisitionInterval=60000

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

PassiveLockAcquisitionInterval=65000

PingInterval

 

This interval represents the duration after which HAServer pings the other HABackup server to find whether the server is running properly or not.

 

Configuration:

 

In Configs.cfg file this property can be found under HA Common Properties. For example:

 

#FMQGroup.PingInterval=30000

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

FMQGroup.PingInterval=35000

Anchor
DDE_LINK10
DDE_LINK10
BackupRMIServerPort

 

Port of backup server on which Mx4j RMIConnector server will bind.

 

Configuration:

 

In Configs.cfg file this property can be found under HA KRPC Provider Settings. For example:

 

#BackupRMIServerPort=1858

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

BackupRMIServerPort=1958

RMIServerPort

 

Port on which Mx4j RMIConnector server will bind.

 

Configuration:

 

In Configs.cfg file this property can be found under RMI Connector Settings. For example:

 

#

Anchor
DDE_LINK8
DDE_LINK8
RMIServerPort=1859

 

User can change this value and for taking changes into effect uncomment the value, like-

 

 

RMIServerPort=1959

MaxWaitTimeout

 

Whenever an owning server realizes that there has been a change in its peer server's state, it must handle the change in its peer state by changing its state appropriately. While the owning server is changing state it starts a timer. If for some reason the state change is unable to complete after a reasonable amount of time then the owning server must realize that.This parameter specifies the maximum waiting timeout in milliseconds for which the local server should wait for state transition to complete.

 

Configuration:

 

In Configs.cfg file this property can be found under HA Manager Settings. For example:

 

#MaxWaitTimeout=30000

 

User can change this value and for taking changes into effect uncomment the value, like-

 

MaxWaitTimeout=35000

 

Studio

 

 

Anchor
DDE_LINK17
DDE_LINK17
All the properties listed in this section are described in text based configuration.

Port

 

This property can be found under:

 

 

Fiorano->HA->HAConnectionManager->FioranoHAConnectionManager->config through studio.

NagleAlgo

 

This property can be found under:

 

 

Fiorano->HA->HAConnectionManager->FioranoHAConnectionManager->config through studio.

Anchor
DDE_LINK4
DDE_LINK4
SocketInitializationTimeout

Anchor
DDE_LINK9
DDE_LINK9
This property can be found under:


Fiorano ->HA->HAConnectionManager->FioranoHAConnectionManager->config > HA > HAConnectionManager > FioranoHAConnectionManager > config through studio.
Image Removed
Image Added
Figure: Configuring Port, NagleAlgo and SocketInitializationTimeout parameters from studio

ActiveLockReAcquisitionInterval

Anchor
DDE_LINK11
DDE_LINK11
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.

PassiveLockReAcquisitionInterval

Anchor
DDE_LINK12
DDE_LINK12
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.

PingInterval

Anchor
DDE_LINK13
DDE_LINK13
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.

MaxWaitTimeout

Anchor
DDE_LINK15
DDE_LINK15
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio. Image Removed

Image Added

BackupRMIServerPort

Anchor
DDE_LINK14
DDE_LINK14
This property can be found under:
Fiorano->HA->HAKRPCProvider->FioranoHAKRPCProvider->config through studio.

RMIServerPort

This property can be found under:
Fiorano->jmx->RMIBasedJMXConnector->config through studio.

...

One can configure Shared HA profile through changing Configs.cfg file (text based configuration) or through Studio. Following section describe these options.
Text based
Profiles can now be configured through a text based properties file. Profiles can be found under the %FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_shared directory (say, PROFILE_HOME). In order to configure shared HA profile, edit Configs.cfg file under %PROFILE_HOME%\HAPrimary\conf and %PROFILE_HOME%\HASecondary\conf.

The default entries in Configs.cfg file looks like:

ObjectName=Container

HA Common Properties.
#
#FMQGroup.BackupServerIp=localhost
#FMQGroup.BackupServerPort=1956
#FMQGroup.BackupHAIPAddress=localhost
#FMQGroup.BackupHAPort=3000
#FMQGroup.Port=2000
#FMQGroup.PingInterval=30000
#FMQGroup.GatewayServerIPAddress=localhost
#FMQGroup.GatewayServerPort=7
#FMQGroup.LockFile=null
#FMQGroup.SocketCreationTimeout=10000
In front of every parameter, its default values are given.

Take the scenario of running HAPrimary on a machine with IPAddress: 192.169.1.22 and HASecondary on a machine with IPAddress: 192.169.1.200. GatewayServer address is given as 192.169.1.16 which is present in the network. If LockFile, say Lock.dat, has been shared from third system and mounted to /home/fmq1 on 192.168.1.22 system and to /home/fmq2 on 192.168.1.200 system, then on Primary profile these parameters should takes following value:

ObjectName=Container

HA Common Properties.
#
FMQGroup.BackupServerIp=192.168.1.200
#FMQGroup.BackupServerPort=1956
FMQGroup.BackupHAIPAddress=192.168.1.200
#FMQGroup.BackupHAPort=3000
#FMQGroup.Port=2000
#FMQGroup.PingInterval=30000
FMQGroup.GatewayServerIPAddress=192.168.1.16
#FMQGroup.GatewayServerPort=7
FMQGroup.LockFile=/home/fmq1/Lock.dat
#FMQGroup.SocketCreationTimeout=10000
On Secondary profile these parameters should takes following value:
ObjectName=Container

HA Common Properties
#
FMQGroup.BackupServerIp=192.168.1.22
#FMQGroup.BackupServerPort=1856
FMQGroup.BackupHAIPAddress=192.168.1.22
#FMQGroup.BackupHAPort==2000
#FMQGroup.Port=3000
#FMQGroup.PingInterval=30000
FMQGroup.GatewayServerIPAddress=192.168.1.16
#FMQGroup.GatewayServerPort=7
FMQGroup.LockFile=/home/fmq2/Lock.dat
#FMQGroup.SocketCreationTimeout=10000
Modified Configs.cfg file need to be saved for both Primary and secondary profiles.
Studio
If shared HA needs to be used, then open FioranoMQ_HA_shared/HAPrimary and FioranoMQ_HA_shared/HASecondary profile in Studio Profile Manager. Right-click on the profile and click on FMQ Shared HA. The FMQ Shared HA wizard appears.

...


Image Added
You can configure all the required values from the wizard. After configuring the wizard, right-click the node and select Save option from the pop-up menu

...

Image Added
The following properties are available in the FMQ HA replicated wizard.
BackupHAIPAddress
This IP represents the URL where another FioranoMQ HA server runs. In case this HA server fails then all the required synchronized data is present in backup HA server and HA layer connects to backup HA server.
BackupHAPort
This port represents the backup machine HA port on which another FioranoMQ Server runs.
Port
This port represents the FMQ Server HA port on which this HA Server runs.
BackupRMIServerPort
Port of backup server on which Mx4j RMIConnector server will bind.
RMIServerPort
Port on which Mx4j RMIConnector server will bind.
PingInterval
This interval represents the duration after which HAServer pings the other HABackup server to find whether the server is running properly or not.
LockFile
Full path of the file which will be used for determining the HA states. This file should be present in the third machine and always available to the HA servers with all permissions. The LockFile machine must be same as the machine whose IPAddress is given as GatewayServerIPAddress.
GatewayServerIPAddress
This value represents the IP address of third machine which is always present in the network. This value must not be the machine where one of the FioranoMQ servers runs.
GatewayServerPort
This value represents the port to which any of the HA Servers pings. This port must not be used for some other purpose.
ActiveLockReAcquisitionInterval
This parameter indicates the wait Interval between each attempt to acquire the lock for active server. This value should be in multiples of pingInterval/2 otherwise server may try to acquire the lock on the next multiple of pingInterval/2. Default value for this parameter is 30000.
PassiveLockReAcquisitionInterval
This parameter indicates the wait Interval for the passive server to acquire the lock when the link between active and passive server is down. This value should be greater than '2*ActiveLockReacquisitionInterval', otherwise an exception will be thrown. Server won't start if this value is not set properly. Default value for this parameter is 60000.
All IP addresses, ports should represent the correct values. Without modifying any of these values HAPrimary and HASecondary can run on a single machine.
Take the scenario of running HAPrimary on a machine with IPAddress: 192.169.1.22 and HASecondary on a machine with IPAddress: 192.169.1.200. Gatewayserver address is given as 192.169.1.16 which is present in the network. If LockFile, say Lock.dat, has been shared from third system and mounted to /home/fmq1 on 192.168.1.22 system and to /home/fmq2 on 192.168.1.200 system, then HAPrimary wizard looks like:

...

Image Added
And HASecondary wizard looks like:

...


Image Added

Anchor
_Toc370988018
_Toc370988018
4.2.2 Advanced configurations

Text based
Edit Configs.cfg file under
%FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_shared\HAPrimary\conf for HAPrimary and
%FIORANO_HOME%\fmq\profiles\FioranoMQ_HA_shared\HASecondary\conf for HASecondary.

 

Port

Specify the Port on which HA Manager would listen for connection from the peer HA Server.Apart from the port that the HA Server uses to listen for connections from its clients, it must also listen for a connection from its HA Peer Server, in order to know the status of its peer.
This parameter is used to specify that port.
Valid values:
Default value is 2000 for Primary and 3000 for secondary profile.
Note: The port must be not in use by any other services.
Configuration:
In Configs.cfg file this property can be found under HA common Properties. For example: #FMQGroup.Port=2000
User can change this value and for taking changes into effect uncomment the value, like- FMQGroup.Port=2500

...

Boolean determining whether Nagle's Algorithm is enabled or not in socket creation with peer HA Server. Nagle's algorithm is used in TCP/IP networks for congestion control. It works by coalescing a number of small outgoing messages, and sending them all at once. Specifically, as long as there is a sent packet for which the sender has received no acknowledgment, the sender should keep buffering its output until it has a full packet's worth of output, so that output can be sent all at once.
Valid values:
Default value is no
• yes - NagleAlgo is enabled
• no - NagleAlgo is not enabled
Configuration:
In Configs.cfg file this property can be found under HA Connection Manager Settings. For example: #

Anchor
DDE_LINK61
DDE_LINK61
NagleAlgo=false
User can change this value and for taking changes into effect uncomment the value, like- NagleAlgo=true

SocketInitializationTimeout

Time (in milliseconds) within any client socket should identify itself and able to exchange the version number with server. The version number exchange is an authentication mechanism that FioranoMQ employs.
Valid values:
Default value is 60000 (which is equal to a minute).
Configuration:
In Configs.cfg file this property can be found under HA Connection Manager Settings. For example: #SocketInitializationTimeout=60000
User can change this value and for taking changes into effect uncomment the value, like- SocketInitializationTimeout=65000

Anchor
DDE_LINK71
DDE_LINK71
ActiveLockReAcquisitionInterval

This parameter indicates the wait Interval between each attempt to acquire the lock for active server. This value should be in multiples of pingInterval/2 otherwise server may try to acquire the lock on the next multiple of pingInterval/2. Default value for this parameter is 30000.
Configuration:
In Configs.cfg file this property can be found under HA Manager Settings. For example: #ActiveLockReAcquisitionInterval=30000
User can change this value and for taking changes into effect uncomment the value, like- ActiveLockReAcquisitionInterval=35000

PassiveLockReAcquisitionInterval

This parameter indicates the wait Interval for the passive server to acquire the lock when the link between active and passive server is down. This value should be greater than '2*ActiveLockReacquisitionInterval', otherwise an exception will be thrown. Server won't start if this value is not set properly. Default value for this parameter is 60000.
Configuration:
In Configs.cfg file this property can be found under HA Manager Settings. For example: #PassiveLockAcquisitionInterval=60000
User can change this value and for taking changes into effect uncomment the value, like- PassiveLockAcquisitionInterval=65000

PingInterval

This interval represents the duration after which HAServer pings the other HABackup server to find whether the server is running properly or not.
Configuration:
In Configs.cfg file this property can be found under HA Common Properties. For example: #FMQGroup.PingInterval=30000
User can change this value and for taking changes into effect uncomment the value, like- FMQGroup.PingInterval=35000

Anchor
DDE_LINK101
DDE_LINK101
BackupRMIServerPort

Port of backup server on which Mx4j RMIConnector server will bind.
Configuration:
In Configs.cfg file this property can be found under HA KRPC Provider Settings. For example: #BackupRMIServerPort=1858
User can change this value and for taking changes into effect uncomment the value, like- BackupRMIServerPort=1958

RMIServerPort

Port on which Mx4j RMIConnector server will bind.
Configuration:
In Configs.cfg file this property can be found under RMI Connector Settings. For example: #

Anchor
DDE_LINK81
DDE_LINK81
RMIServerPort=1859
User can change this value and for taking changes into effect uncomment the value, like- RMIServerPort=1959
Studio
All the properties listed in this section are described in text based configuration.

Port

This property can be found under:
Fiorano->HA->HAConnectionManager->FioranoHAConnectionManager->config through studio.

NagleAlgo

This property can be found under:
Fiorano->HA->HAConnectionManager->FioranoHAConnectionManager->config through studio.

Anchor
DDE_LINK41
DDE_LINK41
SocketInitializationTimeout

Anchor
DDE_LINK91
DDE_LINK91
This property can be found under:
Fiorano->HA->HAConnectionManager->FioranoHAConnectionManager->config through studio. Image Removed

Image Added
Figure: Configuring Port, NagleAlgo and SocketInitializationTimeout parameters from studio

ActiveLockReAcquisitionInterval

Anchor
DDE_LINK111
DDE_LINK111
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.

PassiveLockReAcquisitionInterval

Anchor
DDE_LINK121
DDE_LINK121
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.

PingInterval

Anchor
DDE_LINK131
DDE_LINK131
This property can be found under:
Fiorano->HA->HAManager->FioranoHAManager->config through studio.


Anchor
DDE_LINK151
DDE_LINK151
Image Removed Image Added

BackupRMIServerPort

Anchor
DDE_LINK141
DDE_LINK141
This property can be found under:
Fiorano->HA->HAKRPCProvider->FioranoHAKRPCProvider->config through studio.

RMIServerPort

This property can be found under:
Fiorano->jmx->RMIBasedJMXConnector->config through studio.

Adaptavist ThemeBuilder EngineAtlassian Confluence