Versions Compared

Key

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

Table of Contents

After the DRX Configuration File is created, it is ready to start replication. You can start replication by starting (up) the replication resource with the following commands.
Startup of resources provides a way to start all resources in the configuration file at once with control over the DRX services already prepared during installation or individually through a command-type utility. The following is a description of this

5.1. Service Control

Control of a service depends on

Table of Contents


Replication resources can be manually started individually through a command-line utility, or they can be automatically started all at once through the DRX service that you staged during installation.

Service

Follow the service control commands provided by the OS. The following service control commands were described OS-separated.

...

Info
Since DRX 1.4, the DRX service name has been changed from DRXSVC to DRX. In the examples described below, rename the drxsvc service to drx.

Startup

Code Block
titleWindows
c:\>sc start drxsvc 


Code Block
titleLinux
# CentOS Centos77 
[root@node1 ~]# systemctl start drxsvc
# Centos6CentOS 6
[root@node1 ~]# service drxsvc start 

...


Inquery

Use the service control command to check the status of the drxsvc service.

Info

Windows

sc query drxsvc


Info

Linux

<CentOS 6.x>

service drxsvc status 


<CentOS 7.x>

systemctl status drxsvc 



Stop

Code Block
titleWindows
c:\>sc stop drxsvc 


Code Block
titleLinux
# Centos7CentOS 7 
[root@node1 ~]# systemctl stop drxsvc
# Centos6CentOS 6
[root@node1 ~]# service drxsvc stop

...


Watchdog

The DRX Service includes DRX Watchdog for management of service embeds a DRX watchdog to manage the DRX Process. Watchdogs can restart the process. The watchdog will restart DRX if it detects an unusual shutdown abnormal termination of the a DRX process in the following situations.

  • If the DRX process

...

  • is terminated unexpectedly.

...

  • DRX is shut down

...

  • using the "drx-ctl shutdown" command.

...

This restart by Watchdog is permanently recorded in the DRX Log and is left in Restarts by these watchdogs are always written to the DRX log for history.

Because the DRX process is automatically restarted by Watchdog the watchdog when it terminates is terminated under normal circumstances, you must exit the DRX Service Stop the only way to completely terminate the DRX process .

...

is by stopping the DRX service.

To start DRX without a watchdog, you must start DRX in foreground mode.


Resource

To control the resource resources individually, you should use the up/down command in commands of drx-ctl. you You can also start/stop all resources using with the ' all ' option in of drx-ctl.

Info
  • Up of drx-ctl and up provided by drbdadm have different functional meanings. The up in drbdadm is the command that prepares the replication target device for the resource and the up in drx-ctl to create a channel that intermediates replication connections.
  • The procedure requires drbdadm up after drx-ctl-up to connect to the replication. This is because the connection between drbd and drbd must be attempted after the DRX intermediary channel is prepared in advance to reduce the delay in establishing replication connections.

...

DRX resources are resources that mediate replication connections. They are functionally different from replication resources and should not be confused. For example, bsradm up is a command to start a replication resource, while drx-ctl up is a command to start brokering a replication connection.

Info

Procedurally, it is recommended to perform drx-ctl up followed by bsradm up. Having a DRX brokered channel ready in advance and establishing a replicated connection on both nodes is a good idea to reduce connection latency.

Startup

Commands to start an intermediary connection.

Info
iconfalse
drx-ctl up [resource or all]

...

Stop

Command to stop an intermediary connection.

Info
iconfalse
drx-ctl down [resource or all]

5.3. Change Settings

...

Autostart

DRX resources are automatically started by the DRX service startup. However, sometimes you may want to prevent resources from being started automatically by the service. The following configuration file settings can be used to prevent resources from starting automatically when the service starts.

Info
resource r0 {
    proxy {
        plugin {
            svc-autostart no;
        }
    }
}

Inquery

The following is a description of the drx-ctl commands that query the status and information of replication resources.

Info
The commands default to resources, but some specify just the connection name without resources.

The console output is in Kilo Bytes and is omitted.


Settings

DRX's settings can be applied by directly changing the contents of the configuration file, or by using the drx-ctl set command.

Info

DRX does not provide commands to modify resource files or apply changes to files to change settings. Modifying a resource file is subject to manual intervention by the user.

...

Static

...

Settings

The way users You manually change the contents of a configuration file and restart resources is called a static change settings.

5.3.2. Dynamic Change Settings

Using the the bsr.conf and drx.conf configuration files and restart the resource with the adjust command to take effect.

CommandDescriptionOutput sample
drx-ctl adjust [resource or all] Update Settings, restart resources


Code Block
themeDJango
titleadjust
collapsetrue
[root@c73-p1 bsr.d]# drx-ctl adjust all
DR-1-3-c73-p2-c73-p1: up.
DR-2-3-c73-p2-c73-p1: up.
Result: 2 resource(s) updated.

