рдЗрддреНрдпрд╛рджреАрд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдЧрддреА рдпреЛрдЧреНрдп рдЖрд╣реЗ? рдЪрд▓рд╛ рдлрд┐рдУрд▓рд╛ рд╡рд┐рдЪрд╛рд░реВрдпрд╛

рдЗрддреНрдпрд╛рджреАрд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдЧрддреА рдпреЛрдЧреНрдп рдЖрд╣реЗ? рдЪрд▓рд╛ рдлрд┐рдУрд▓рд╛ рд╡рд┐рдЪрд╛рд░реВрдпрд╛

fio рдЖрдгрд┐ etcd рдмрджреНрджрд▓ рдПрдХ рдЫреЛрдЯреА рдХрдерд╛

рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛рдордЧрд┐рд░реА рдЗ рдореБрдЦреНрдпрддреНрд╡реЗ рддреНрдпрд╛рдЪреНрдпрд╛ рд╕реНрдЯреЛрд░реЗрдЬрдЪреНрдпрд╛ рдХрд╛рдордЧрд┐рд░реАрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЗ. etcd рдХрд╛рд╣реА рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ PrometheusрдЗрдЪреНрдЫрд┐рдд рд╕реНрдЯреЛрд░реЗрдЬ рдХрд╛рдордЧрд┐рд░реА рдорд╛рд╣рд┐рддреА рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, wal_fsync_duration_seconds рдореЗрдЯреНрд░рд┐рдХ. etcd рд╕рд╛рдареА рдХрд╛рдЧрджрдкрддреНрд░реЗ рд╕рд╛рдВрдЧрддрд╛рдд: рд╕реНрдЯреЛрд░реЗрдЬ рдкреБрд░реЗрд╕реЗ рдЬрд▓рдж рдорд╛рдирд▓реЗ рдЬрд╛рдгреНрдпрд╛рд╕рд╛рдареА, рдпрд╛ рдореЗрдЯреНрд░рд┐рдХрдЪрд╛ 99 рд╡рд╛ рдкрд░реНрд╕реЗрдВрдЯрд╛рдЗрд▓ 10ms рдкреЗрдХреНрд╖рд╛ рдХрдореА рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЬрд░ рддреБрдореНрд╣реА рд▓рд┐рдирдХреНрд╕ рдорд╢рд┐рдиреНрд╕рд╡рд░ etcd рдХреНрд▓рд╕реНрдЯрд░ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдд рдЕрд╕рд╛рд▓ рдЖрдгрд┐ рддреБрдордЪреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдкреБрд░реЗрд╕реЗ рдЬрд▓рдж рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рдпрд╛рдЪреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рд╛рдпрдЪреЗ рдЕрд╕рд▓реНрдпрд╛рд╕ (рдЙрджрд╛. SSD), рддреБрдореНрд╣реА рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рдлрд┐рдпреЛ I/O рдСрдкрд░реЗрд╢рдиреНрд╕рдЪреА рдЪрд╛рдЪрдгреА рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рд╛рдзрди рдЖрд╣реЗ. рдЦрд╛рд▓реАрд▓ рдЖрджреЗрд╢ рдЪрд╛рд▓рд╡рд╛, рдЬреЗрдереЗ рдЪрд╛рдЪрдгреА-рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдорд╛рдЙрдВрдЯ рдкреЙрдЗрдВрдЯ рдЕрдВрддрд░реНрдЧрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЖрд╣реЗ:

fio --rw=write --ioengine=sync --fdatasync=1 --directory=test-data --size=22m --bs=2300 --name=mytest

рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдирд┐рдХрд╛рд▓ рдкрд╛рд╣рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рдХрд╛рд▓рд╛рд╡рдзреАрдЪреА 99 рд╡реА рдЯрдХреНрдХреЗрд╡рд╛рд░реА рддрдкрд╛рд╕рд╛рдпрдЪреА рдЖрд╣реЗ fdatasync 10 ms рдкреЗрдХреНрд╖рд╛ рдХрдореА рддрд╕реЗ рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдкрд▓реНрдпрд╛рдХрдбреЗ рд╡рд╛рдЬрд╡реА рдЬрд▓рдж рд╕реНрдЯреЛрд░реЗрдЬ рдЖрд╣реЗ. рдпреЗрдереЗ рдкрд░рд┐рдгрд╛рдорд╛рдВрдЪреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ:

  sync (usec): min=534, max=15766, avg=1273.08, stdev=1084.70
  sync percentiles (usec):
   | 1.00th=[ 553], 5.00th=[ 578], 10.00th=[ 594], 20.00th=[ 627],
   | 30.00th=[ 709], 40.00th=[ 750], 50.00th=[ 783], 60.00th=[ 1549],
   | 70.00th=[ 1729], 80.00th=[ 1991], 90.00th=[ 2180], 95.00th=[ 2278],
   | 99.00th=[ 2376], 99.50th=[ 9634], 99.90th=[15795], 99.95th=[15795],
   | 99.99th=[15795]

