Versions Compared

Key

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

...

  • DRX's physical buffer specification requires a preliminary investigation of network bandwidth and operating machine I/O load for instrumentation.
  • Prior research item
    • Average amount of I/O per active machine's resources
    • Maximum I/O Amount
    • Maximum I/O Duration
  • The average I/O and maximum I/O values of the operating machine are the basis for building an appropriate buffering environment.

case

buffer

remarks
1average I/O < maximum I/O < network bandwidth
권장 버퍼 크기

Recommended buffer size: 1 GByte

이상

or more

Ex) 1Gbps
대역폭
bandwidth, 1G Buffer =
최대
Up to 100MB/s I/
O를 약 10초간 유지 가능
O can be maintained for about 10 seconds
2average I/O < network bandwidthmaximum I/O(
최대
Maximum I/O -
대역폭
bandwidth) *
최대
Maximum I/O
지속시간
duration

Ex)

평균

Average 50MB/s I/O, 100Mbps

대역폭

bandwidth,

최대

up to 200MB/s

, 최대

maximum I/O

10초간 지속

lasts for 10 seconds

(200MB/s -

about 10MB/s) *

10초

10 seconds =

about 2GB

3network bandwidth < average I/O < maximum I/O

네트워크 대역 확장 요구, 압축 기능 고려

DRX의 버퍼는 사전 조사한 운영 노드의 I/O 부하 수치가 감당될 수 있도록 적절한 크기로 설정되어야 합니다. 사전 조사를 바탕으로한 I/O 데이터가 확보되지 못했다면 1번 case 기준의 권장 버퍼 사양에 따라 구성 및 시범 운영을 한 후 버퍼 크기에 대한 튜닝 과정을 필요로 합니다.

만일 운영 노드의 I/O 부하가 과도하게 크고 최대 I/O 의 지속시간이 장시간(수분~수십분)에 걸쳐 발생되는 상황이라면 DRX 버퍼링으로도 감당하기 어려울 수 있습니다. 이럴 경우에는 데이터 압축에 대해 고려해야 합니다. 

2.3.1 혼잡 정책

혼잡상태란 복제부하가 가중되어 DRX의 버퍼에 여유 공간이 남아 있지 않아 버퍼링이 불가한 상태를 의미합니다. 이럴 경우 DRX는 어떤 특별한 동작을 수행하지는 않으며 버퍼에 있는 복제 데이터를 원격으로 지속 전달하는 것에 주력합니다. 그리고 혼잡상태에 대한 대응은 DRBD의 혼잡정책에 맡깁니다.

...

Consider the need for network bandwidth expansion and compression.


The DRX's buffer should be set to an appropriate size to accommodate the I/O load values of the pre-investigated operating nodes. If the I/O data based on the preliminary investigation can not be obtained, it is necessary to perform the tuning process on the buffer size after the configuration and trial operation according to the recommended buffer specification based on the case 1.

If the I/O load on the operating node is too large and the maximum I/O duration occurs over a long period of time (several minutes to several tens of minutes), DRX buffering can be difficult to handle. In this case, you should consider data compression.


2.3.1 Congestion policy


The congestion state means that buffering is impossible because there is no free space in the DRX buffer because the replication load is increased. In this case, DRX does not perform any special action and concentrates on remotely transmitting the replicated data in the buffer. The response to the congestion state is left to the congestion policy of DRBD.

The congestion policy is the corresponding policy in DRBD when the DRX's buffer enters the congestion state. Here's how to set up a congestion policy.

Code Block
titledrbd.conf
resource r0 {
	proxy {
		memlimit 1G: # DRX 버퍼
	}
	net {
		on-congestion pull-ahead; # Congestion policy 혼잡정책setting 설정(Ahead 모드mode)
		congestion-fill 950M; # Set congestion 혼잡인지awareness 시점point 설정(950Mwhen 950Mbyte 바이트data 데이터가is 버퍼링되는buffered 시점을is 혼잡시점으로congestion 인지point)
	}
}

DRBD의 혼잡정책은 다음의 3가지이며 WAN 구간 비동기 복제 운영 시에는 Ahead 모드의 설정을 권장 합니다.

...

The congestion policy of DRBD is as follows. It is recommended to set Ahead mode for WAN interval asynchronous replication operation.

  • block: I/O waits until the buffer is free (until it can be queued to the buffer). This is the default when no congestion policy is set.
  • disconnect: Disconnect the replication connection and enter the StandAlone state.
  • pull-ahead: Enter delayed replication mode. If this is the case, the replication connection is maintained, but replication is stopped and local I/O is written on out-of-sync, and finally resynchronization is performed for the out-of-sync that was recorded when the congestion was released.

2.3.2.