[root@c73-p1 bsr.d]#


Dynamic Settings

The drx-ctl set command allows you to change settings in real-time settings during operation is called dynamic setting change. Settings through the set command are temporary, not reflected in . The set command does not reflect the contents of the actual resource configuration file. The following is an example of the dynamic setting of the bwlimit.

Info
iconfalse

drx-ctl set bwlimit [resource name] [bwlimit-in-bytes]

The drx-ctl adjust command is a command for users to change the configuration file themselves and apply it dynamically during operation. The adjust command even starts the resource when it is in a down state.

...

iconfalse

...

, so it can be said to be a temporary setting, as it will revert to the configuration file's settings when drx is restarted.

CommandDescriptionOutput sample
drx-ctl set compress [type] [level] [connection name] 

Compression plugin settings

  • type
    • NONE 
    • ZLIB
    • LZ4
  • level: 1~9


Code Block
themeDJango
titleset compress
collapsetrue
< Set the compression plugin to LZ4 for resource r0 only >
[root@c73-p1 dgkim]# drx-ctl set compress lz4 1 DR-1-3-c73-p2-c73-p1
Result: 1 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:31:10.271886 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor: LZ4
I1126 17:31:10.271918 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor level: 1
I1126 17:31:10.271924 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor: LZ4
I1126 17:31:10.271925 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor level: 1


< Disable the compression plugin on resource R0 >
[root@c73-p1 dgkim]# drx-ctl set compress none 1 DR-1-3-c73-p2-c73-p1
DR-1-3-c73-p2-c73-p1: updated.
Result: 1 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:31:37.741765 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor: NONE
I1126 17:31:37.741795 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor level: 1
I1126 17:31:37.741800 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor: NONE
I1126 17:31:37.741802 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor level: 1



< Set the compression plugin for all (2) resources to LZ4 >
[root@c73-p1 dgkim]# drx-ctl set compress lz4 1 all
Result: 2 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:32:30.656067 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor: LZ4
I1126 17:32:30.656089 t77473 DR-1-3-c73-p2-c73-p1:ad] Set compressor level: 1
I1126 17:32:30.656095 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor: LZ4
I1126 17:32:30.656118 t77473 DR-2-3-c73-p2-c73-p1:am] Set compressor: LZ4
I1126 17:32:30.656096 t77473 DR-1-3-c73-p2-c73-p1:cm] Set compressor level: 1
I1126 17:32:30.656133 t77473 DR-2-3-c73-p2-c73-p1:am] Set compressor level: 1
I1126 17:32:30.656138 t77473 DR-2-3-c73-p2-c73-p1:cd] Set compressor: LZ4
I1126 17:32:30.656139 t77473 DR-2-3-c73-p2-c73-p1:cd] Set compressor level: 1


drx-ctl set crypto [on or off] [connection name] Encryption settings


Code Block
themeDJango
titleset crypto
collapsetrue
< Enable the encryption plugin for resource R0 only > 
[root@c73-p1 dgkim]# drx-ctl set crypto on DR-1-3-c73-p2-c73-p1
DR-1-3-c73-p2-c73-p1: updated.
Result: 1 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:10:10.611963 t77473 DR-1-3-c73-p2-c73-p1:ad] Set crypto: OPENSSL
I1126 17:10:10.611987 t77473 DR-1-3-c73-p2-c73-p1:cm] Set crypto: OPENSSL


< Enable the encryption plugin for all resources > 
[root@c73-p1 dgkim]# drx-ctl set crypto on all
DR-2-3-c73-p2-c73-p1: updated.
Result: 2 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:08:26.156687 t77473 DR-1-3-c73-p2-c73-p1:ad] Set crypto: OPENSSL
I1126 17:08:26.156713 t77473 DR-2-3-c73-p2-c73-p1:am] Set crypto: OPENSSL
I1126 17:08:26.156702 t77473 DR-1-3-c73-p2-c73-p1:cm] Set crypto: OPENSSL
I1126 17:08:26.156719 t77473 DR-2-3-c73-p2-c73-p1:cd] Set crypto: OPENSSL


< Disable encryption plugins for all resources > 
[root@c73-p1 dgkim]# drx-ctl set crypto off all
DR-1-3-c73-p2-c73-p1: updated.
DR-2-3-c73-p2-c73-p1: updated.
Result: 2 resource(s) updated.

[root@c73-p1 dgkim]# 

<output log>
I1206 14:12:59.701227 t81344 DR-1-3-c73-p2-c73-p1:am] Set crypto: NONE
I1206 14:12:59.701250 t81344 DR-1-3-c73-p2-c73-p1:cd] Set crypto: NONE
I1206 14:12:59.701305 t81344 DR-2-3-c73-p2-c73-p1:ad] Set crypto: NONE
I1206 14:12:59.701315 t81344 DR-2-3-c73-p2-c73-p1:cm] Set crypto: NONE