рдиреЛрдЯреНрд╕

  • рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рд╕реНрдерд┐рддреАрд╕рд╛рдареА --size рдЖрдгрд┐ --bs рдкрд░реНрдпрд╛рдп рд╕рд╛рдиреБрдХреВрд▓рд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗрдд. fio рдХрдбреВрди рдЙрдкрдпреБрдХреНрдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдордЪреА рд╕реНрд╡рддрдГрдЪреА рдореВрд▓реНрдпреЗ рдкреНрд░рджрд╛рди рдХрд░рд╛. рддреЗ рдХреБрдареЗ рдорд┐рд│рд╡рд╛рдпрдЪреЗ? рд╡рд╛рдЪрд╛ рдЖрдореНрд╣реА fio рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ рдХрд╕реЗ рд╢рд┐рдХрд▓реЛ.
  • рдЪрд╛рдЪрдгреА рджрд░рдореНрдпрд╛рди, рд╕рд░реНрд╡ I/O рднрд╛рд░ fio рд╡рд░реВрди рдпреЗрддреЛ. рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рдирд╛рддреАрд▓ рдкрд░рд┐рд╕реНрдерд┐рддреАрдордзреНрдпреЗ, wal_fsync_duration_seconds рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд рдЗрддрд░ рд▓реЗрдЦрди рд╡рд┐рдирдВрддреНрдпрд╛ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рдпреЗрдгреНрдпрд╛рдЪреА рд╢рдХреНрдпрддрд╛ рдЖрд╣реЗ. рдЕрддрд┐рд░рд┐рдХреНрдд рд▓реЛрдб wal_fsync_duration_seconds рдЪреЗ рдореВрд▓реНрдп рд╡рд╛рдврд╡реЗрд▓. рддреНрдпрд╛рдореБрд│реЗ 99 рд╡рд╛ рдкрд░реНрд╕реЗрдВрдЯрд╛рдЗрд▓ 10ms рдЪреНрдпрд╛ рдЬрд╡рд│ рдЕрд╕рд▓реНрдпрд╛рд╕, рддреБрдордЪреЗ рд╕реНрдЯреЛрд░реЗрдЬ рд╕реНрдкреАрдб рд╕рдВрдкрдд рдЖрд╣реЗ.
  • рдЖрд╡реГрддреНрддреА рдШреНрдпрд╛ рдлрд┐рдпреЛ 3.5 рдкреЗрдХреНрд╖рд╛ рдХрдореА рдирд╛рд╣реА (рдорд╛рдЧреАрд▓ fdatasync рдХрд╛рд▓рд╛рд╡рдзреА рдЯрдХреНрдХреЗрд╡рд╛рд░реА рджрд░реНрд╢рд╡рдд рдирд╛рд╣реА).
  • рд╡рд░ рдлрдХреНрдд fio рдЪреНрдпрд╛ рдирд┐рдХрд╛рд▓рд╛рдВрдЪрд╛ рдПрдХ рдЭрд▓рдХ рдЖрд╣реЗ.

fio рдЖрдгрд┐ etcd рдмрджреНрджрд▓ рджреАрд░реНрдШ рдХрдерд╛

рдЗрддреНрдпрд╛рджреА рдордзреНрдпреЗ WAL рдореНрд╣рдгрдЬреЗ рдХрд╛рдп?

рд╕рд╣рд╕рд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд╛рдкрд░рддрд╛рдд рд▓рд┐рд╣рд╛-рдкреБрдвреЗ рд▓реЙрдЧ; etcd рддреЗ рджреЗрдЦреАрд▓ рд╡рд╛рдкрд░рддреЗ. рдЖрдореНрд╣реА рдпреЗрдереЗ рд░рд╛рдЗрдЯ-рдЕрд╣реЗрдб рд▓реЙрдЧ (WAL) рд╡рд░ рддрдкрд╢реАрд▓рд╡рд╛рд░ рдЪрд░реНрдЪрд╛ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА. рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рд╣реЗ рдЬрд╛рдгреВрди рдШреЗрдгреЗ рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ рдХреА etcd рдХреНрд▓рд╕реНрдЯрд░рдЪрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕рджрд╕реНрдп рдкрд░реНрд╕рд┐рд╕реНрдЯрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рддреНрдпрд╛рдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рддреЛ. etcd рд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рдкреНрд░рддреНрдпреЗрдХ рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдСрдкрд░реЗрд╢рди (рдЬрд╕реЗ рдХреА рдЕрдкрдбреЗрдЯ) WAL рд╡рд░ рд▓рд┐рд╣рд┐рддреЗ. рдЬрд░ рд╕реНрдЯреЛрд░реЗрдЬ рд╕рджрд╕реНрдпрд╛рдВрдкреИрдХреА рдПрдХ рдХреНрд░реЕрд╢ рдЭрд╛рд▓рд╛ рдЖрдгрд┐ рд╕реНрдиреЕрдкрд╢реЙрдЯреНрд╕ рджрд░рдореНрдпрд╛рди рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдЭрд╛рд▓рд╛, рддрд░ рддреЛ WAL рд╕рд╛рдордЧреНрд░реАрджреНрд╡рд╛рд░реЗ рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рд╕реНрдиреЕрдкрд╢реЙрдЯрдкрд╛рд╕реВрди рд╕реНрдерд╛рдирд┐рдХ рдкрд╛рддрд│реАрд╡рд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░реВ рд╢рдХрддреЛ.