...

 Buffer Tuning Guide

  • It assumes DRBD asynchronous replication and Ahead mode (delayed replication) configuration.
  • Ensure that only the I/O measurements of the interval during which the replication connection is maintained can be measured. The I/O measurements for the replication disconnect interval are not considered.
  • The number of times DRBD enters Ahead mode (the number of congestion entries) is collected by the following method.
    버퍼를 증설 했음에도 혼잡구간이 빈도가 낮아지지 않을 경우 압축에 대해 고려합니다
    • Output count of "Congestion-fill threshold reached" 의 출력 회수 취합
    • drbdsetup events2 명령을 통한 Ahead 진입 회수 확인
  • 취합한 혼잡진입 회수를 기준으로 버퍼 크기를 재조정합니다. 혼잡빈도가 잦은 경우 버퍼의 크기는 더욱 증설되어야 합니다.
    • on drbd log
    • Check the number of Ahead entries through the drbdsetup events2 command
  • Resizes the buffer based on the number of congestion entries collected. If the frequency of congestion is frequent, the size of the buffer should be increased.
  • If the congestion interval does not decrease even though the buffer has been added, consider compression.


2.3.3.

...

DRX의 물리 메모리 사양은 리소스 개수와 최대I/O, 대역폭에 따라 가변적입니다. 다음은 최대I/O 가 대역폭보다 클 경우의 DRX의 물리메모리 사양에 대한 계산식 입니다.

...

 Physical Memory Specifications

DRX's physical memory specifications are variable based on number of resources, maximum I/O, and network bandwidth. The following is a formula for DRX's physical memory specification when the maximum I/O is greater than the bandwidth.

  • resource count * (max I/O(MB/s) - 대역폭bandwidth(MB/s)) * 최대 max I/O 지속시간 maintained interval (sec) + (리소스 개수 resource count * 압축compression/암호화 버퍼encryption buffer(100MB)) + DRX 기본메모리default memory(100MB)

최대 I/O 가 대역폭에 비해 항상 낮다면 리소스 당 버퍼의 크기를 1GB 수준으로 계산하여 물리 메모리 사양을 결정합니다.

...

If the maximum I/O is always lower than the bandwidth, the physical memory specification is determined by calculating the per-resource buffer size as 1 GB.

  • resource count * 1GB + (리소스 개수 resource count * 압축compression/암호화 버퍼encryption buffer(100MB)) + DRX 기본메모리default memory(100MB)

다음은 WAN 100Mbps 대역폭,  최대 The following is an example of determining the physical memory specification assuming a WAN 100 Mbps bandwidth, a maximum I/O 200MBof 200 MB/s, 최대 and a maximum I/O 지속시간 10초 일 경우를 상정하여 물리메모리 사양을 결정하는 예시 입니다. 이 예시에서 1개의 복제 리소스 운영에 대해 요구되는 메모리는 2.1GB(4GB 권장)이며 최대 I/O가 10초 이상 지속될 시 혼잡 상태로 진입하게 됩니다. 

...

DRX 기본 메모리

...

duration of 10 seconds. In this example, the required memory for one replication resource operation is 2.1 GB (4 GB recommended) and enters the congestion state when the maximum I / O lasts more than 10 seconds.

resource count

DRX default memory

BAB sizecompression / encryption bufferMemory RequirementsRecommended operating server memory
1100MB1 * (200MB-10MB) *
10초
10sec = 1.9GB1 *
about 100MB2 .1GB
4GB 이상
4GB or more
5100MB
5 * (200MB-10MB) *
10초
10sec = 9.5GB5 *
 about 100MB10.1GB
16GB 이상
16GB or more
10100MB
10 * (200MB-10MB) *
10초
10sec = 19GB10 *
 about 100MB20.1GB
32GB 이상
32GB or more
20100MB
20 * (200MB-10MB) *
10초
10sec = 38GB20 *
 about 100MB40.1GB
64GB 이상
64GB or more
50100MB
50 * (200MB-10MB) *
10초
10sec = 95GB50 *
 about 100MB100.1GB
128GB 이상
128GB or more
100100MB
100 * (200MB-10MB) *
10초
10sec = 190GB100 *
 about 100MB200.1GB
256GB 이상
256GB or more

WAN 대역폭은 실질적으로는 가변적입니다. WAN 대역폭은 일반적으로 보장 대역폭이 아닌 네트웍 상황에 따라 변동이 심한 가변대역의 특성을 가지기 때문에 통상 WAN 대역폭은 10~100Mbps 정도의 대역으로 간주하여 1MB/s ~10MB/s 로 추산하는 것이 버퍼링 관점에서 적당합니다. 또한 일정 기간 내에 측정한 최대 I/O가 복제 대역폭보다 낮다고 해서 DRX 버퍼링을 고려하지 않는 것은 바람직 하지 않습니다. 운영환경의 애플리케이션의 특성에 따라 최대 I/O가 불특정 시점에 급등하는 상황이 있을 수 있기 때문에 이런 상황에 대비하여 DRX 버퍼에 여유공간을 두고 구성하는것이 바람직 합니다. bandwidth is virtually variable. Since the WAN bandwidth generally has variable bandwidth characteristics that vary widely depending on the network conditions, not the guaranteed bandwidth, it is generally considered that the WAN bandwidth is estimated to be 1 to 10 Mb/s, It is appropriate. Also, it is not recommended to consider disabling of DRX buffering because the maximum I/O measured within a period of time is lower than the replication bandwidth. Depending on the characteristics of the application in the operating environment, there may be a situation in which the maximum I/O surges at an unspecified point. Therefore, it is preferable to allocate free space in the DRX buffer for this situation.