drx-ctl set bwlimit [limit] [connection name] Setting bandwith limits 


Code Block
themeDJango
titleset bwlimit
collapsetrue
< Set the B/W of resource r0 to 1G >
[root@c73-p1 dgkim]# drx-ctl set bwlimit 1G DR-1-3-c73-p2-c73-p1
DR-1-3-c73-p2-c73-p1: updated.
Result: 1 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:21:11.633557 t77473 DR-1-3-c73-p2-c73-p1:ad] Set bandwidth limit: 1.00 GB
I1126 17:21:11.633573 t77473 DR-1-3-c73-p2-c73-p1:cm] Set bandwidth limit: 1.00 GB


< Set the B/W of all resources to 100M >
[root@c73-p1 dgkim]# drx-ctl set bwlimit 100M all
DR-1-3-c73-p2-c73-p1: updated.
DR-2-3-c73-p2-c73-p1: updated.
Result: 2 resource(s) updated.

[root@c73-p1 dgkim]#

<output log>
I1126 17:20:55.431890 t77473 DR-1-3-c73-p2-c73-p1:ad] Set bandwidth limit: 100.00 MB
I1126 17:20:55.431916 t77473 DR-1-3-c73-p2-c73-p1:cm] Set bandwidth limit: 100.00 MB
I1126 17:20:55.431964 t77473 DR-2-3-c73-p2-c73-p1:am] Set bandwidth limit: 100.00 MB
I1126 17:20:55.431984 t77473 DR-2-3-c73-p2-c73-p1:cd] Set bandwidth limit: 100.00 MB


drx-ctl set license [file-path]Change a license information
  • After validating the license for the specified path, change the license information for the default path.
  • Changing to a valid license does not change the behavior of the DRX process because the resource must remain connected.
Code Block
themeDJango
titleset license
collapsetrue
C:\Users\Administrator>drx-ctl set license drx.lic
License status : Temporary, Expire date: 30-nov-2018, Validity day: 4
Result: done.


C:\Users\Administrator>

<output log>
I1127 09:28:40.374185 t5880 main] Verify license is available
I1127 09:28:40.374185 t5880 main:license] Checking license for [C:\Users\Administrator\drx.lic]
I1127 09:28:40.374185 t5880 main:license] License Status: Temporary, Expire date: 30-nov-2018, Validity day: 4
I1127 09:28:40.389865 t5880 main] License applied


drx-ctl reset statistics [connection name or all] 

drx-ctl reset st [connection name or all] 

Resetting statistics


Code Block
themeDJango
titlereset statistics
collapsetrue
< Initialize statistics for resource R0 only >
[root@c73-p1 dgkim]# drx-ctl reset st DR-1-3-c73-p2-c73-p1
DR-1-3-c73-p2-c73-p1: reseted.
Result: 1 resource(s) reseted.

[root@c73-p1 dgkim]#

< Reset statistics for all resources >
[root@c73-p1 dgkim]# drx-ctl reset st all
DR-1-3-c73-p2-c73-p1: reseted.
DR-2-3-c73-p2-c73-p1: reseted.
Result: 2 resource(s) reseted.

[root@c73-p1 dgkim]#



Event

Receive real-time events as they happen in the DRX engine.

CommandDescriptionsOutput samples
drx-ctl events [connection name or all]Real-time event output


Code Block
themeDJango
titleevents
collapsetrue
< Receive only common events >
[root@c73-p1 bsr.d]# drx-ctl events 
[system] connected
[2018-11-27 11:22:38.933] start common


< Receive only events from specified connections >
[root@c73-p1 bsr.d]# drx-ctl events DR-1-3-c73-p2-c73-p1
[system] connected


< Receive all events >
[root@c73-p1 bsr.d]# drx-ctl events all
[system] connected
[2018-11-27 10:43:12.831] start common



A list of event notifications.

EventTypeDescriptionOutput sample
commonstartStart event notifications


Code Block
themeDJango
titlestart
collapsetrue
[root@c73-p1 bsr.d]# drx-ctl events 
[system] connected
[2018-11-27 11:22:38.933] start common


stopStop event notifications


Code Block
themeDJango
titlestop
collapsetrue
[2018-11-27 11:12:39.098] stop common


shutdownExit with a command


Code Block
themeDJango
titleshutdown
collapsetrue
[2018-11-27 11:12:39.076] shutdown success


set licenseLicenses setting up
  • temporary, permanent, invalid
Code Block
themeDJango
titleset license
collapsetrue
[2018-11-27 13:17:58.806] set license temporary