рдЬреЗрд╡реНрд╣рд╛ рдХреНрд▓рд╛рдпрдВрдЯ рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ рдХреА рдЬреЛрдбрддреЛ рдХрд┐рдВрд╡рд╛ рд╡рд┐рджреНрдпрдорд╛рди рдХреАрдЪреЗ рдореВрд▓реНрдп рдЕрджреНрдпрддрдирд┐рдд рдХрд░рддреЛ, рддреЗрд╡реНрд╣рд╛ etcd рдбрдмреНрд▓реНрдпреВрдПрдПрд▓рдордзреНрдпреЗ рдСрдкрд░реЗрд╢рди рд░реЗрдХреЙрд░реНрдб рдХрд░рддреЗ, рдЬреА рдкрд░реНрд╕рд┐рд╕реНрдЯрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рдирд┐рдпрдорд┐рдд рдлрд╛рдЗрд▓ рдЖрд╣реЗ. etcd рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реВ рдареЗрд╡рдгреНрдпрд╛рдкреВрд░реНрд╡реА WAL рдПрдВрдЯреНрд░реА рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рдЖрд▓реА рдЖрд╣реЗ рдпрд╛рдЪреА рдкреВрд░реНрдг рдЦрд╛рддреНрд░реА рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд▓рд┐рдирдХреНрд╕рд╡рд░, рдпрд╛рд╕рд╛рдареА рдПрдХ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдкреБрд░реЗрд╕рд╛ рдирд╛рд╣реА. рд▓рд┐рд╣реВ, рднреМрддрд┐рдХ рд╕рдВрдЪрдпрдирд╛рд╡рд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕ рд╡рд┐рд▓рдВрдм рд╣реЛрдК рд╢рдХрддреЛ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд▓рд┐рдирдХреНрд╕ рдХрд╛рд╣реА рдХрд╛рд│ рдХрд░реНрдирд▓ рдореЗрдорд░реАрдордзреАрд▓ рдХреЕрд╢реЗрдордзреНрдпреЗ (рдЬрд╕реЗ рдХреА рдкреГрд╖реНрда рдХреЕрд╢реЗ) WAL рдПрдВрдЯреНрд░реА рд╕рдВрдЪрдпрд┐рдд рдХрд░реВ рд╢рдХрддреЗ. рдЖрдгрд┐ рдбреЗрдЯрд╛ рдкрд░реНрд╕рд┐рд╕реНрдЯрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬрд╡рд░ рдЕрдЪреВрдХрдкрдгреЗ рд▓рд┐рд╣рд┐рд▓рд╛ рдЬрд╛рдгреНрдпрд╛рд╕рд╛рдареА, рд▓рд┐рд╣рд┐рд▓реНрдпрд╛рдирдВрддрд░ fdatasync рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЖрдгрд┐ etcd рдлрдХреНрдд рддреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рддреЗ (рдЬрд╕реЗ рддреБрдореНрд╣реА рдХрд╛рдорд╛рдЪреНрдпрд╛ рдкрд░рд┐рдгрд╛рдорд╛рдд рдкрд╛рд╣реВ рд╢рдХрддрд╛. рд╕реНрдЯреНрд░реЗрд╕, рдЬреЗрдереЗ 8 WAL рдлрд╛рдЗрд▓ рд╡рд░реНрдгрдирдХрд░реНрддрд╛ рдЖрд╣реЗ):

21:23:09.894875 lseek(8, 0, SEEK_CUR)   = 12808 <0.000012>
21:23:09.894911 write(8, ". 20210220361223255266632$10 20103026"34"rn3fo"..., 2296) = 2296 <0.000130>
21:23:09.895041 fdatasync(8)            = 0 <0.008314>

рджреБрд░реНрджреИрд╡рд╛рдиреЗ, рдкрд░реНрд╕рд┐рд╕реНрдЯрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬрд╡рд░ рд▓рд┐рд╣рд┐рдгреЗ рддреНрд╡рд░рд┐рдд рд╣реЛрдд рдирд╛рд╣реА. fdatasync рдХреЙрд▓ рдордВрдж рдЕрд╕рд▓реНрдпрд╛рд╕, etcd рдкреНрд░рдгрд╛рд▓реАрдЪреНрдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд▓рд╛ рддреНрд░рд╛рд╕ рд╣реЛрдИрд▓. etcd рд╕рд╛рдареА рдХрд╛рдЧрджрдкрддреНрд░реЗ рд╕рд╛рдВрдЧрддрд╛рдд99 рд╡реНрдпрд╛ рдкрд░реНрд╕реЗрдВрдЯрд╛рдЗрд▓рдордзреНрдпреЗ, Fdatasync рдХреЙрд▓реНрд╕ WAL рдлрд╛рдЗрд▓рд╡рд░ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕рд╛рдареА 10ms рдкреЗрдХреНрд╖рд╛ рдХрдореА рд╡реЗрд│ рдШреЗрдд рдЕрд╕рд▓реНрдпрд╛рд╕ рд╕реНрдЯреЛрд░реЗрдЬ рдкреБрд░реЗрд╕реЗ рдЬрд▓рдж рдорд╛рдирд▓реЗ рдЬрд╛рддреЗ. рд╕реНрдЯреЛрд░реЗрдЬрд╕рд╛рдареА рдЗрддрд░ рдЙрдкрдпреБрдХреНрдд рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рдпрд╛ рдкреЛрд╕реНрдЯрдордзреНрдпреЗ рдЖрдореНрд╣реА рдлрдХреНрдд рдпрд╛ рдореЗрдЯреНрд░рд┐рдХрдмрджреНрджрд▓ рдмреЛрд▓рдд рдЖрд╣реЛрдд.

fio рд╕рд╣ рдЕрдВрджрд╛рдЬреЗ рд╕реНрдЯреЛрд░реЗрдЬ

рддреБрдордЪрд╛ рд╕реНрдЯреЛрд░реЗрдЬ etcd рд╕рд╛рдареА рдпреЛрдЧреНрдп рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рдпрд╛рдЪреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рд╛рдпрдЪреЗ рдЕрд╕рд▓реНрдпрд╛рд╕, fio рд╡рд╛рдкрд░рд╛, рдПрдХ рдЕрддрд┐рд╢рдп рд▓реЛрдХрдкреНрд░рд┐рдп I/O рд▓реЛрдб рдЪрд╛рдЪрдгреА рд╕рд╛рдзрди. рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ рдХреА рдбрд┐рд╕реНрдХ рдСрдкрд░реЗрд╢рди рдЦреВрдк рднрд┐рдиреНрди рдЕрд╕реВ рд╢рдХрддрд╛рдд: рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдЖрдгрд┐ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕, рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓рдЪреЗ рдЕрдиреЗрдХ рд╡рд░реНрдЧ, рдЗ. рдкрд░рд┐рдгрд╛рдореА, fio рд╡рд╛рдкрд░рдгреЗ рдЦреВрдк рдХрдареАрдг рдЖрд╣реЗ. рдпрд╛рдд рдЕрдиреЗрдХ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдЖрд╣реЗрдд рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдореВрд▓реНрдпрд╛рдВрдЪреЗ рд╡реЗрдЧрд╡реЗрдЧрд│реЗ рд╕рдВрдпреЛрдЬрди рдЦреВрдк рднрд┐рдиреНрди I/O рд╡рд░реНрдХрд▓реЛрдб рддрдпрд╛рд░ рдХрд░рддрд╛рдд. etcd рд╕рд╛рдареА рдкреБрд░реЗрд╕реЗ рдЖрдХрдбреЗ рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА, WAL рдлрд╛рдЗрд▓реНрд╕ рд▓рд┐рд╣рд┐рддрд╛рдирд╛ рддреБрдореНрд╣реА fio рд╡рд░реАрд▓ рдЪрд╛рдЪрдгреА рд▓реЗрдЦрди рд▓реЛрдб etcd рд╡рд░реАрд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓реЛрдбрдЪреНрдпрд╛ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рдЬрд╡рд│ рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ.