set loglevellog level(file, console)


Code Block
themeDJango
titleset loglevel
collapsetrue
[2018-11-27 13:44:31.681] set loglevel-file trace
[2018-11-27 13:44:41.496] set loglevel-file debug
[2018-11-27 13:44:44.328] set loglevel-file info
[2018-11-27 13:44:46.088] set loglevel-file warning
[2018-11-27 13:44:47.968] set loglevel-file error
[2018-11-27 13:44:48.104] set loglevel-file critical
[2018-11-27 13:44:57.776] set loglevel-file off


개별upup


Code Block
themeDJango
titleup
collapsetrue
[2018-11-27 13:50:29.151] up DR-1-3-c73-p2-c73-p1 success


downdown


Code Block
themeDJango
titledown
collapsetrue
[2018-11-27 13:46:37.141] down DR-1-3-c73-p2-c73-p1 success


acceptIP Accept result


Code Block
themeDJango
titleaccetp state
collapsetrue
[2018-11-27 13:50:29.659] drx_accept DR-1-3-c73-p2-c73-p1 31.1.1.192:33476
[2018-11-27 13:50:34.298] bsr_accept DR-1-3-c73-p2-c73-p1 31.1.1.164:40557


connconnection status, result


Code Block
themeDJango
titleconn state
collapsetrue
[2018-11-27 14:23:39.120] acceptor_state DR-1-3-c73-p2-c73-p1 bridging
[2018-11-27 14:23:39.121] connector_state DR-1-3-c73-p2-c73-p1 bridging
[2018-11-27 14:23:39.123] connector_state DR-1-3-c73-p2-c73-p1 bridged
[2018-11-27 14:23:39.222] connector_state DR-1-3-c73-p2-c73-p1 connecting
[2018-11-27 14:23:39.328] acceptor_state DR-1-3-c73-p2-c73-p1 bridged
[2018-11-27 14:23:39.422] acceptor_state DR-1-3-c73-p2-c73-p1 waiting
[2018-11-27 14:23:43.960] acceptor_state DR-1-3-c73-p2-c73-p1 connected
[2018-11-27 14:23:43.960] acceptor_state DR-1-3-c73-p2-c73-p1 establishing
[2018-11-27 14:23:44.038] acceptor_state DR-1-3-c73-p2-c73-p1 established
[2018-11-27 14:23:44.069] connector_state DR-1-3-c73-p2-c73-p1 establishing
[2018-11-27 14:23:44.069] connector_state DR-1-3-c73-p2-c73-p1 established


setcompression


Code Block
themeDJango
titleset compress
collapsetrue
[2018-11-27 15:27:26.895] set DR-1-3-c73-p2-c73-p1 compressor NONE
[2018-11-27 15:27:50.308] set DR-1-3-c73-p2-c73-p1 compressor LZ4 1
[2018-11-27 15:30:34.584] set DR-1-3-c73-p2-c73-p1 compressor ZLIB 1
[2018-11-27 17:48:31.204] set DR-1-3-c73-p2-c73-p1 compressor IQA 1


crypto


Code Block
themeDJango
titleset crypto
collapsetrue
[2018-11-27 17:50:32.851] set DR-1-3-c73-p2-c73-p1 crypto OPENSSL
[2018-11-27 17:50:46.264] set DR-1-3-c73-p2-c73-p1 crypto NONE


Bandwidth


Code Block
themeDJango
titleset bwlimit
collapsetrue
[2018-11-27 17:56:07.698] set DR-1-3-c73-p2-c73-p1 bwlimit 1073741824
[2018-11-27 17:58:12.380] set DR-1-3-c73-p2-c73-p1 bwlimit 104857600


resetResetting statistics


Code Block
themeDJango
titlereset statistics
collapsetrue
[2018-11-27 17:58:52.962] reset DR-1-3-c73-p2-c73-p1 success


packet

Send/Receive Failure


Code Block
themeDJango
titlepacket error
collapsetrue
[2018-11-28 11:12:19.953] packet DR-1-3-c73-p2-c73-p1 receive_fail 15 15


compress

Failure-only notifications


Code Block
themeDJango
titlecompress error
collapsetrue
[2018-11-28 09:43:04.543] compress DR-1-3-c73-p2-c73-p1 compress_fail 80 1048576 0
[2018-11-28 10:28:30.629] compress DR-1-3-c73-p1-c73-p2 decompress_fail 47 1048576 0


crypto

Failure-only notifications


Code Block
themeDJango
titlecrypto error
collapsetrue
[2018-11-28 10:28:42.186] crypto DR-2-3-c73-p2-c73-p1 encrypto_fail 41 1048576 48
[2018-11-28 10:28:42.081] crypto DR-2-3-c73-p1-c73-p2 decrypto_fail 96 1048576 80