рдореНрд╣рдгреВрди, fio рдиреЗ, рдХрдореАрдд рдХрдореА, рдлрд╛рдЗрд▓рд╡рд░ рдЕрдиреБрдХреНрд░рдорд┐рдХ рд▓реЗрдЦрдирд╛рдЪреНрдпрд╛ рдорд╛рд▓рд┐рдХреЗрдЪрд╛ рднрд╛рд░ рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдкрд╛рд╣рд┐рдЬреЗ, рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрдЦрдирд╛рдордзреНрдпреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓рдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЕрд╕реЗрд▓. рд▓рд┐рд╣реВрддреНрдпрд╛рдирдВрддрд░ fdatasync рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдпреЗрддреЛ. fio рд▓рд╛ рдЕрдиреБрдХреНрд░рдорд┐рдХ рд▓реЗрдЦрдирд╛рд╕рд╛рдареА --rw=write рдкрд░реНрдпрд╛рдп рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рддреЛ. fio рд╕рд╛рдареА рд▓рд┐рд╣рд┐рддрд╛рдирд╛ рд░рд╛рдИрдЯ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдРрд╡рдЬреА рд▓рд┐рд╣рд╛, рддреБрдореНрд╣реА --ioengine=sync рдкреЕрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ. рд╢реЗрд╡рдЯреА, рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрдЦрдирд╛рдирдВрддрд░ fdatasync рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ --fdatasync=1 рдкреЕрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рддреАрд▓ рдЗрддрд░ рджреЛрди рдкрд░реНрдпрд╛рдп (--рдЖрдХрд╛рд░ рдЖрдгрд┐ -bs) рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрд╣реЗрдд. рдкреБрдвреАрд▓ рд╡рд┐рднрд╛рдЧрд╛рдд, рддреЗ рдХрд╕реЗ рд╕реЗрдЯ рдХрд░рд╛рдпрдЪреЗ рддреЗ рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ рджрд╛рдЦрд╡реВ.

fio рдирдХреНрдХреА рдХрд╛ рдЖрдгрд┐ рдЖрдореНрд╣реА рддреЗ рдХрд╕реЗ рд╕реЗрдЯ рдХрд░рд╛рдпрд▓рд╛ рд╢рд┐рдХрд▓реЛ

рдпрд╛ рдкреЛрд╕реНрдЯрдордзреНрдпреЗ, рдЖрдореНрд╣реА рдПрдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд░рдгрд╛рдЪреЗ рд╡рд░реНрдгрди рдХрд░рддреЛ. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХреНрд▓рд╕реНрдЯрд░ рдЖрд╣реЗ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ v1.13 рдЬреНрдпрд╛рдЪреЗ рдЖрдореНрд╣реА Prometheus рд╕рд╣ рдкрд░реАрдХреНрд╖рдг рдХреЗрд▓реЗ. etcd v3.2.24 SSD рд╡рд░ рд╣реЛрд╕реНрдЯ рдХреЗрд▓реЗ рд╣реЛрддреЗ. рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛рд╣реАрд╣реА рдХрд░рдд рдирд╕рддрд╛рдирд╛рд╣реА, Etcd рдореЗрдЯреНрд░рд┐рдХреНрд╕рдиреЗ fdatasync рд▓реЗрдЯреЗрдВрд╕реА рдЦреВрдк рдЬрд╛рд╕реНрдд рджрд╛рдЦрд╡рд▓реНрдпрд╛. рдореЗрдЯреНрд░рд┐рдХреНрд╕ рд╡рд┐рдЪрд┐рддреНрд░ рд╣реЛрддреЗ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдВрдЪрд╛ рдЕрд░реНрде рдХрд╛рдп рдЖрд╣реЗ рд╣реЗ рдорд╛рд╣рд┐рдд рдирд╡реНрд╣рддреЗ. рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрдиреНрд╕рдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реЛрддрд╛, рд╕рдорд╕реНрдпрд╛ рдХрд╛рдп рдЖрд╣реЗ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддреЗ: рднреМрддрд┐рдХ рдПрд╕рдПрд╕рдбреАрдордзреНрдпреЗ рдХрд┐рдВрд╡рд╛ рдЖрднрд╛рд╕реАрдХрд░рдг рд╕реНрддрд░рд╛рдордзреНрдпреЗ. рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдЖрдореНрд╣реА рдЕрдиреЗрдХрджрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдЖрдгрд┐ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ рдмрджрд▓ рдХреЗрд▓реЗ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдкрд░рд┐рдгрд╛рдорд╛рдВрдЪреЗ рдореВрд▓реНрдпрдорд╛рдкрди рдХрд░рдгреНрдпрд╛рдЪрд╛ рдорд╛рд░реНрдЧ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЖрдореНрд╣реА рдкреНрд░рддреНрдпреЗрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ etcd рдЪрд╛рд▓рд╡реВ рд╢рдХрддреЛ рдЖрдгрд┐ рдкреНрд░реЛрдорд┐рдерд┐рдпрд╕ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдкрд╛рд╣реВ рд╢рдХрддреЛ, рдкрд░рдВрддреБ рддреЗ рдЦреВрдк рддреНрд░рд╛рд╕рджрд╛рдпрдХ рдЖрд╣реЗ. рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдЪреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣реА рдПрдХ рд╕реЛрдкрд╛ рдорд╛рд░реНрдЧ рд╢реЛрдзрдд рд╣реЛрддреЛ. рдЖрдореНрд╣рд╛рд▓рд╛ etcd рдордзреВрди Prometheus рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдмрд░реЛрдмрд░ рд╕рдордЬрддрд╛рдд рдХрд╛ рддреЗ рддрдкрд╛рд╕рд╛рдпрдЪреЗ рд╣реЛрддреЗ.

рдкрдг рддреНрдпрд╛рд╕рд╛рдареА рджреЛрди рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рд╛рд╡реНрдпрд╛ рд▓рд╛рдЧрд▓реНрдпрд╛. рдкреНрд░рдердо, WAL рд▓рд╛ рд▓рд┐рд╣рд┐рддрд╛рдирд╛ etcd рддрдпрд╛рд░ рдХрд░рдгрд╛рд░рд╛ I/O рд▓реЛрдб рдХрд╕рд╛ рджрд┐рд╕рддреЛ? рдХреЛрдгрддреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддрд╛рдд? рд░реЗрдХреЙрд░реНрдбрдЪрд╛ рдЖрдХрд╛рд░ рдХрд┐рддреА рдЖрд╣реЗ? рджреБрд╕рд░реЗ, рдЬрд░ рдЖрдкрдг рдпрд╛ рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рдЙрддреНрддрд░реЗ рджрд┐рд▓реА, рддрд░ рдЖрдкрдг fio рд╕рд╣ рд╕рдорд╛рди рд╡рд░реНрдХрд▓реЛрдб рдХрд╕реЗ рдкреБрдирд░реБрддреНрдкрд╛рджрд┐рдд рдХрд░реВ? fio рд╣реЗ рдЕрдиреЗрдХ рдкрд░реНрдпрд╛рдпрд╛рдВрд╕рд╣ рдЕрддрд┐рд╢рдп рд▓рд╡рдЪрд┐рдХ рд╕рд╛рдзрди рдЖрд╣реЗ рд╣реЗ рд╡рд┐рд╕рд░реВ рдирдХрд╛. рдЖрдореНрд╣реА рджреЛрдиреНрд╣реА рд╕рдорд╕реНрдпрд╛ рдПрдХрд╛рдЪ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рдиреЗ рд╕реЛрдбрд╡рд▓реНрдпрд╛ - рдХрдорд╛рдВрдбреНрд╕ рд╡рд╛рдкрд░реВрди lsof ╨╕ рд╕реНрдЯреНрд░реЗрд╕. lsof рдкреНрд░рдХреНрд░рд┐рдпреЗрджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдлрд╛рдЗрд▓ рд╡рд░реНрдгрдирдХрд░реНрддреНрдпрд╛рдВрдЪреА рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдлрд╛рдЗрд▓реНрд╕рдЪреА рдпрд╛рджреА рдХрд░рддреЗ. рдЖрдгрд┐ рд╕реНрдЯреНрд░реЗрд╕рд╕рд╣, рддреБрдореНрд╣реА рдЖрдзреАрдЪ рдЪрд╛рд▓реВ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪреЗ рдкрд░реАрдХреНрд╖рдг рдХрд░реВ рд╢рдХрддрд╛ рдХрд┐рдВрд╡рд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реВ рдХрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдЪреЗ рдкрд░реАрдХреНрд╖рдг рдХрд░реВ рд╢рдХрддрд╛. strace рддрдкрд╛рд╕рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрддреАрд▓ рд╕рд░реНрд╡ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ (рдЖрдгрд┐ рддреНрдпрд╛рдЪреА рдореВрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛). рдирдВрддрд░рдЪреЗ рдЦреВрдк рдорд╣рддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ, рдХрд╛рд░рдг etcd рдлрдХреНрдд рдПрдХ рд╕рдорд╛рди рджреГрд╖реНрдЯреАрдХреЛрди рдШреЗрдд рдЖрд╣реЗ.

рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рдХреЛрдгрддреЗрд╣реА рд▓реЛрдб рдирд╕рддрд╛рдирд╛ рдЖрдореНрд╣реА рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рд╕рд╛рдареА etcd рд╕рд░реНрд╡реНрд╣рд░ рдПрдХреНрд╕рдкреНрд▓реЛрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рдердо рд╕реНрдЯреНрд░реЗрд╕рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛. рдЖрдореНрд╣реА рдкрд╛рд╣рд┐рд▓реЗ рдХреА рдЬрд╡рд│рдЬрд╡рд│ рд╕рд░реНрд╡ WAL рд░реЗрдХреЙрд░реНрдб рд╕рдорд╛рди рдЖрдХрд╛рд░рд╛рдЪреЗ рд╣реЛрддреЗ: 2200-2400 рдмрд╛рдЗрдЯреНрд╕. рдореНрд╣рдгреВрди, рдкреЛрд╕реНрдЯрдЪреНрдпрд╛ рд╕реБрд░реВрд╡рд╛рддреАрд╕ рдХрдорд╛рдВрдбрдордзреНрдпреЗ, рдЖрдореНрд╣реА рдкреЕрд░рд╛рдореАрдЯрд░ -bs=2300 (bs рдореНрд╣рдгрдЬреЗ рдкреНрд░рддреНрдпреЗрдХ fio рдПрдВрдЯреНрд░реАрд╕рд╛рдареА рдмрд╛рдЗрдЯреНрд╕рдордзреНрдпреЗ рдЖрдХрд╛рд░) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓рд╛ рдЖрд╣реЗ. рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА etcd рдПрдВрдЯреНрд░реАрдЪрд╛ рдЖрдХрд╛рд░ etcd рдЖрд╡реГрддреНрддреА, рд╡рд┐рддрд░рдг, рдкреЕрд░рд╛рдореАрдЯрд░ рдореВрд▓реНрдпреЗ рдЗрддреНрдпрд╛рджреАрдВрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЛ рдЖрдгрд┐ fdatasync рдХрд╛рд▓рд╛рд╡рдзреАрд╡рд░ рдкрд░рд┐рдгрд╛рдо рдХрд░рддреЛ. рддреБрдордЪреНрдпрд╛рдХрдбреЗрд╣реА рдЕрд╢реАрдЪ рдкрд░рд┐рд╕реНрдерд┐рддреА рдЕрд╕рд▓реНрдпрд╛рд╕, рдЕрдЪреВрдХ рд╕рдВрдЦреНрдпрд╛ рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА рддреБрдордЪреНрдпрд╛ etcd рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪреЗ рд╕реНрдЯреНрд░реЗрд╕рд╕рд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░рд╛.

рдордЧ, etcd рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд╛рдп рдХрд░рдд рдЖрд╣реЗ рдпрд╛рдЪреА рдЪрд╛рдВрдЧрд▓реА рдХрд▓реНрдкрдирд╛ рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рддреЗ рд╕реНрдЯреНрд░реЗрд╕ рдЖрдгрд┐ -ffttT рдкрд░реНрдпрд╛рдпрд╛рдВрд╕рд╣ рд╕реБрд░реВ рдХреЗрд▓реЗ. рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдЪрд╛рдЗрд▓реНрдб рдкреНрд░реЛрд╕реЗрд╕реНрд╕ рддрдкрд╛рд╕рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓рд╛ рдЖрдгрд┐ рддреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХрд╛рдЪреЗ рдЖрдЙрдЯрдкреБрдЯ рдПрдХрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдлрд╛рдИрд▓рдордзреНрдпреЗ рд░реЗрдХреЙрд░реНрдб рдХреЗрд▓реЗ рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓рдЪреНрдпрд╛ рдкреНрд░рд╛рд░рдВрдн рдЖрдгрд┐ рдХрд╛рд▓рд╛рд╡рдзреАрдмрджреНрджрд▓ рддрдкрд╢реАрд▓рд╡рд╛рд░ рдЕрд╣рд╡рд╛рд▓ рджреЗрдЦреАрд▓ рдорд┐рд│рд╡рд▓рд╛. рдЖрдореНрд╣реА рд╕реНрдЯреНрд░реЗрд╕ рдЖрдЙрдЯрдкреБрдЯрдЪреНрдпрд╛ рдЖрдордЪреНрдпрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рдЪреА рдкреБрд╖реНрдЯреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдХреЛрдгрддреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рд╕рд╛рдареА рдХреЛрдгрддрд╛ рдлрд╛рдЗрд▓ рд╡рд░реНрдгрдирдХрд░реНрддрд╛ рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рдд рдЖрд╣реЗ рд╣реЗ рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА lsof рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛. рдореНрд╣рдгреВрди рд╕реНрдЯреНрд░реЗрд╕рдЪреНрдпрд╛ рдорджрддреАрдиреЗ, рд╡рд░ рджрд░реНрд╢рд╡рд┐рд▓реЗрд▓реЗ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдЭрд╛рд▓реЗ. рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╡реЗрд│реЗрдЪреНрдпрд╛ рдЖрдХрдбреЗрд╡рд╛рд░реАрдиреЗ рдкреБрд╖реНрдЯреА рдХреЗрд▓реА рдХреА etcd рдХрдбреАрд▓ wal_fsync_duration_seconds рд╣реЗ WAL рдлрд╛рдЗрд▓ рд╡рд░реНрдгрдирдХрд░реНрддреНрдпрд╛рдВрд╕рд╣ fdatasync рдХреЙрд▓рд╢реА рд╕реБрд╕рдВрдЧрдд рдЖрд╣реЗ.

рдЖрдореНрд╣реА fio рд╕рд╛рдареА рдХрд╛рдЧрджрдкрддреНрд░реЗ рдкрд╛рд╣рд┐рд▓реА рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╕рд╛рдареА рдкрд░реНрдпрд╛рдп рдирд┐рд╡рдбрд▓реЗ рдЬреЗрдгреЗрдХрд░реБрди fio рд╕рд╛рд░рдЦреЗ рд▓реЛрдб рддрдпрд╛рд░ рдХрд░реЗрд▓. рдЖрдореНрд╣реА рд╕реНрдЯреНрд░реЗрд╕ рд╡рд░реВрди fio рдЪрд╛рд▓рд╡реВрди рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪрд╛ рдХрд╛рд▓рд╛рд╡рдзреА рджреЗрдЦреАрд▓ рддрдкрд╛рд╕рд▓рд╛, etcd рдкреНрд░рдорд╛рдгреЗрдЪ.

fio рд╡рд░реВрди рд╕рдВрдкреВрд░реНрдг I/O рд▓реЛрдбрдЪреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣реА --size рдкреЕрд░рд╛рдореАрдЯрд░рдЪреЗ рдореВрд▓реНрдп рдХрд╛рд│рдЬреАрдкреВрд░реНрд╡рдХ рдирд┐рд╡рдбрд▓реЗ рдЖрд╣реЗ. рдЖрдордЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рд╕реНрдЯреЛрд░реЗрдЬрд╡рд░ рд▓рд┐рд╣рд┐рд▓реЗрд▓реНрдпрд╛ рдмрд╛рдЗрдЯреНрд╕рдЪреА рд╣реА рдПрдХреВрдг рд╕рдВрдЦреНрдпрд╛ рдЖрд╣реЗ. рд╣реЗ рд▓реЗрдЦрди (рдЖрдгрд┐ fdatasync) рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓рдЪреНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдЪреНрдпрд╛ рдереЗрдЯ рдкреНрд░рдорд╛рдгрд╛рдд рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рджрд┐рд╕реВрди рдЖрд▓реЗ. bs рдЪреНрдпрд╛ рдард░рд╛рд╡рд┐рдХ рдореВрд▓реНрдпрд╛рд╕рд╛рдареА, fdatasync рдХреЙрд▓рдЪреА рд╕рдВрдЦреНрдпрд╛ = рдЖрдХрд╛рд░/bs. рдЖрдореНрд╣рд╛рд▓рд╛ рдкрд░реНрд╕реЗрдВрдЯрд╛рдЗрд▓рдордзреНрдпреЗ рд╕реНрд╡рд╛рд░рд╕реНрдп рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрд░реЗрд╕реЗ рдирдореБрдиреЗ рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддреЗ рдЖрдгрд┐ рдЖрдореНрд╣реА рдЧрдгрдирд╛ рдХреЗрд▓реА рдХреА 10^4 рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рдкреБрд░реЗрд╕реЗ рдЕрд╕реЗрд▓ (рдореНрд╣рдгрдЬреЗ 22 рдореЗрдмреАрдмрд╛рдЗрдЯреНрд╕). --size рд▓рд╣рд╛рди рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдЙрдЯрд▓рд┐рдпрд░реНрд╕ рдпреЗрдК рд╢рдХрддрд╛рдд (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЕрдиреЗрдХ fdatasync рдХреЙрд▓реНрд╕ рдиреЗрд╣рдореАрдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╡реЗрд│ рдШреЗрддрд╛рдд рдЖрдгрд┐ 99 рд╡реНрдпрд╛ рдЯрдХреНрдХреЗрд╡рд╛рд░реАрд╡рд░ рдкрд░рд┐рдгрд╛рдо рдХрд░рддрд╛рдд).

рддреЗ рд╕реНрд╡рддрдГ рдХрд░реВрди рдкрд╣рд╛

рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ fio рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рддреЗ рджрд╛рдЦрд╡рд▓реЗ рдЖрдгрд┐ etcd рдЪрд╛рдВрдЧрд▓реА рдХрд╛рдордЧрд┐рд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдкреБрд░реЗрд╕реЗ рдЬрд▓рдж рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рддреЗ рдкрд╛рд╣рд┐рд▓реЗ. рдЖрддрд╛ рддреБрдореНрд╣реА рддреЗ рд╡рд╛рдкрд░реВрди рд╕реНрд╡рддрдГрд╕рд╛рдареА рд╡рд╛рдкрд░реВрди рдкрд╛рд╣реВ рд╢рдХрддрд╛, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, SSD рд╕реНрдЯреЛрд░реЗрдЬрд╕рд╣ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрди рдЖрдпрдмреАрдПрдо рдХреНрд▓рд╛рдЙрдб.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