CEPH ááᯠááœá±ážáá»ááºááŒááºážá á¡ááá¯ááºáž 1
áá»áœááºá¯ááºááá¯á·ááœáẠá¡ááœááºáá«ážáá¯á optical switches áááºáá¯á ááŒááºáááºáá¬ážáá±á¬ BGPá SSD áá áºáá«áááºááŸáá·áº á¡áá±á¬ááºááŸáá·áº á¡ááœááºá¡á á¬ážá¡á¬ážáá¯á¶ážá SAS disk á¡á á¯á¶á á¡ááŒáẠproxmox ááŸáá·áº static data á¡á¬ážáá¯á¶ážááᯠáá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯áẠS3 ááá¯ááŸá±á¬ááºááŸá¯ááœáẠááá·áºááœááºážááá¯áá±á¬ááá¹áááŸááá²á·áá«áááºá á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠvirtualization á¡ááœáẠááá¯á¡ááºáááºááá¯ááºáá±á¬áºáááºáž ááẠopensource ááá¯á áá¯á¶ážáááºááŸáá·áº á¡áá¯á¶ážá¡áá áááºááá«ááá¬ááᯠááá¯ááºáá¬áá«á áá»áœááºá¯ááºááᯠá¡ááŸá±á¬áá·áºá¡ááŸááºáá±ážááá·áº áá áºáá¯áááºážáá±á¬ á¡áá¬ááŸá¬ BGP ááŒá áºáááºá ááŒááºááœááºáž BGP áááºážááŒá±á¬ááºážááẠááá¯á¡á¬ážááá¯ážáá¬áá²á·á áá¬áááºáá²á·ááŒá®áž á¡áá»áá·áºáá»ááºáá° ááá¹áá¬áá±á«áºááŸá¬ áááºáá°á០áááŸááá«áá°ážá ááŒá®ážáá±á¬á· ááááºáááŒá¬áááºááŸá¬ áá«ááá¯á· á¡á²áá®áá²ááᯠáá¯ááºáááºážáááºááá¯áᬠáá«áááááºá
á¡áá¯ááºááẠá¡áá±ážá¡ááœá²ááŒá
áºááẠ- CEPH ááŸááááºá ááá¯á·áá±á¬áº áááºážááẠá¡ááœááºá¡áá¯ááºáááŒá
áºáá«á "áá±á¬ááºážááŸá¯" áá¯ááºááá¯á· ááá¯á¡ááºáááºá
áá»áœááºáá±á¬áºáááŸááá²á·áá±á¬ á¡á
á¯á¡áá±ážááẠááœá²ááŒá¬ážáá±á¬á á¡áá»ááºá¡ááŒáẠáá»áááºááŸááá¬ážááŒá®áž áááºááœá±á·ááœáẠááŸááááá«á áááºážááœáẠáá°áá®áá±á¬ ááá¬ážááœááºáá
áºáá¯ááẠá¡á
á¯á¡ááœá²á·áá
áºáá¯ááŸáá·áº á¡áá»á¬ážáá°ááŸá¬ ááœááºáááºááŸá
áºáá¯áá¯á¶ážá¡ááŒá
Ạáá¯ááºáá±á¬ááºááá·áº ááá°áá®áá±á¬ node ááŸá
áºáá¯áá«áááºáááºá node áá»á¬ážááœáẠdisk á¡áá»áá¯ážá¡á
á¬áž áá±ážáá»áá¯ážááŒáá·áº ááŒáá·áºáá±áá«ááẠ- SSD á¡áá»áá¯ážá¡á
á¬áž ááŸá
áºáá»áá¯ážá áá®ážááŒá¬áž áá±áá¬áá»áá¬ážááŸá¯ á
ááºážáá»ááºáž ááŸá
áºáá¯ááŸáá·áº á¡ááœááºá¡á
á¬áž ááá°áá®áá±á¬ HDD á¡áá»áá¯ážá¡á
á¬áž ááŸá
áºáá»áá¯ážááᯠááááá¡á¯ááºá
á¯ááœáẠá
á¯áá±á¬ááºážáá¬ážáááºá ááá°áá®áá±á¬á¡ááœááºá¡á
á¬ážááŸáááŒá¿áá¬ááᯠááá°áá®áá±á¬ OSD á¡áá±ážáá»áááºáá»á¬ážááŒáá·áº ááŒá±ááŸááºážáá²á·áááºá
Setup ááá¯ááºááá¯ááºá ááŸá áºááá¯ááºážááœá²áá¬ážáá«áááº- operating system áá»áááºááŸáááŒááºážá О CEPH ááá¯ááºááá¯áẠáá»áááºááŸáááŒááºážá ááŸáá·áºáááºážááááºáááºáá»á¬ážá
OS á¡ááá·áºááŒáŸáá·áºáááºááŒááºážá
Network
ááŒá¬ááŒáá·áºáá»ááẠááŒá¬ááŒáá·áºáá»áááºááẠááá¯ááºáá°ážááŒááºážááŸáá·áº áááºáá»ááºáá®ááŒááºážááá¯á·ááᯠá¡áá»áá¯ážáááºáá±á¬ááºá á±áááºá ááŸááºáááºážáááºááá·áºá¡áá« - á¡ááŒá¬ážáá±áá¬áá»áá¬ážááŸá¯á¡ááœá²á·áá»á¬ážá០áá±áá¬áá¯á¶áá°áá»á¬ážááᯠá¡á±á¬ááºááŒááºááŒá±á¬ááºáž á¡áááºááŒá¯áááºá¡áá áá±á¬ááºáááºááẠá¡á±á¬ááºááŒááºáá±á¬ááŸááºáááºážáááºááŒááºážááŸáá·áºáááºáááºá áá¯á¶á·ááŒááºááŸá¯ááᯠáááŸááááºááá¯ááºáá±á¬ááŒá±á¬áá·áºááŒá áºáááºá CRUSH ááŒá±áá¯á¶ááŸá áá¯á¶áá°áá»á¬ážááᯠááŒáá·áºáá±ááŒááºážááá¯ááºáᬠá ááºážáá»ááºážáá»á¬ážááẠhost áá áºáá¯áá»áŸáẠáá¯á¶áá°áá áºáá¯ááŒá áºáá±á¬ááŒá±á¬áá·áºá ááœááºáááºááᯠá¡ááŒá²áááºážá¡áá¯á¶ážááŒá¯áá²á·áááºá
ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºáá¯ááºáá±á¬ááºááẠááááá¯á¶ážáá¯á¶ážááŒááºáááºááŸá¬ áááºááŸáááœááºáááºááᯠá¡áááºážááẠááŒá¯ááŒááºááŒá±á¬ááºážáá²áááºááŒá áºááŒá®áž áá áºáá»áááºáááºážááœáẠáá»áœááºá¯ááºá¡á¬áž áá®ážááŒá¬ážááœááºáááºáá»á¬ážááá¯á· ááŒá±á¬ááºážááœáŸá±á·ááẠá ááºážáá¯á¶ážááááºážááœááºážááẠááŒáá¯ážá á¬ážáá±áá«áááºá
á áááºáááºá áá»áœááºá¯ááºááẠááœááºáááºáááºáá»á¬ážá áááºáááºáá»á¬ážááᯠááŒááºáááºáá²á·áááºá áááºážá á®ááŒááºážáá»á¬ážááᯠá áááºáá¯ááºáá±á¬ááºáá²á·áááº-
áá¬ááŒá áºáá¬áá²:
ethtool -l ens1f1
root@ceph01:~# ethtool -l ens1f1
Channel parameters for ens1f1:
Pre-set maximums:
RX: 0
TX: 0
Other: 1
Combined: 63
Current hardware settings:
RX: 0
TX: 0
Other: 1
Combined: 1
root@ceph01:~# ethtool -g ens1f1
Ring parameters for ens1f1:
Pre-set maximums:
RX: 4096
RX Mini: 0
RX Jumbo: 0
TX: 4096
Current hardware settings:
RX: 256
RX Mini: 0
RX Jumbo: 0
TX: 256
root@ceph01:~# ethtool -l ens1f1
Channel parameters for ens1f1:
Pre-set maximums:
RX: 0
TX: 0
Other: 1
Combined: 63
Current hardware settings:
RX: 0
TX: 0
Other: 1
Combined: 1
áááºááŸá ááá·áºáááºáá»ááºáá»á¬ážááẠá¡ááŒáá·áºáá¯á¶ážááŸáá·áº áá±ážááœá¬áááºááᯠááœá±á·ááŒááºááá¯ááºáááºá ááá¯ážáá¬áááº-
root@ceph01:~#ethtool -G ens1f0 rx 4096
root@ceph01:~#ethtool -G ens1f0 tx 4096
root@ceph01:~#ethtool -L ens1f0 combined 63
áá±á¬ááºážááœááºáá±á¬ áá±á¬ááºážáá«ážááŒáá·áº áááºážááœáŸááºáá¬ážáááºá
ááá¯á·ááá·áºáááºážá á®á á¡ááŸááºááᯠááá¯ážáá¬áááºá txqueuelen 1000 á០10 á¡áá
root@ceph01:~#ip link set ens1f0 txqueuelen 10000
áá±á¬ááºážááŒá®á ceph ááá¯ááºááá¯ááºáá á¬ááœááºá á¬áááºážáá»á¬ážááá¯ááá¯ááºáá¬áá«á
ááá¯ážáá¬áááºá áááá¹á 9000 áááºá
root@ceph01:~#ip link set dev ens1f0 mtu 9000
á¡áááºáá±á¬áºááŒáá« á¡á¬ážáá¯á¶ážááᯠá áááºáá»áááºááœáẠáááºááá¯ááºá á±ááẠ/etc/network/interfaces ááá¯á· áá±á«ááºážááá·áºáá¬ážáááºá
cat / etc / network / interfaces
root@ceph01:~# cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto ens1f0
iface ens1f0 inet manual
post-up /sbin/ethtool -G ens1f0 rx 4096
post-up /sbin/ethtool -G ens1f0 tx 4096
post-up /sbin/ethtool -L ens1f0 combined 63
post-up /sbin/ip link set ens1f0 txqueuelen 10000
mtu 9000
auto ens1f1
iface ens1f1 inet manual
post-up /sbin/ethtool -G ens1f1 rx 4096
post-up /sbin/ethtool -G ens1f1 tx 4096
post-up /sbin/ethtool -L ens1f1 combined 63
post-up /sbin/ip link set ens1f1 txqueuelen 10000
mtu 9000
ááá¯á·áá±á¬áẠáá°áá®áá±á¬áá±á¬ááºážáá«ážááᯠááá¯ááºáá¬ááŒá®ážáá±á¬ááºá áá»áœááºá¯ááºááẠ4.15 kernel á áááºááá¯ááºáá»á¬ážááᯠá ááºážáá²á áœá¬ ááŸáá·áºáááºáá¬áááºá node áá»á¬ážááœáẠ128G RAM ááŸááááºááᯠááá·áºááœááºážá ááºážá á¬ážááŒááºážááŒáá·áºá áá»áœááºá¯ááºááá¯á·á¡ááœáẠconfiguration file áá áºáá¯ááŒáá·áº á¡áá¯á¶ážáááºáá²á·áááºá sysctl
ááŒá±á¬áẠ/etc/sysctl.d/50-ceph.conf
net.core.rmem_max = 56623104
#ÐакÑОЌалÑÐœÑй ÑÐ°Ð·ÐŒÐµÑ Ð±ÑÑеÑа пÑОеЌа ЎаММÑÑ
ÐŽÐ»Ñ Ð²ÑеÑ
ÑПеЎОМеМОй 54M
net.core.wmem_max = 56623104
#ÐакÑОЌалÑÐœÑй ÑÐ°Ð·ÐŒÐµÑ Ð±ÑÑеÑа пеÑеЎаÑО ЎаММÑÑ
ÐŽÐ»Ñ Ð²ÑеÑ
ÑПеЎОМеМОй 54M
net.core.rmem_default = 56623104
#Ð Ð°Ð·ÐŒÐµÑ Ð±ÑÑеÑа пÑОеЌа ЎаММÑÑ
пП ÑЌПлÑÐ°ÐœÐžÑ ÐŽÐ»Ñ Ð²ÑеÑ
ÑПеЎОМеМОй. 54M
net.core.wmem_default = 56623104
#Ð Ð°Ð·ÐŒÐµÑ Ð±ÑÑеÑа пеÑеЎаÑО ЎаММÑÑ
пП ÑЌПлÑÐ°ÐœÐžÑ ÐŽÐ»Ñ Ð²ÑеÑ
ÑПеЎОМеМОй 54M
# Ма кажЎÑй ÑПкеÑ
net.ipv4.tcp_rmem = 4096 87380 56623104
#ÐекÑПÑÐœÐ°Ñ (ЌОМОЌÑÐŒ, пП ÑЌПлÑаМОÑ, ЌакÑОЌÑÐŒ) пеÑÐµÐŒÐµÐœÐœÐ°Ñ Ð² Ñайле tcp_rmem
# ÑПЎеÑÐ¶ÐžÑ 3 ÑелÑÑ
ÑОÑла, ПпÑеЎелÑÑÑОÑ
ÑÐ°Ð·ÐŒÐµÑ Ð¿ÑОеЌМПгП бÑÑеÑа ÑПкеÑПв TCP.
# ÐОМОЌÑÐŒ: кажЎÑй ÑÐŸÐºÐµÑ TCP ÐžÐŒÐµÐµÑ Ð¿ÑавП ОÑпПлÑзПваÑÑ ÑÑÑ Ð¿Ð°ÐŒÑÑÑ Ð¿ÐŸ
# ÑакÑÑ ÑвПегП ÑПзЎаМОÑ. ÐПзЌПжМПÑÑÑ ÐžÑпПлÑÐ·ÐŸÐ²Ð°ÐœÐžÑ ÑакПгП бÑÑеÑа
# гаÑаМÑОÑÑеÑÑÑ ÐŽÐ°Ð¶Ðµ пÑО ЎПÑÑОжеМОО пПÑПга ПгÑаМОÑÐµÐœÐžÑ (moderate memory pressure).
# Ð Ð°Ð·ÐŒÐµÑ ÐŒÐžÐœÐžÐŒÐ°Ð»ÑМПгП бÑÑеÑа пП ÑЌПлÑÐ°ÐœÐžÑ ÑПÑÑавлÑÐµÑ 8 ÐÐ±Ð°Ð¹Ñ (8192).
#ÐМаÑеМОе пП ÑЌПлÑаМОÑ: кПлОÑеÑÑвП паЌÑÑО, ЎПпÑÑÑОЌПе ÐŽÐ»Ñ Ð±ÑÑеÑа
# пеÑеЎаÑО ÑПкеÑа TCP пП ÑЌПлÑаМОÑ. ÐÑП зМаÑеМОе пÑОЌеМÑеÑÑÑ Ð²Ð·Ð°ÐŒÐµÐœ
# паÑаЌеÑÑа /proc/sys/net/core/rmem_default, ОÑпПлÑзÑеЌПгП ÐŽÑÑгОЌО пÑПÑПкПлаЌО.
# ÐМаÑеМОе ОÑпПлÑзÑеЌПгП пП ÑЌПлÑÐ°ÐœÐžÑ Ð±ÑÑеÑа ПбÑÑМП (пП ÑЌПлÑаМОÑ)
# ÑПÑÑавлÑÐµÑ 87830 байÑ. ÐÑП ПпÑеЎелÑÐµÑ ÑÐ°Ð·ÐŒÐµÑ ÐŸÐºÐœÐ° 65535 Ñ
# заЎаММÑÐŒ пП ÑЌПлÑÐ°ÐœÐžÑ Ð·ÐœÐ°ÑеМОеЌ tcp_adv_win_scale О tcp_app_win = 0,
# МеÑкПлÑкП ЌеМÑÑОй, МежелО ПпÑеЎелÑÐµÑ Ð¿ÑОМÑÑПе пП ÑЌПлÑÐ°ÐœÐžÑ Ð·ÐœÐ°ÑеМОе tcp_app_win.
# ÐакÑОЌÑÐŒ: ЌакÑОЌалÑÐœÑй ÑÐ°Ð·ÐŒÐµÑ Ð±ÑÑеÑа, кПÑПÑÑй ÐŒÐŸÐ¶ÐµÑ Ð±ÑÑÑ Ð°Ð²ÑПЌаÑОÑеÑкО
# вÑЎелеМ ÐŽÐ»Ñ Ð¿ÑОеЌа ÑПкеÑÑ TCP. ÐÑП зМаÑеМОе Ме ПÑЌеМÑÐµÑ ÐŒÐ°ÐºÑОЌÑЌа,
# заЎаММПгП в Ñайле /proc/sys/net/core/rmem_max. ÐÑО «ÑÑаÑОÑеÑкПЌ»
# вÑЎелеМОО паЌÑÑО Ñ Ð¿ÐŸÐŒÐŸÑÑÑ SO_RCVBUF ÑÑÐŸÑ Ð¿Ð°ÑаЌеÑÑ ÐœÐµ ÐžÐŒÐµÐµÑ Ð·ÐœÐ°ÑеМОÑ.
net.ipv4.tcp_wmem = 4096 65536 56623104
net.core.somaxconn = 5000
# ÐакÑОЌалÑМПе ÑОÑлП ПÑкÑÑÑÑÑ
ÑПкеÑПв, жЎÑÑОÑ
ÑПеЎОМеМОÑ.
net.ipv4.tcp_timestamps=1
# РазÑеÑÐ°ÐµÑ ÐžÑпПлÑзПваМОе вÑеЌеММÑÑ
ЌеÑПк (timestamps), в ÑППÑвеÑÑÑвОО Ñ RFC 1323.
net.ipv4.tcp_sack=1
# РазÑеÑОÑÑ Ð²ÑбПÑПÑÐœÑе пПЎÑвеÑÐ¶ÐŽÐµÐœÐžÑ Ð¿ÑПÑПкПла TCP
net.core.netdev_max_backlog=5000 (ЎеÑÐŸÐ»Ñ 1000)
# ЌакÑОЌалÑМПе кПлОÑеÑÑвП пакеÑПв в ПÑеÑеЎО Ма ПбÑабПÑкÑ, еÑлО
# ОМÑеÑÑÐµÐ¹Ñ Ð¿ÐŸÐ»ÑÑÐ°ÐµÑ Ð¿Ð°ÐºÐµÑÑ Ð±ÑÑÑÑее, ÑеЌ ÑÐŽÑП ÐŒÐŸÐ¶ÐµÑ ÐžÑ
ПбÑабПÑаÑÑ.
net.ipv4.tcp_max_tw_buckets=262144
# ÐакÑОЌалÑМПе ÑОÑлП ÑПкеÑПв, МаÑ
ПЎÑÑОÑ
ÑÑ Ð² ÑПÑÑПÑМОО TIME-WAIT ПЎМПвÑеЌеММП.
# ÐÑО пÑевÑÑеМОО ÑÑПгП пПÑПга â «лОÑМОй» ÑÐŸÐºÐµÑ ÑазÑÑÑаеÑÑÑ Ðž пОÑеÑÑÑ
# ÑППбÑеМОе в ÑОÑÑеЌМÑй жÑÑМал.
net.ipv4.tcp_tw_reuse=1
#РазÑеÑаеЌ пПвÑПÑМПе ОÑпПлÑзПваМОе TIME-WAIT ÑПкеÑПв в ÑлÑÑаÑÑ
,
# еÑлО пÑПÑПкПл ÑÑОÑÐ°ÐµÑ ÑÑП безПпаÑÐœÑÐŒ.
net.core.optmem_max=4194304
#УвелОÑОÑÑ ÐŒÐ°ÐºÑОЌалÑÐœÑй ПбÑОй бÑÑеÑ-кПÑЌОÑеÑкПй ALLOCATABLE
#ОзЌеÑÑеÑÑÑ Ð² еЎОМОÑаÑ
ÑÑÑÐ°ÐœÐžÑ (4096 байÑ)
net.ipv4.tcp_low_latency=1
#РазÑеÑÐ°ÐµÑ ÑÑÐµÐºÑ TCP/IP ПÑЎаваÑÑ Ð¿ÑеЎпПÑÑеМОе ÐœÐžÐ·ÐºÐŸÐŒÑ Ð²ÑеЌеМО ПжОЎаМОÑ
# пеÑеЎ бПлее вÑÑПкПй пÑПпÑÑкМПй ÑпПÑПбМПÑÑÑÑ.
net.ipv4.tcp_adv_win_scale=1
# ÐÑа пеÑÐµÐŒÐµÐœÐœÐ°Ñ Ð²Ð»ÐžÑÐµÑ ÐœÐ° вÑÑОÑлеМОе ПбÑеЌа паЌÑÑО в бÑÑеÑе ÑПкеÑа,
# вÑЎелÑеЌПй пПЎ ÑÐ°Ð·ÐŒÐµÑ TCP-ПкМа О пПЎ бÑÑÐµÑ Ð¿ÑОлПжеМОÑ.
# ÐÑлО велОÑОМа tcp_adv_win_scale ПÑÑОÑаÑелÑМаÑ, ÑП ÐŽÐ»Ñ Ð²ÑÑОÑÐ»ÐµÐœÐžÑ ÑазЌеÑа
# ОÑпПлÑзÑеÑÑÑ ÑлеЎÑÑÑее вÑÑажеМОе:
# Bytes- bytes2в ÑÑепеМО -tcp_adv_win_scale
# ÐЎе bytes â ÑÑП ÑÐ°Ð·ÐŒÐµÑ ÐŸÐºÐœÐ° в байÑаÑ
. ÐÑлО велОÑОМа tcp_adv_win_scale
# пПлПжОÑелÑМаÑ, ÑП ÐŽÐ»Ñ ÐŸÐ¿ÑÐµÐŽÐµÐ»ÐµÐœÐžÑ ÑазЌеÑа ОÑпПлÑзÑеÑÑÑ ÑлеЎÑÑÑее вÑÑажеМОе:
# Bytes- bytes2в ÑÑепеМО tcp_adv_win_scale
# ÐеÑÐµÐŒÐµÐœÐœÐ°Ñ Ð¿ÑÐžÐœÐžÐŒÐ°ÐµÑ ÑелПе зМаÑеМОе. ÐМаÑеМОе пП-ÑЌПлÑÐ°ÐœÐžÑ â 2,
# Ñ.е. пПЎ бÑÑÐµÑ Ð¿ÑÐžÐ»ÐŸÐ¶ÐµÐœÐžÑ ÐŸÑвПЎОÑÑÑ ÂŒ ÑаÑÑÑ ÐŸÐ±ÑеЌа, ПпÑеЎелÑеЌПгП пеÑеЌеММПй
# tcp_rmem.
net.ipv4.tcp_slow_start_after_idle=0
# ЌеÑ
аМОзЌ пеÑезапÑÑка ЌеЎлеММПгП ÑÑаÑÑа, кПÑПÑÑй ÑбÑаÑÑÐ²Ð°ÐµÑ Ð·ÐœÐ°ÑеМОе ПкМа
# пеÑегÑÑзкО, еÑлО ÑПеЎОМеМОе Ме ОÑпПлÑзПвалПÑÑ Ð·Ð°ÐŽÐ°ÐœÐœÑй пеÑОПЎ вÑеЌеМО.
# ÐÑÑÑе ПÑклÑÑОÑÑ SSR Ма ÑеÑвеÑе, ÑÑÐŸÐ±Ñ ÑлÑÑÑОÑÑ Ð¿ÑПОзвПЎОÑелÑМПÑÑÑ
# ЎПлгПжОвÑÑОÑ
ÑПеЎОМеМОй.
net.ipv4.tcp_no_metrics_save=1
#Ðе ÑПÑ
ÑаМÑÑÑ ÑезÑлÑÑаÑÑ ÐžÐ·ÐŒÐµÑеМОй TCP ÑÐŸÐµÐŽÐžÐœÐµÐœÐžÑ Ð² кеÑе пÑО егП закÑÑÑОО.
net.ipv4.tcp_syncookies=0
#ÐÑклÑÑОÑÑ ÐŒÐµÑ
аМОзЌ ПÑпÑавкО syncookie
net.ipv4.tcp_ecn=0
#Explicit Congestion Notification (ЯвМПе УвеЎПЌлеМОе П ÐеÑегÑÑжеММПÑÑО) в
# TCP-ÑПеЎОМеМОÑÑ
. ÐÑпПлÑзÑеÑÑÑ ÐŽÐ»Ñ ÑÐ²ÐµÐŽÐŸÐŒÐ»ÐµÐœÐžÑ ÐŸ вПзМОкМПвеМОО «заÑПÑа»
# Ма ЌаÑÑÑÑÑе к Ð·Ð°ÐŽÐ°ÐœÐœÐŸÐŒÑ Ñ
ПÑÑÑ ÐžÐ»Ðž ÑеÑО. ÐÐŸÐ¶ÐµÑ ÐžÑпПлÑзПваÑÑÑÑ ÐŽÐ»Ñ ÐžÐ·Ð²ÐµÑеМОÑ
# Ñ
ПÑÑа-ПÑпÑавОÑÐµÐ»Ñ ÐŸ МеПбÑ
ПЎОЌПÑÑО ÑМОзОÑÑ ÑкПÑПÑÑÑ Ð¿ÐµÑеЎаÑО пакеÑПв ÑеÑез
# кПМкÑеÑÐœÑй ЌаÑÑÑÑÑОзаÑÐŸÑ ÐžÐ»Ðž бÑаМЎЌаÑÑÑ.
net.ipv4.conf.all.send_redirects=0
# вÑклÑÑÐ°ÐµÑ Ð²ÑЎаÑÑ ICMP Redirect ⊠ЎÑÑгОЌ Ñ
ПÑÑаЌ. ÐÑа ПпÑÐžÑ ÐŸÐ±ÑзаÑелÑМП
# ЎПлжМа бÑÑÑ Ð²ÐºÐ»ÑÑеМа, еÑлО Ñ
ПÑÑ Ð²ÑÑÑÑÐ¿Ð°ÐµÑ Ð² ÑПлО ЌаÑÑÑÑÑОзаÑПÑа лÑбПгП ÑПЎа.
# У ÐœÐ°Ñ ÐœÐµÑ ÐŒÐ°ÑÑÑÑÑОзаÑОО.
net.ipv4.ip_forward=0
#СПпÑМП ПÑклÑÑеМОе ÑПÑваÑЎОМга. ÐÑ ÐœÐµ ÑлÑз, ÐŽÐŸÐºÐµÑ ÐœÐ° ЌаÑОМаÑ
Ме пПЎМÑÑ,
# МаЌ ÑÑП Ме ÐœÑжМП.
net.ipv4.icmp_echo_ignore_broadcasts=1
#Ðе ПÑвеÑаеЌ Ма ICMP ECHO запÑПÑÑ, пеÑеЎаММÑе ÑОÑПкПвеÑаÑелÑÐœÑЌО пакеÑаЌО
net.ipv4.tcp_fin_timeout=10
#ПпÑеЎелÑÐµÑ Ð²ÑÐµÐŒÑ ÑПÑ
ÑÐ°ÐœÐµÐœÐžÑ ÑПкеÑа в ÑПÑÑПÑМОО FIN-WAIT-2 пПÑле егП
# закÑÑÑÐžÑ Ð»ÐŸÐºÐ°Ð»ÑМПй ÑÑПÑПМПй. ÐеÑÐŸÐ»Ñ 60
net.core.netdev_budget=600 # (ЎеÑÐŸÐ»Ñ 300)
# ÐÑлО вÑпПлМеМОе пÑПгÑаЌЌМÑÑ
пÑеÑÑваМОй Ме вÑпПлМÑÑÑÑÑ ÐŽÐŸÑÑаÑПÑМП ЎПлгП,
# ÑП ÑеЌп ÑПÑÑа вÑ
ПЎÑÑОÑ
ЎаММÑÑ
ÐŒÐŸÐ¶ÐµÑ Ð¿ÑевÑÑОÑÑ Ð²ÐŸÐ·ÐŒÐŸÐ¶ÐœÐŸÑÑÑ ÑÐŽÑа
# ПпÑÑÑПÑОÑÑ Ð±ÑÑеÑ. Ð ÑезÑлÑÑаÑе бÑÑеÑÑ NIC пеÑепПлМÑÑÑÑ, О ÑÑаÑОк бÑÐŽÐµÑ Ð¿ÐŸÑеÑÑÐœ.
# ÐМПгЎа, МеПбÑ
ПЎОЌП ÑвелОÑОÑÑ ÐŽÐ»ÐžÑелÑМПÑÑÑ ÑабПÑÑ SoftIRQs
# (пÑПгÑаЌЌМÑÑ
пÑеÑÑваМОй) Ñ CPU. Ðа ÑÑП ПÑвеÑÐ°ÐµÑ netdev_budget.
# ÐМаÑеМОе пП ÑЌПлÑÐ°ÐœÐžÑ 300. ÐаÑаЌеÑÑ Ð·Ð°ÑÑÐ°Ð²ÐžÑ Ð¿ÑПÑеÑÑ SoftIRQ ПбÑабПÑаÑÑ
# 300 пакеÑПв ÐŸÑ NIC пеÑеЎ ÑеЌ как ПÑпÑÑÑОÑÑ CPU
net.ipv4.tcp_fastopen=3
# TFO TCP Fast Open
# еÑлО О ÐºÐ»ÐžÐµÐœÑ Ðž ÑеÑÐ²ÐµÑ ÐžÐŒÐµÑÑ Ð¿ÐŸÐŽÐŽÐµÑÐ¶ÐºÑ TFO, П кПÑПÑПй ÑППбÑаÑÑ Ð·Ð° ÑÑеÑ
# ÑпеÑОалÑМПгП Ñлага в TCP пакеÑе. РМаÑеЌ ÑлÑÑае ÑвлÑеÑÑÑ Ð¿Ð»Ð°ÑебП, пÑПÑÑП
# вÑглÑÐŽÐžÑ ÐºÑаÑОвП)
Сáá±á¬ááºááá±á¬ááœááºááẠáá®ážááŒá¬áž 10Gbps ááœááºááẠá¡ááºáá¬áá±á·á áºáá»á¬ážáá±á«áºááœáẠáá®ážááŒá¬ážááŒá¬ážáá»ááºáá»ááºááœááºáááºáá áºáá¯á¡ááŒá Ạááœá²áá±áá±ážáá²á·áááºá á ááºááá¯ááºážááœáẠdual-port network cards áá»á¬ážáááºáááºáá¬ážáá«áááºá mellanox 10/25 Gbpsá áá®ážááŒá¬áž 10Gbps ááá¯ááºááŸá áºáá¯ááœáẠááááºááá¯ážáá¬ážáááºá á¡ááŒá±á¬ááºážáá áºáá¯áá¯ááŒá±á¬áá·áº lacp ááŸáá·áº áá»áááºáááºááŒááºážááœáẠáá±á«ááºážá ááºážááŒááºážááŸá¬ á¡áá»á¬ážáá¯á¶áž 16 Gbps ááŸáááŒá®áž ospf ááẠá ááºáá áºáá¯á á®ááœáẠáááºááááºážááŸá áºáá¯áá¯á¶ážááᯠá¡á±á¬ááºááŒááºá áœá¬á¡áá¯á¶ážááŒá¯ááá¯ááºáá²á·áá±á¬áºáááºáž ospf ááẠá¡ááŒá±á¬ááºážáááºážáá áºáá¯áá¯ááŒá±á¬áá·áº áá±á«ááºážá ááºááŒááºážááᯠáá¯ááºáá±á¬ááºáá²á·áááºá á á±á¬áá·áºááá¯ááºážáá±áá»áááºááᯠáá»áŸá±á¬á·áá»áááºá¡ááœáẠá¡áá¬áááºá¡á á®á¡á ááºáá»á¬ážááẠဠmelanoxes áá»á¬ážáá±á«áºááŸá ROCE á á¡áá»áá¯ážáá»á±ážáá°ážááᯠá¡áá¯á¶ážáá»áááºááŒá áºáááºá ááœááºáááºá á€á¡ááá¯ááºážááᯠáááºááá¯á·áááºááŸááºááááºáááºážá
- á
ááºáá»á¬ážááœáẠBGP ááœáẠááŒááºá IP ááááºá
á¬áá»á¬áž ááŸááá±áá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·ááºáá² ááá¯á¡ááºáááº- (ááááááááŒá±á¬áááẠáá®áá±á¬ááºážáá«ážáá±ážáá²á· á¡áá»áááºáá¯ááºážááá±á«á·á
frr=6.0-1 ) áááºáá±ááŒá®á - á á¯á á¯áá±á«ááºážá á ááºáá»á¬ážááœáẠá¡ááºáá¬áá±á·á áºááŸá áºáá¯á áá áºáá¯á á®ááœáẠá¡ááºáá¬áá±á·á áºááŸá áºáá¯áá«ááŸáááẠ- á á¯á á¯áá±á«ááºáž port 4 áá¯ááŸááááºá ááœááºáááºáááºáá áºáá¯ááẠááááºáááºážááŸá áºáá¯áá«áá±á¬ á ááºáá¯á¶ááá¯ááŒáá·áºááŸá¯ááŒá®áž áááºážááœáẠBGP ááᯠââáá¯á¶áá±á¬áºáá¬ážáááºá áá¯ááááá áºáá¯ááẠááá°áá®áá±á¬ ááá¯ááºááŸá áºáá¯ááᯠááááºáááºážááŸá áºáá¯ááŒáá·áº ááŒáá·áºááŸá¯ááŒá®áž OSPF ááᯠáááºážááœáẠáááºááŸááºáá±ážáá¬ážáááºá
OSPF á
áá
áºááá·áºááœááºážááŒááºážááá¯ááºáᬠáá±á¬ááºáááºá¡áá±ážá
áááºá¡áá»ááºáá»á¬áž- á¡ááááá¬áááºááŸá¬ ááá·áºááºááŸá
áºáá¯ááᯠáá±á«ááºážá
ááºážáááºááŸáá·áº á¡ááŸá¬ážáá¶ááá¯ááºáááºááŸááááºááŒá
áºáááºá
ááœááºáááºá¡ááºáá¬áá±á·á
áºááŸá
áºáá¯ááᯠááá¯ážááŸááºážáá±á¬ ááœááºáááºááŸá
áºáá¯á¡ááŒá
ẠááŒááºáááºáááºááŸááºáá¬ážááẠ- 10.10.10.0/24 ááŸáá·áº 10.10.20.0/24
1: ens1f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
inet 10.10.10.2/24 brd 10.10.10.255 scope global ens1f0
2: ens1f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
inet 10.10.20.2/24 brd 10.10.20.255 scope global ens1f1
áááºáá¬ážááœá±á á¡áá»ááºážáá»ááºážááœá±á·áá²á
DISK
áá±á¬ááºáá
áºááá·áºááŸá¬ disk áá»á¬ážááᯠoptimize áá¯ááºáááºááŒá
áºáááºá SSD á¡ááœáẠáá»áœááºá¯ááºááẠá¡áá»áááºááá¬ážááᯠááŒá±á¬ááºážáá²áá²á·áááºá áá±á¬á·HDD á¡ááœáẠ- áááºááŸááºáá±á¬ááºáá¯á¶ážá¡áá»áááº. ááŒááºááŒááºáá¬ážáá¬ážááŒá±á¬ááá»áŸáẠNOOP ááẠá¡ááºá¹áááááºááᯠâFIFO (First In, First Out)â áá°áá±á¬ áááá¬áááœáẠá¡áá¯ááºáá¯ááºáá«áááºá áá±á¬ááºážááá¯ááŸá¯áá»á¬áž áá±á¬ááºááŸááá¬áá»áááºááœáẠáááºážá
á®áá±áá«áááºá DEADLINE ááẠááá¯ááá¯áááºááŸá¯ááẠáŠážáááºáááºá ááá¯á·á¡ááŒáẠáááºážá
á®áá¬ážáá±á¬ áá¯ááºáááºážá
ááºááẠáááºáááºáá»áááºááœáẠáá
áºááᯠáá®ážááá·áºáááºáá±á¬ááºááœáá·áºáá®ážáá«áž áááŸááá«áááºá áááºážááẠáá»áœááºá¯ááºááá¯á·áá
áá
áºá¡ááœáẠááŒá®ážááŒáá·áºá
á¯á¶ááẠ- á¡ááŸááºáá±á¬á·á áá¯ááºáááºážá
ááºáá
áºáá¯ááẠdisk áá
áºáá¯á
á®ááœááºáᬠáá¯ááºáá±á¬ááºááẠ- OSD daemoná
(I/O á¡áá»áááºááá¬ážááᯠá
á°ážá
ááºážááá¯áá°áá»á¬áž á€áá±áá¬ááœáẠáááºááŸá¯ááá¯ááºáá«áááºá
áá¯ááŸá¬ážáá¬áá¬ááŒáá·áº á
á¬áááºáá«ááá¬áá«áá°áá»á¬ážá
Linux ááᯠáá»áááºááŸáááŒááºážá¡ááœáẠá¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááœáẠnr_request ááᯠááá¯ážááŒáŸáá·áºááẠá¡ááŒá¶ááŒá¯áá¬ážáááºá
nr_áá±á¬ááºážááá¯áá»ááºáá»á¬áž
nr_requests ááááºááá¯ážááẠI/O á¡á á®á¡á ááºááœá²áá°á០ááááºááá¯á·áááááá¬ááá¯á· áá±áá¬áá±ážááá¯á·ááŒááºáž/áááºáá¶ááŒááºážáááŒá¯áá®ááœáẠI/O áá±á¬ááºážáá¶ááŸá¯ááá¬áááᯠáá¯á¶ážááŒááºáá±ážáááºá á¡áááºá áááºááẠRAID áááº/ Block Device ááẠááá¯ááŒá®ážáá±á¬ áááºážá á®ááŒááºážááᯠááá¯ááºááœááºááá¯ááºáá±á¬ RAID áááºááᯠá¡áá¯á¶ážááŒá¯áá±áá«áá /O á¡áá»áááºááá¬ážááᯠáááºááŸááºáá¬ážáááºá nr_requests áá»á¬ážááááºááá¯ážááᯠááŒáŸáá·áºáááºááŒááºážááẠáá¬áá¬áá±á«áºááœáẠI/O ááá¬ááá»á¬ážááŒá¬ážáá¬áá±á¬á¡áá«ááœáẠáá¬áá¬áááºá¡á¬áž ááŒáŸáá·áºáááºáááºááŸáá·áº áá»áŸá±á¬á·áá»ááẠáá°áá®áá±ážááá¯ááºáá«áááºá áááºááẠDeadline ááá¯á·ááá¯áẠCFQ ááᯠá¡áá»áááºááá¬ážáá±ážááœá²áá°á¡ááŒá Ạá¡áá¯á¶ážááŒá¯áá±áá«á nr_request áááºááá¯ážááᯠáááºážá á®á¡ááááºá¡áááºááááºááá¯ážá 2 áá¡ááŒá ẠáááºááŸááºááá·áºáááºáᯠá¡ááŒá¶ááŒá¯áá¬ážáááºá
áá«áá±ááá·áº! ááá¯ááºáá¶áá¬ážáá»á¬ážááá¯ááºááá¯ááºá CEPH á developer áá»á¬ážá áááºážááá¯á·á áŠážá á¬ážáá±ážá áá áºááẠááá¯áá±á¬ááºážáááºáᯠáá»áœááºá¯ááºááá¯á·ááᯠáá¯á¶ááŒááºáá«áááºá
WBThrottle ááŸáá·áº/ááá¯á·ááá¯áẠnr_requestsáá»á¬áž
WBThrottle ááŸáá·áº/ááá¯á·ááá¯áẠnr_requestsáá»á¬áž
ááá¯ááºááá¯ááŸá±á¬ááºááŸá¯ááœáẠá á¬áá±ážáááºá¡ááœáẠbuffered I/O ááá¯á¡áá¯á¶ážááŒá¯áááºá ááá¯ááºááá¯ááŸá±á¬ááºááŸá¯ ááŸááºáááºážááẠááá¯ááá¯ááŒááºáááºáá±á¬ áá®áá®áá¬áá±á«áºááœáẠááŸááá±áá«á áááºážááẠá¡áá»áá¯ážáá»á±ážáá°ážáá»á¬ážá áœá¬ááᯠáááŸáá á±áá«áááºá áá±áá¬ááŸááºáááºážááœáẠáá±ážááŸááºááŒá®ážáááºááŸáá·áº Client áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠá¡ááŒá±á¬ááºážááŒá¬ážááŒá®áž á ᶠLinux áá¯ááºáá±á¬ááºáá»ááºááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž áá±á¬ááºááá¯ááºážááœáẠáá±áá¬áá áºááºááá¯á· ááœáŸáá·áºáá áºááá¯ááºáááºá áááºážááẠspindle OSDs áá»á¬ážá¡ááœáẠSSDs áá»á¬ážáá²á·ááá¯á· áá±ážáááºá¡áá»áááºááᯠáá±ážá áœááºážááá¯ááºá á±áá«áááºá á€ááŸá±á¬áá·áºááŸá±ážáá±á¬á á¬ááŒááºáá±ážááŒááºážááẠkernel ááá¯ááºááá¯ááºá áááºážááá¯á·ááᯠáá±á«ááºážá ááºážááŒááºáž ááá¯á·ááá¯áẠááŸáááŒá®ážáá¬áž disk áá±á«ááºážáá»á¬ážááᯠáááºážááá¯á·ááááºážáááºáá»á¬ážáá±á«áºááœáẠááá¯ááá¯ááá·áºáá»á±á¬áºáá±á¬áááºážááŒá±á¬ááºážá¡áá»áá¯á·ááᯠááœá±ážáá»ááºááœáá·áºáá±ážáááºáá»áŸá±á¬áºááá·áºáá»ááºááŒáá·áº disk I/O áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠááŒááºáááºááœá²á·á ááºážááá¯ááºá á±áá«áááºá á¡áá¬ážáááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááẠááá¯ááºááá¯áẠááá¯á·ááá¯áẠáááºáá°áá»áá±á¬ I/O ááŒáá·áº ááŒá áºááá¯ááºáááºááẠáá áºáá áºáá¯á á®á០I/O ááᯠá¡áááºážáááºááá¯áááŸá áºáá¯ááºááá¯ááºááŒááºážááŒá áºáááºá
ááá¯á·áá¬ááœááºá áá±ážáá¬ážáá±á¬ Ceph á¡á á¯á¡áá±ážááá¯á· áááºáá¬ááá·áº ááŸááºáááºážáá»á¬ážá ááá¬áááẠá¡áááºážáᶠdisk áá»á¬ážá áá¯ááºáá±á¬ááºááá¯ááºá áœááºážá¡á¬ážáá¯á¶ážááẠáá»á±á¬áºááœááºáá±áá«á á¡áá»áá¯á·áá±á¬ ááŒá¿áá¬áá áºáᯠááŒá áºáá±á«áºáá¬áá«áááºá á€á¡ááŒá±á¡áá±ááœááºá áá áºááºááá¯á· á á¬áá±ážááẠá á±á¬áá·áºááá¯ááºážáá±ááá·áº I/O áááºáááºááŸá¯ á á¯á á¯áá±á«ááºáž á¡áá±á¡ááœááºááẠááááºážáááá¯ááºááááºážáá ááá¯ážáá¬ááá¯ááºááŒá®áž I/O áááºážá á®áá»á¬ážááẠáá áºááºááŸáá·áº Ceph áááºážá á®áá»á¬áž áá áºáá¯áá¯á¶ážááᯠááŒáá·áºá á±áá«áááºá áááºáááºáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááẠá¡áá°ážá¡á¬ážááŒáá·áº áááºážááá¯á·ááẠá á¬áá±ážáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááŒá¬ážááœáẠáááºáá±áá±á¬ááŒá±á¬áá·áºá áááºážááẠáááºááá áºááá¯á·ááŒááºáá¯ááºááẠá áá¹ááá·áºáá»á¬ážá áœá¬ááŒá¬ááá¯ááºáááºá
á€ááŒá¿áá¬ááᯠáá»á±á¬áºááœáŸá¬ážáááºá¡ááœáẠCeph ááœáẠWBThrottle áá¯áá±á«áºáá±á¬ ááá¯ááºááá¯ááŸá±á¬ááºááŸá¯ááœáẠááá·áºááœááºážáá¬ážáá±á¬ writeback throttling ááá¹ááá¬ážáá áºáá¯ááŸááááºá áááºážááẠkernel ááá¯ááºááá¯ááºááœáá·áºáá¬ážááŒááºážááŒá±á¬áá·áº ááá¬áá¡ááá¯ááºáž ááŒá áºáá±á«áºááá·áº áááºá á±á¬ááŒá®áž áááºážá flush áá¯ááºáááºážá ááºááᯠá áááºááá¯ááºááá·áº áá»ááºážáááá±áž I/O ááá¬áááᯠááá·áºáááºááẠáá®ááá¯ááºážáá¯ááºáá¬ážáááºá áá¶ááá±á¬ááºážá áœá¬ááŒáá·áºá á ááºážáááºááŒááºážááẠáá°áááºážáááºááá¯ážáá»á¬ážááẠá á¬áááºáá»áááºáá±áá»áááºá¡áá±á«áº á€á¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááᯠáá»áŸá±á¬á·áá»ááá¯ááºááá·áº á¡ááá·áºá¡áá ááŸáááŒá®ážáá¬ážá¡ááŒá¯á¡áá°áá»á¬ážááᯠááá»áŸá±á¬á·áá»ááá¯ááºáá±ážááŒá±á¬ááºáž ááá¯ááºááŒáá«áááºá áá»áááºááŸááá»ááºáá»á¬ážááẠá€á¡ááŒá¯á¡áá°ááᯠááŒá±á¬ááºážáá²ááá¯ááºááŒá®áž ááŒá¯á¶áá¯á¶áá±ážááá¯ááºáá±á¬ áááºážá á®á á¬á¡ááŸááºááᯠáá»áŸá±á¬á·áá»ááá¯ááºááŒá®áž á€áááºáá±á¬ááºááŸá¯ááᯠááá¯ááá¯ááŒááºážáááºá á±áááºá ááá¯á·áá±á¬áº á¡áá±ážá¡áá°áá áºáá¯ááŸááá«áááº- áááºážá á®áááºááœáá·áºááŒá¯áá¬ážáá±á¬ á¡áá±á¡ááœááºá á¯á á¯áá±á«ááºážááᯠáá»áŸá±á¬á·áá»ááŒááºážááŒáá·áº á¡áááºáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠá¡áááá·áºáá±ážáá¬ááœáẠáááºážáá áœááºážáá±á¬ááºáááºááᯠá¡ááŒáá·áºáá¯á¶ážááŒáŸáá·áºáááºááẠkernel ááá¯ááºááá¯ááºáá áœááºážáááºááᯠáá»áŸá±á¬á·áá»ááá¯ááºáááºá áááºá áá®ážááŒá¬ážá¡áá¯á¶ážááŒá¯ááŸá¯ááá á¹á á á¡áá¯ááºáá¬áááºáá»á¬ážááŸáá·áº áááºážááá¯á·ááŸáá·áº ááá¯ááºáá»á±á¬áá®ááœá±ááŒá áºá¡á±á¬áẠáá»áááºááŸááááºá¡ááœáẠáááºááá¯ááá¯ááá¯á¡ááºáááºáá»á¬ážá¡ááŒá±á¬ááºáž á¡áááºážáááºá ááºážá á¬ážááá·áºáááºá
ááá¯ááá¯á·áá±á¬ write-backlog áááºážá
á®á á¡ááááºá¡áááºááᯠááááºážáá»á¯ááºáááºá áááºááẠWBThrottle áááºáááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áá°ážáá°ážááŒá¬ážááŒá¬áž I/O áááºáááºááŸá¯ á¡áá»á¬ážáá¯á¶áž á¡áá±á¡ááœááºááᯠáá»áŸá±á¬á·áá»ááá¯ááºáááºá ááá¯á·ááá¯áẠáááºá kernel á ááá±á¬ááºá¡ááá·áºááœáẠáá°ážáá°ážááŒá¬ážááŒá¬áž áá¯ááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááœáẠá¡áá»á¬ážáá¯á¶ážáááºááá¯ážááᯠáá»áŸá±á¬á·áá»ááá¯ááºáááºá ááŸá
áºáá¯á
áá¯á¶ážááẠáá°áá®áá±á¬á¡ááŒá¯á¡áá°ááᯠáááááá±á¬ááºáá±á¬áẠááááºážáá»á¯ááºááá¯ááºááŒá®ážá áááºá ááŸá
áºáááºááŸá¯áá»á¬ážááẠá€áááºáááºááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáááºá¡ááœáẠá¡ááŒá±áá¶ááŒá
áºáááá·áºáááºá
Ceph ááá¯ááºáááºážáá±á¬ááºáá¬áŠážá
á¬ážáá±ážá
áá
áºááẠdisk á¡ááá·áºááŸá ááá¯áá±á¬ááºážáá±á¬áá±ážááœááºážáá»á¬ážá¡ááœáẠááá¯ááá¯áááá±á¬ááºááŸá¯ááŸááááºááᯠáááááŒá¯ááá·áºáááºá áááºážá
á®áá
áºáá¯áá¯á¶ážááᯠáá±ážáá¬ážááá·áºáá
áºáá
áºáá¯ááá¯á· áá»á¯á¶á·ááá¯ááºááŒááºážááŒáá·áºá áááºážá
á®áá¡ááááááºáá±áá¬ááẠI/O áá¯ááºáá±á¬ááºáá»ááºá¡áá±á«áº áŠážá
á¬ážáá±ážááááºážáá»á¯ááºááá¯ááºááá·áº Ceph ááá¯á· ááœáŸá±á·áááºá á¡á±á¬ááºáá«á¥ááá¬ááᯠáá¯á¶ážáááºááŒáá·áºáá«-
echo 8 > /sys/block/sda/queue/nr_requests
Commons
ááá·áºáá¬ážááᯠáá»á±á¬á·áá»á±á¬ááºážáá°ážáá¶á·á á±ááŒá®áž áá¬á·ááºáá²ááẠá¡áááºážáááºááá¯áá±á¬ á áœááºážáá±á¬ááºáááºááᯠááŸá áºáá¯ááºááẠáá±á¬ááºááẠkernel tweaks á¡áááºážáááº
ááŒá±á¬áẠ/etc/sysctl.d/60-ceph2.conf
kernel.pid_max = 4194303
#ÐОÑкПв в кажЎПй ЌаÑОМе пП 25, пПÑÐŸÐŒÑ ÑаÑÑÑОÑÑвалО ÑÑП пÑПÑеÑÑПв бÑÐŽÐµÑ ÐŒÐœÐŸÐ³ÐŸ
kernel.threads-max=2097152
# ТÑеЎПв, еÑÑеÑÑМП, ÑПже.
vm.max_map_count=524288
# УвелОÑОлО кПлОÑеÑÑвП ПблаÑÑей каÑÑÑ Ð¿Ð°ÐŒÑÑО пÑПÑеÑÑа.
# Ðак ÑлеЎÑÐµÑ ÐžÐ· ЎПкÑЌеМÑаÑОО пП ÑЎеÑÐœÑÐŒ пеÑеЌеММÑÐŒ
# ÐблаÑÑО каÑÑÑ Ð¿Ð°ÐŒÑÑО ОÑпПлÑзÑеÑÑÑ ÐºÐ°Ðº пПбПÑÐœÑй ÑÑÑÐµÐºÑ Ð²ÑзПва
# malloc, МапÑÑÐŒÑÑ Ñ Ð¿ÐŸÐŒÐŸÑÑÑ mmap, mprotect О madvise, а Ñакже пÑО загÑÑзке
# ПбÑОÑ
бОблОПÑек.
fs.aio-max-nr=50000000
# ÐПЎÑÑМОЌ паÑаЌеÑÑÑ input-output
# ЯЎÑП Linux пÑеЎПÑÑавлÑÐµÑ ÑÑМкÑÐžÑ Ð°ÑОМÑ
ÑПММПгП МеблПкОÑÑÑÑегП ввПЎа-вÑвПЎа (AIO),
# кПÑПÑÐ°Ñ Ð¿ÐŸÐ·Ð²ÐŸÐ»ÑÐµÑ Ð¿ÑПÑеÑÑÑ ÐžÐœÐžÑООÑПваÑÑ ÐœÐµÑкПлÑкП ПпеÑаÑОй ввПЎа-вÑвПЎа
# ПЎМПвÑеЌеММП, Ме ЎПжОЎаÑÑÑ Ð·Ð°Ð²ÐµÑÑÐµÐœÐžÑ ÐºÐ°ÐºÐŸÐ¹-лОбП Оз МОÑ
.
# ÐÑП Ð¿ÐŸÐŒÐŸÐ³Ð°ÐµÑ Ð¿ÐŸÐ²ÑÑОÑÑ Ð¿ÑПОзвПЎОÑелÑМПÑÑÑ Ð¿ÑОлПжеМОй,
# кПÑПÑÑе ЌПгÑÑ Ð¿ÐµÑекÑÑваÑÑ ÐŸÐ±ÑабПÑÐºÑ Ðž ввПЎ-вÑвПЎ.
# ÐаÑаЌеÑÑ aio-max-nr ПпÑеЎелÑÐµÑ ÐŒÐ°ÐºÑОЌалÑМПе кПлОÑеÑÑвП ЎПпÑÑÑОЌÑÑ
# ПЎМПвÑеЌеММÑÑ
запÑПÑПв.
vm.min_free_kbytes=1048576
# ЌОМОЌалÑÐœÑй ÑÐ°Ð·ÐŒÐµÑ ÑвПбПЎМПй паЌÑÑО кПÑПÑÑй МеПбÑ
ПЎОЌП пПЎЎеÑжОваÑÑ.
# ÐÑÑÑавлеМ 1Gb, ÑегП впПлМе ЎПÑÑаÑПÑМП ÐŽÐ»Ñ ÑабПÑÑ ÐŸÐ¿ÐµÑаÑОПММПй ÑОÑÑеЌÑ,
# О пПзвПлÑÐµÑ ÐžÐ·Ð±ÐµÐ³Ð°ÑÑ OOM Killer ÐŽÐ»Ñ Ð¿ÑПÑеÑÑПв OSD. ХПÑÑ Ð¿Ð°ÐŒÑÑО О Ñак
# как Ñ ÐŽÑÑака ÑаМÑОкПв, МП Ð·Ð°Ð¿Ð°Ñ ÐºÐ°ÑЌаМ Ме ÑÑМеÑ
vm.swappiness=10
# ÐПвПÑОЌ ОÑпПлÑзПваÑÑ ÑвПп еÑлО ПÑÑалПÑÑ ÑвПбПЎМÑÐŒ 10% паЌÑÑО.
# Ðа ЌаÑОМаÑ
128G ПпеÑаÑОвÑ, О 10% ÑÑП 12 ÐОгПв. ÐПлее ÑеЌ ЎПÑÑаÑПÑМП ÐŽÐ»Ñ ÑабПÑÑ.
# КÑаÑÐœÑй паÑаЌеÑÑ Ð² 60% заÑÑавлÑл ÑПÑЌПзОÑÑ ÑОÑÑеЌÑ, Ð·Ð°Ð»ÐµÐ·Ð°Ñ Ð² ÑвПп,
# кПгЎа еÑÑÑ ÐµÑе кÑÑа ÑвПбПЎМПй паЌÑÑО
vm.vfs_cache_pressure=1000
# УвелОÑОваеЌ ÑП ÑÑаÑÐœÑÑ
100. ÐаÑÑавлÑеЌ ÑÐŽÑП акÑОвМее вÑгÑÑжаÑÑ
# МеОÑпПлÑзÑеЌÑе ÑÑÑаМОÑÑ Ð¿Ð°ÐŒÑÑО Оз кеÑа.
vm.zone_reclaim_mode=0
# ÐПзвПлÑÐµÑ ÑÑÑаМавлОваÑÑ Ð±ÐŸÐ»ÐµÐµ ОлО ЌеМее агÑеÑÑОвМÑе пПЎÑ
ÐŸÐŽÑ Ðº
# вПÑÑÑÐ°ÐœÐŸÐ²Ð»ÐµÐœÐžÑ Ð¿Ð°ÐŒÑÑО, кПгЎа в зПМе закаМÑОваеÑÑÑ Ð¿Ð°ÐŒÑÑÑ.
# ÐÑлО ПМ ÑÑÑаМПвлеМ Ма МПлÑ, ÑП Ме пÑПОÑÑ
ÐŸÐŽÐžÑ Ð²ÐŸÑÑÑаМПвлеМОе зПМÑ.
# ÐÐ»Ñ ÑайлПвÑÑ
ÑеÑвеÑПв ОлО ÑабПÑОÑ
МагÑÑзПк
# вÑгПЎМП, еÑлО ОÑ
ЎаММÑе кÑÑОÑПваМÑ, zone_reclaim_mode
# ПÑÑавОÑÑ ÐŸÑклÑÑеММÑÐŒ, пПÑкПлÑÐºÑ ÑÑÑÐµÐºÑ ÐºÑÑОÑПваМОÑ,
# веÑПÑÑМП, бÑÐŽÐµÑ Ð±ÐŸÐ»ÐµÐµ важМÑÐŒ, ÑеЌ ЌеÑÑПМаÑ
ПжЎеМОе ЎаММÑÑ
.
vm.dirty_ratio=20
# ÐÑПÑÐµÐœÑ ÐŸÐ¿ÐµÑаÑОвМПй паЌÑÑО, кПÑПÑÑй ЌПжМП вÑЎелОÑÑ Ð¿ÐŸÐŽ "гÑÑзМÑе" ÑÑÑаМОÑÑ
# ÐÑÑОÑлÑлО Оз пÑОЌеÑМПгП ÑаÑÑеÑа:
# Ð ÑОÑÑеЌа 128 гОгПв паЌÑÑО.
# ÐÑОЌеÑМП пП 20 ЎОÑкПв SSD, Ñ ÐºÐŸÑПÑÑÑ
в МаÑÑÑПйкаÑ
CEPH ÑказаМП
# вÑЎелÑÑÑ Ð¿ÐŸÐŽ кÑÑОÑПваМОе пП 3G ПпеÑаÑОвÑ.
# ÐÑОЌеÑМП пП 40 ЎОÑкПв HDD, ÐŽÐ»Ñ ÐºÐŸÑПÑÑÑ
ÑÑÐŸÑ Ð¿Ð°ÑаЌеÑÑ ÑавеМ 1G
# 20% ÐŸÑ 128 ÑÑП 25.6 гОгПв. ÐÑПгП, в ÑлÑÑае ЌакÑОЌалÑМПй ÑÑОлОзаÑОО паЌÑÑО,
# ÐŽÐ»Ñ ÑОÑÑÐµÐŒÑ ÐŸÑÑаМеÑÑÑ 2.4G паЌÑÑО. ЧегП ей ЎПлжМП Ñ
ваÑОÑÑ ÑÑПб вÑжОÑÑ Ðž ЎПжЎаÑÑÑÑ
# ÑÑÑка кПпÑÑ ÐºÐ°Ð²Ð°Ð»ÐµÑОО - ÑП еÑÑÑ Ð¿ÑОÑеÑÑÐ²ÐžÑ DevOps кПÑПÑÑй вÑе пПÑОМОÑ.
vm.dirty_background_ratio=3
# пÑПÑÐµÐœÑ ÑОÑÑеЌМПй паЌÑÑО, кПÑПÑÑй ЌПжМП запПлМОÑÑ dirty pages ЎП ÑПгП,
# как ÑПМПвÑе пÑПÑеÑÑÑ pdflush/flush/kdmflush запОÑÑÑ ÐžÑ
Ма ЎОÑк
fs.file-max=524288
# ÐÑ Ðž ПÑкÑÑÑÑÑ
ÑайлПв Ñ ÐœÐ°Ñ,веÑПÑÑМП, бÑÐŽÐµÑ ÑОлÑМП бПлÑÑе, ÑеЌ ÑказаМП пП ЎеÑПлÑÑ.
CEPH ááœáẠááŸá áºááŒáŸá¯ááºááŒááºážá
áá±á¬ááºáááºá¡áá±ážá áááºáá±á¬áºááŒááá¯áá±á¬ áááºáááºáá»á¬áž
ááŒá±á¬áẠ/etc/ceph/ceph.conf
osd:
journal_aio: true # ТÑО паÑаЌеÑÑа, вклÑÑаÑÑОе
journal_block_align: true # пÑÑЌПй i/o
journal_dio: true # Ма жÑÑМал
journal_max_write_bytes: 1073714824 # ÐеЌМПгП ÑаÑÑÑМеЌ ЌакÑОЌалÑÐœÑй ÑазЌеÑ
# ÑазПвП запОÑÑваеЌПй ПпеÑаÑОО в жÑÑМал
journal_max_write_entries: 10000 # ÐÑ Ðž кПлОÑеÑÑвП ПЎМПвÑеЌеММÑÑ
запОÑей
journal_queue_max_bytes: 10485760000
journal_queue_max_ops: 50000
rocksdb_separate_wal_dir: true # РеÑОлО ЎелаÑÑ ÐŸÑЎелÑÐœÑй wal
# Ðаже пПпÑÑалОÑÑ Ð²ÑбОÑÑ Ð¿ÐŸÐŽ ÑÑП ЎелП
# NVMe
bluestore_block_db_create: true # ÐÑ Ðž пПЎ жÑÑМал ПÑЎелÑМПе ÑÑÑÑПйÑÑвП
bluestore_block_db_size: '5368709120 #5G'
bluestore_block_wal_create: true
bluestore_block_wal_size: '1073741824 #1G'
bluestore_cache_size_hdd: '3221225472 # 3G'
# бПлÑÑПй ПбÑеЌ ПпеÑаÑÐžÐ²Ñ Ð¿ÐŸÐ·Ð²ÐŸÐ»ÑеÑ
# Ñ
ÑаМОÑÑ ÐŽÐŸÑÑаÑПÑМП бПлÑÑОе ПбÑеЌÑ
bluestore_cache_size_ssd: '9663676416 # 9G'
keyring: /var/lib/ceph/osd/ceph-$id/keyring
osd_client_message_size_cap: '1073741824 #1G'
osd_disk_thread_ioprio_class: idle
osd_disk_thread_ioprio_priority: 7
osd_disk_threads: 2 # кПлОÑеÑÑвП ÑÑеЎПв Ñ ÐŽÐµÐŒÐŸÐœÐ° Ма ПЎОМ ЎОÑк
osd_failsafe_full_ratio: 0.95
osd_heartbeat_grace: 5
osd_heartbeat_interval: 3
osd_map_dedup: true
osd_max_backfills: 2 # кПлОÑеÑÑвП ПЎМПвÑеЌеММÑÑ
ПпеÑаÑОй Ð·Ð°Ð¿ÐŸÐ»ÐœÐµÐœÐžÑ ÐœÐ° ПЎОМ ÐСÐ.
osd_max_write_size: 256
osd_mon_heartbeat_interval: 5
osd_op_threads: 16
osd_op_num_threads_per_shard: 1
osd_op_num_threads_per_shard_hdd: 2
osd_op_num_threads_per_shard_ssd: 2
osd_pool_default_min_size: 1 # ÐÑПбеММПÑÑО жаЎМПÑÑО. ÐÑÐµÐœÑ Ð±ÑÑÑÑП ÑÑалП
osd_pool_default_size: 2 # МеÑ
ваÑаÑÑ ÐŒÐµÑÑа, пПÑÐŸÐŒÑ ÐºÐ°Ðº вÑеЌеММПе
# ÑеÑеМОе пÑОМÑлО ÑЌеМÑÑеМОе кПлОÑеÑÑвП
# ÑеплОк ЎаММÑÑ
osd_recovery_delay_start: 10.000000
osd_recovery_max_active: 2
osd_recovery_max_chunk: 1048576
osd_recovery_max_single_start: 3
osd_recovery_op_priority: 1
osd_recovery_priority: 1 # паÑаЌеÑÑ ÑегÑлОÑÑеЌ пП МеПбÑ
ПЎОЌПÑÑО Ма Ñ
ПЎÑ
osd_recovery_sleep: 2
osd_scrub_chunk_max: 4
áá¬ážááŸááºáž 12.2.12 ááœáẠQA á¡ááœáẠá ááºážáááºáá¬ážááá·áº áá±á¬ááºá¡áá»áá¯á·ááẠá¥ááᬠceph áá¬ážááŸááºáž 12.2.2 ááœáẠáá»á±á¬ááºáá±áá«áááºá osd_recovery_threadsá ááá¯á·ááŒá±á¬áá·áºá á¡á á®á¡á ááºáá»á¬ážááœáẠáá¯ááºáá¯ááºááŸá¯á¡áá±á«áº 12.2.12 ááá¯á· á¡ááºááááºáá áºáᯠáá«áááºáááºá á¡áá±á·á¡áá»áá·áºááẠáá¬ážááŸááºáž 12.2.2 ááŸáá·áº 12.2.12 ááŒá¬ážááœáẠááœá²áááºá¡áá¯á¶ážááŒá¯ááá¯ááºáá±á¬ á¡ááºááááºáá»á¬ážááᯠá¡á á¯á¡áá±ážáá áºáá¯ááœáẠááŒááá¬ážáááºá
á ááºážáááºá¡á á¯á¡ááœá²á·
áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá á ááºážáááºáááºá¡ááœáẠááá¯ááºááœá²ááœááºáá²á·ááá¯á· áá°áá®áá±á¬áá¬ážááŸááºážááŸáááẠááá¯á¡ááºáá±á¬áºáááºážá áá»áœááºá¯ááºááẠá¡á á¯á¡ááœá²á·ááŸáá·áº á áááºáá¯ááºáá±á¬ááºáá»áááºááœááºá ááá¯ááŸá±á¬ááºááŸá¯ááœááºáᬠá¡áá áºááᯠáááá¯ááºáá«áááºá ááŒáá·áºááá¯ááºááẠá¡áá±ážá¡ááœáŸá¬ážáá¬ážááŸááºážááŸá¬ áááºááá¯ááºážááŒá¬ážááááŒááºááá¯ááºáá²á·á¡áá¬á ááááºááŒá®ážááŒá®ážáá¬ážáá¬ážáá±á¬á· ááá¯ááºáá«áá°ážá1393 configs ááœááºááá¯ááºážáá»á¬ážááá·áºáá»ááºááẠ1436 áá¬ážááŸááºážá¡áá áºááœááº)á áá»áœááºá¯ááºááá¯á·ááẠá¡áá áºááᯠá áááºá ááºážáááºááẠáá¯á¶ážááŒááºáá²á·ááẠ(áá¬áá²ááŒá áºááŒá Ạá¡ááºááááºáá¯ááºááŒááºážá á¡ááŸáá¯ááºáá±á¬ááºážááŸáá·áº á¡áááºááŒá±á¬áá·áº ááœá¬ážáá«)
áá¬ážááŸááºážáá±á¬ááºážááᯠáá»ááºáá¬ážááá¯á· ááŒáá¯ážá á¬ážáá²á·áá¬á package áá«á ceph-deploy á¡áá»áá¯á·áá±á¬ utilities (áááºáááºážá¡áá»áá¯á·) ááẠáááºážá syntax ááŸáá·áº á¡á¶áááºááœááºáá»ááŒá áºáá±áá±á¬ááŒá±á¬áá·áºááŒá áºáááºá áá¬ážááŸááºážá¡áá áºááẠá¡áá±á¬áºáá±ážááœá²ááŒá¬ážáá±á¬áºáááºáž á¡á á¯á¡áá±ážááá¯ááºáá±á¬ááºááŸá¯ááᯠáááááá¯ááºá á±áá² áááºážááᯠáá¬ážááŸááºážááœááºáá»ááºáá¬ážáá²á·áááºá 1.5.39
ceph-disk command ááẠáááºážááᯠáááºááá¯ááºážáá¬ážááŒá®áž ceph-volume command ááá¯á¡áá¯á¶ážááŒá¯ááŒá±á¬ááºážááŸááºážááŸááºážáááºážáááºážáá±á¬áºááŒáá¬ážáá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá±ááºááá®áá±á¬á·áá±á¬ á¡áá¬áá»á¬ážááᯠá¡áá»áááºáááŒá¯ááºážáᲠဠcommand ááŒáá·áº OSD áá»á¬ážááᯠá áááºáááºáá®ážáá²á·áá«áááºá
á¡á á®á¡á ááºááẠáá»áœááºá¯ááºááá¯á·ááẠOSD ááŸááºáááºážáá»á¬ážááᯠáá¬ážááŸáááá·áº SSD drive ááŸá áºáá¯á ááŸááºáá áºáá»ááºááᯠáááºáá®ážáááºááŒá áºááŒá®áž áááºážááŸá¬ spindle SASs áá±á«áºááœáẠáááºááŸááááºá á€áááºážááŒáá·áº áá±á¬á·ááºáá«áá áºááŒá¯ááºáá»áá«á áá±áá¬ááŒá¿áá¬áá»á¬ážá០ááááááá¯ááºááᯠáá¬ááœááºááá¯ááºáááºááŒá áºáááºá
á á¬ááœááºá á¬áááºážá¡á á¡á á¯á¡ááœá²á·áá áºáá¯ááᯠá áááºáááºáá®ážáá²á·áá«áááºá
ááŒá±á¬áẠ/etc/ceph/ceph.conf
root@ceph01-qa:~# cat /etc/ceph/ceph.conf # пПлПжОлО заÑаМее пПЎгПÑПвлеММÑй кПМÑОг
[client]
rbd_cache = true
rbd_cache_max_dirty = 50331648
rbd_cache_max_dirty_age = 2
rbd_cache_size = 67108864
rbd_cache_target_dirty = 33554432
rbd_cache_writethrough_until_flush = true
rbd_concurrent_management_ops = 10
rbd_default_format = 2
[global]
auth_client_required = cephx
auth_cluster_required = cephx
auth_service_required = cephx
cluster network = 10.10.10.0/24
debug_asok = 0/0
debug_auth = 0/0
debug_buffer = 0/0
debug_client = 0/0
debug_context = 0/0
debug_crush = 0/0
debug_filer = 0/0
debug_filestore = 0/0
debug_finisher = 0/0
debug_heartbeatmap = 0/0
debug_journal = 0/0
debug_journaler = 0/0
debug_lockdep = 0/0
debug_mon = 0/0
debug_monc = 0/0
debug_ms = 0/0
debug_objclass = 0/0
debug_objectcatcher = 0/0
debug_objecter = 0/0
debug_optracker = 0/0
debug_osd = 0/0
debug_paxos = 0/0
debug_perfcounter = 0/0
debug_rados = 0/0
debug_rbd = 0/0
debug_rgw = 0/0
debug_throttle = 0/0
debug_timer = 0/0
debug_tp = 0/0
fsid = d0000000d-4000-4b00-b00b-0123qwe123qwf9
mon_host = ceph01-q, ceph02-q, ceph03-q
mon_initial_members = ceph01-q, ceph02-q, ceph03-q
public network = 8.8.8.8/28 # аЎÑÐµÑ ÐžÐ·ÐŒÐµÐœÐµÐœ, еÑÑеÑÑвеММП ))
rgw_dns_name = s3-qa.mycompany.ru # О ÑÑÐŸÑ Ð°ÐŽÑÐµÑ ÐžÐ·ÐŒÐµÐœ
rgw_host = s3-qa.mycompany.ru # О ÑÑÐŸÑ ÑПже
[mon]
mon allow pool delete = true
mon_max_pg_per_osd = 300 # бПлÑÑе ÑÑеÑ
ÑÐŸÑ Ð¿Ð»ÐµÐ¹ÑÐŒÐµÐœÑ Ð³ÑÑпп
# Ма ЎОÑк Ме ÑеÑОлОÑÑ
# Ñ
ПÑÑ Ð¿Ð°ÑаЌеÑÑ, еÑÑеÑÑвеММП, завОÑÐžÑ ÐŸÑ ÐºÐŸÐ»ÐžÑеÑÑва пÑлПв,
# ОÑ
ÑазЌеÑПв О кПлОÑеÑÑва OSD. ÐЌеÑÑ ÐŒÐ°Ð»ÐŸ МП зЎПÑПвÑÑ
PG
# ÑПже Ме лÑÑÑОй вÑÐ±ÐŸÑ - ÑÑÑÐ°ÐŽÐ°ÐµÑ ÑПÑМПÑÑÑ Ð±Ð°Ð»Ð°ÐœÑОÑПвкО
mon_osd_backfillfull_ratio = 0.9
mon_osd_down_out_interval = 5
mon_osd_full_ratio = 0.95 # пПка ÐŽÐ»Ñ SSD ЎОÑкПв ЌеÑÑПЌ ÐŽÐ»Ñ ÐžÑ
# жÑÑМала ÑвлÑеÑÑÑ ÑПÑ-же ÐŽÐµÐ²Ð°Ð¹Ñ ÑÑП О ÐŽÐ»Ñ ÐСÐ
# ÑеÑОлО ÑÑП 5% ÐŸÑ ÐŽÐžÑка (кПÑПÑÑй ÑаЌ ÑазЌеÑПЌ 1.2Tb)
# ЎПлжМП впПлМе Ñ
ваÑОÑÑ, О кПÑÑелОÑÑÐµÑ Ñ Ð¿Ð°ÑаЌеÑÑПЌ
# bluestore_block_db_size плÑÑ Ð²Ð°ÑОаÑОвМПÑÑÑ ÐœÐ° бПлÑÑОе
# плейÑÐŒÐµÐœÑ Ð³ÑÑппÑ
mon_osd_nearfull_ratio = 0.9
mon_pg_warn_max_per_osd = 520
[osd]
bluestore_block_db_create = true
bluestore_block_db_size = 5368709120 #5G
bluestore_block_wal_create = true
bluestore_block_wal_size = 1073741824 #1G
bluestore_cache_size_hdd = 3221225472 # 3G
bluestore_cache_size_ssd = 9663676416 # 9G
journal_aio = true
journal_block_align = true
journal_dio = true
journal_max_write_bytes = 1073714824
journal_max_write_entries = 10000
journal_queue_max_bytes = 10485760000
journal_queue_max_ops = 50000
keyring = /var/lib/ceph/osd/ceph-$id/keyring
osd_client_message_size_cap = 1073741824 #1G
osd_disk_thread_ioprio_class = idle
osd_disk_thread_ioprio_priority = 7
osd_disk_threads = 2
osd_failsafe_full_ratio = 0.95
osd_heartbeat_grace = 5
osd_heartbeat_interval = 3
osd_map_dedup = true
osd_max_backfills = 4
osd_max_write_size = 256
osd_mon_heartbeat_interval = 5
osd_op_num_threads_per_shard = 1
osd_op_num_threads_per_shard_hdd = 2
osd_op_num_threads_per_shard_ssd = 2
osd_op_threads = 16
osd_pool_default_min_size = 1
osd_pool_default_size = 2
osd_recovery_delay_start = 10.0
osd_recovery_max_active = 1
osd_recovery_max_chunk = 1048576
osd_recovery_max_single_start = 3
osd_recovery_op_priority = 1
osd_recovery_priority = 1
osd_recovery_sleep = 2
osd_scrub_chunk_max = 4
osd_scrub_chunk_min = 2
osd_scrub_sleep = 0.1
rocksdb_separate_wal_dir = true
# ÑПзЎаеЌ ЌПМОÑПÑÑ
root@ceph01-qa:~#ceph-deploy mon create ceph01-q
# геМеÑОÑÑеЌ клÑÑО ÐŽÐ»Ñ Ð°ÑÑеМÑОÑОкаÑОО МПЎ в клаÑÑеÑе
root@ceph01-qa:~#ceph-deploy gatherkeys ceph01-q
# ÐÑП еÑлО пПÑÑÑÑМП. ÐÑлО Ñ ÐœÐ°Ñ ÐœÐµÑкПлÑкП ЌаÑОМ ЎПÑÑÑÐ¿ÐœÑ - Ñе, кПÑПÑÑе ПпОÑÐ°ÐœÑ Ð² кПМÑОге в ÑекÑОО
# mon_initial_members = ceph01-q, ceph02-q, ceph03-q
# ЌПжМП запÑÑÑОÑÑ ÑÑО Ўве ÐºÐŸÐŒÐ°ÐœÐŽÑ Ð² вОЎе ПЎМПй
root@ceph01-qa:~#ceph-deploy mon create-initial
# ÐПлПжОЌ клÑÑО в ÑказаММÑе в кПМÑОге ЌеÑÑа
root@ceph01-qa:~#cat ceph.bootstrap-osd.keyring > /var/lib/ceph/bootstrap-osd/ceph.keyring
root@ceph01-qa:~#cat ceph.bootstrap-mgr.keyring > /var/lib/ceph/bootstrap-mgr/ceph.keyring
root@ceph01-qa:~#cat ceph.bootstrap-rgw.keyring > /var/lib/ceph/bootstrap-rgw/ceph.keyring
# ÑПзЎаЎОЌ клÑÑ ÐŽÐ»Ñ ÑпÑÐ°Ð²Ð»ÐµÐœÐžÑ ÐºÐ»Ð°ÑÑеÑПЌ
root@ceph01-qa:~#ceph-deploy admin ceph01-q
# О ЌеМеЎжеÑ, плагОМаЌО ÑпÑавлÑÑÑ
root@ceph01-qa:~#ceph-deploy mgr create ceph01-q
Ceph-deploy áá¬ážááŸááºáž 12.2.12 ááŸáá·áº á¡á á¯ááá¯ááºá¡ááŒá¯á¶ááá¯áẠáá¬ážááŸááºáž XNUMX ááŒáá·áº áá¯ááºáá±á¬ááºáá±á¬á¡áá« ááááá¯á¶áž áááááŒá¯áááááºááŸá¬ áá±á¬á·ááºáá²ááºá á®ážáááºážááŸá¯ááœáẠdb ááŒáá·áº OSD áá áºáá¯ááᯠáááºáá®ážááẠááŒáá¯ážáááºážáá¬ááœáẠá¡ááŸá¬ážá¡ááœááºážáá áºáᯠááŒá áºáá²á·áááº-
root@ceph01-qa:~#ceph-volume lvm create --bluestore --data /dev/sde --block.db /dev/md0
blkid could not detect a PARTUUID for device: /dev/md1
á¡ááŸááºáá±á¬á·á blkid ááẠPARTUUID ááŒá áºáá¯á¶ááá±á«áºáá«á ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááẠá¡áááºážááá·áºáá»á¬ážááᯠááá¯ááºááá¯ááºáááºáá®ážáá²á·ááááº-
root@ceph01-qa:~#parted /dev/md0 mklabel GPT
# ÑазЎелПв бÑÐŽÐµÑ ÐŒÐœÐŸÐ³ÐŸ,
# без GPT ОÑ
ÑПзЎаÑÑ ÐœÐµ пПлÑÑОÑÑÑ
# ÑÐ°Ð·ÐŒÐµÑ ÑазЎела ÐŒÑ ÑказалО в кПМÑОге вÑÑе = bluestore_block_db_size: '5368709120 #5G'
# ÐОÑкПв Ñ ÐŒÐµÐœÑ 20 пПЎ OSD, ÑÑкаЌО ÑПзЎаваÑÑ ÑÐ°Ð·ÐŽÐµÐ»Ñ Ð»ÐµÐœÑ
# пПÑÐŸÐŒÑ ÑЎелал ÑОкл
root@ceph01-qa:~#for i in {1..20}; do echo -e "nnnn+5Gnw" | fdisk /dev/md0; done
á¡á¬ážáá¯á¶ážá¡áááºááá·áºááŒá áºáá¯á¶áááŒá®ážá áá»áœááºá¯ááºááá¯á·ááẠOSD ááᯠáááºáá¶áááºáá®ážááŒá®áž á¡á±á¬ááºáá« Error ááá¯ááá°ááẠááŒáá¯ážá á¬ážááŒááẠ(á áá¬ážá¡á¬ážááŒáá·áºá ááá¯ááºááœá²ááœáẠááŒááºáááºáá¯ááºáá¯ááºááŒááºážááá¯ááºáá«)
WAL ááá¯á·áááºážááŒá±á¬ááºážááááºááŸááºáá² bluestore á¡áá»áá¯ážá¡á á¬áž OSD ááá¯áááºáá®ážáá±á¬á¡áá«á db ááá¯áááºááŸááºááŒááºážá
root@ceph01-qa:~#ceph-volume lvm create --bluestore --data /dev/sde --block.db /dev/md0
stderr: 2019-04-12 10:39:27.211242 7eff461b6e00 -1 bluestore(/var/lib/ceph/osd/ceph-0/) _read_fsid unparsable uuid
stderr: 2019-04-12 10:39:27.213185 7eff461b6e00 -1 bdev(0x55824c273680 /var/lib/ceph/osd/ceph-0//block.wal) open open got: (22) Invalid argument
stderr: 2019-04-12 10:39:27.213201 7eff461b6e00 -1 bluestore(/var/lib/ceph/osd/ceph-0/) _open_db add block device(/var/lib/ceph/osd/ceph-0//block.wal) returned: (22) Invalid argument
stderr: 2019-04-12 10:39:27.999039 7eff461b6e00 -1 bluestore(/var/lib/ceph/osd/ceph-0/) mkfs failed, (22) Invalid argument
stderr: 2019-04-12 10:39:27.999057 7eff461b6e00 -1 OSD::mkfs: ObjectStore::mkfs failed with error (22) Invalid argument
stderr: 2019-04-12 10:39:27.999141 7eff461b6e00 -1 ** ERROR: error creating empty object store in /var/lib/ceph/osd/ceph-0/: (22) Invalid argumen
ááá¯á·á¡ááŒááºá áá°áá®áá±á¬ááŸááºáá±á«áºááœáẠ(ááá¯á·ááá¯ááºáááºááŸá áºáááºáá¬á¡ááŒá¬ážáá±áá¬ááœááº) WAL á¡ááœááºá¡ááŒá¬áž partition áá áºáá¯ááá¯áááºáá®ážááŒá®áž OSD ááá¯áááºáá®ážáá±á¬á¡áá«ááœááºáááºááŸááºáá«áá áááºááá¯ááºáá±á¬ááºááá¯ááºáá±á¬áá®ážááŒá¬áž WAL áá¡ááœááºá¡ááŒááºááŸááœá²á á¡áá¬á¡á¬ážáá¯á¶ážáá»á±á¬ááœá±á·ááœá¬ážáááá·áºáááºá ááá¯áá»ááºááŒá®)á
ááá¯á·áá±á¬áºá WAL ááᯠNVMe ááá¯á·ááŒá±á¬ááºážááœáŸá±á·ááẠá¡ááŸááºážáá±ážáá±á¬ á¡á á®á¡á ááºáá»á¬áž ááŸááá±áá²ááŒá áºáá±á¬ááŒá±á¬áá·áºá á¡áá±á·á¡áá»áá·áºááẠáááá¯á¡ááºáá±á¬á·áá«á
root@ceph01-qa:~#ceph-volume lvm create --bluestore --data /dev/sdf --block.wal /dev/md0p2 --block.db /dev/md1p2
áá±á¬áºáá®áá¬áá»á¬ážá áááºáá±áá»á¬áá»á¬ážááŸáá·áº OSD ááᯠáááºáá®ážáá¬ážáááºá ááᯠáá»áœááºá¯ááºááẠáááºážááá¯á·ááᯠááá°áá®áá±á¬ á¡á¯ááºá á¯ááœá²á·ááá¯áááºá á¡ááŒá±á¬ááºážááŸá¬ áá»áœááºá¯ááºááẠSSD ááœáẠáá»ááºááŒááºáá±á¬ áá±áá°ážáááºáá»á¬ážááŸáá·áº ááŒá®ážáá¬ážáá±á¬ SAS áááºááááºáá»á¬ážááœáẠááŸá±ážááœá±ážáá±á¬ áá±áá°ážáááºáá»á¬áž á¡áá»áá¯ážáá»áá¯ážááŸáááẠá á®á ááºáá¬ážáá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá
áá¬áá¬áá»á¬ážááœáẠdisk 20 ááŸááááºá ááááááºáá¯ááẠá¡áá»áá¯ážá¡á
á¬ážáá
áºáá¯ááŒá
áºááŒá®áž áá¯áááááẠá¡ááŒá¬ážáá
áºáá¯ááŒá
áºáááºáᯠáá°áááŒáá«á
áá¯á·á
áááŠážá áá¯á¶áá±á áááºááẠá€áá²á·ááá¯á· ááŒá
áºáááº-
ceph osd áá áºáááº
root@ceph01-q:~# ceph osd áá
áºáááº
ID CLASS WEIGHT á¡áá»áá¯ážá¡á
á¬ážá¡ááẠá¡ááá·áºá¡áááºáž REWEIGHT PRI-AFF
-1 14.54799 root default
-3 9.09200 host ceph01-q
0 ssd 1.00000 osd.0 á¡áá 1.00000 1.00000
1 ssd 1.00000 osd.1 á¡áá 1.00000 1.00000
2 ssd 1.00000 osd.2 á¡áá 1.00000 1.00000
3 ssd 1.00000 osd.3 á¡áá 1.00000 1.00000
4 hdd 1.00000 osd.4 up 1.00000 1.00000
5 hdd 0.27299 osd.5 up 1.00000 1.00000
6 hdd 0.27299 osd.6 up 1.00000 1.00000
7 hdd 0.27299 osd.7 up 1.00000 1.00000
8 hdd 0.27299 osd.8 up 1.00000 1.00000
9 hdd 0.27299 osd.9 up 1.00000 1.00000
10 hdd 0.27299 osd.10 up 1.00000 1.00000
11 hdd 0.27299 osd.11 up 1.00000 1.00000
12 hdd 0.27299 osd.12 up 1.00000 1.00000
13 hdd 0.27299 osd.13 up 1.00000 1.00000
14 hdd 0.27299 osd.14 up 1.00000 1.00000
15 hdd 0.27299 osd.15 up 1.00000 1.00000
16 hdd 0.27299 osd.16 up 1.00000 1.00000
17 hdd 0.27299 osd.17 up 1.00000 1.00000
18 hdd 0.27299 osd.18 up 1.00000 1.00000
19 hdd 0.27299 osd.19 up 1.00000 1.00000
-5 5.45599 host ceph02-q
20 ssd 0.27299 osd.20 á¡áá 1.00000 1.00000
21 ssd 0.27299 osd.21 á¡áá 1.00000 1.00000
22 ssd 0.27299 osd.22 á¡áá 1.00000 1.00000
23 ssd 0.27299 osd.23 á¡áá 1.00000 1.00000
24 hdd 0.27299 osd.24 up 1.00000 1.00000
25 hdd 0.27299 osd.25 up 1.00000 1.00000
26 hdd 0.27299 osd.26 up 1.00000 1.00000
27 hdd 0.27299 osd.27 up 1.00000 1.00000
28 hdd 0.27299 osd.28 up 1.00000 1.00000
29 hdd 0.27299 osd.29 up 1.00000 1.00000
30 hdd 0.27299 osd.30 up 1.00000 1.00000
31 hdd 0.27299 osd.31 up 1.00000 1.00000
32 hdd 0.27299 osd.32 up 1.00000 1.00000
33 hdd 0.27299 osd.33 up 1.00000 1.00000
34 hdd 0.27299 osd.34 up 1.00000 1.00000
35 hdd 0.27299 osd.35 up 1.00000 1.00000
36 hdd 0.27299 osd.36 up 1.00000 1.00000
37 hdd 0.27299 osd.37 up 1.00000 1.00000
38 hdd 0.27299 osd.38 up 1.00000 1.00000
39 hdd 0.27299 osd.39 up 1.00000 1.00000
-7 6.08690 host ceph03-q
40 ssd 0.27299 osd.40 á¡áá 1.00000 1.00000
41 ssd 0.27299 osd.41 á¡áá 1.00000 1.00000
42 ssd 0.27299 osd.42 á¡áá 1.00000 1.00000
43 ssd 0.27299 osd.43 á¡áá 1.00000 1.00000
44 hdd 0.27299 osd.44 up 1.00000 1.00000
45 hdd 0.27299 osd.45 up 1.00000 1.00000
46 hdd 0.27299 osd.46 up 1.00000 1.00000
47 hdd 0.27299 osd.47 up 1.00000 1.00000
48 hdd 0.27299 osd.48 up 1.00000 1.00000
49 hdd 0.27299 osd.49 up 1.00000 1.00000
50 hdd 0.27299 osd.50 up 1.00000 1.00000
51 hdd 0.27299 osd.51 up 1.00000 1.00000
52 hdd 0.27299 osd.52 up 1.00000 1.00000
53 hdd 0.27299 osd.53 up 1.00000 1.00000
54 hdd 0.27299 osd.54 up 1.00000 1.00000
55 hdd 0.27299 osd.55 up 1.00000 1.00000
56 hdd 0.27299 osd.56 up 1.00000 1.00000
57 hdd 0.27299 osd.57 up 1.00000 1.00000
58 hdd 0.27299 osd.58 up 1.00000 1.00000
59 hdd 0.89999 osd.59 up 1.00000 1.00000
blackjack ááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážááŒáá·áº áá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯áẠvirtual racks ááŸáá·áº áá¬áá¬áá»á¬ážááᯠáááºáá®ážááŒáá«á áá¯á·á
root@ceph01-q:~#ceph osd crush add-bucket rack01 root #ÑПзЎалО МПвÑй root
root@ceph01-q:~#ceph osd crush add-bucket ceph01-q host #ÑПзЎалО МПвÑй Ñ
ПÑÑ
root@ceph01-q:~#ceph osd crush move ceph01-q root=rack01 #пеÑеÑÑавОлО ÑеÑÐ²ÐµÑ Ð² ÐŽÑÑгÑÑ ÑÑПйкÑ
root@ceph01-q:~#osd crush add 28 1.0 host=ceph02-q # ÐПбавОлО ÐСРв ÑеÑвеÑ
# ÐÑлО кÑОвП ÑПзЎалО ÑП ЌПжМП ÑЎалОÑÑ
root@ceph01-q:~# ceph osd crush remove osd.4
root@ceph01-q:~# ceph osd crush remove rack01
áá»áœááºáá±á¬áºááá¯á· ááŒá¯á¶ááœá±á·áá²á·ááá²á· ááŒá¿áá¬ááœá±á ááá¯ááºááœá² host á¡áá áºáá áºáá¯áááºáá®ážááŒá®áž ááŸáááŒá®ážáá¬áž rack - command ááá¯á· ááœáŸá±á·ááá·áºá¡áá« cluster á ceph osd crush ááœáŸá±á· ceph01-host root=rack01 á¡á±ážáá²ááœá¬ážááŒá®áž áá±á¬áºáá®áá¬áá»á¬áž áááŒá¯ááºááŒá¯áẠááŒá¯ááºáá»áá¬áááºá ááá¯ážááŸááºážáá±á¬ CTRL+C ááŒáá·áº á¡áááá·áºááᯠáá»ááºááá¯ááºááŒááºážááŒáá·áº á¡á á¯á¡áá±ážááᯠáááºááŸááá±á¬áááá¯á· ááŒááºáá±ážáááºá
ááŸá¬ááœá±ááŸá¯áá
áºáá¯á á€ááŒá¿áá¬ááᯠááŒááá²á·áááº-
ááŒá±ááŸááºážáá»ááºááẠcrushmap ááᯠá áœáá·áºáá áºááŒá®áž á¡ááá¯ááºážááᯠááá¯áá±áá¬á០áááºááŸá¬ážááẠááŒá áºáá¬áááºá á ááºážáá»ááºáž replicated_ruleset
root@ceph01-prod:~#ceph osd getcrushmap -o crushmap.row #ÐаЌпОЌ каÑÑÑ Ð² ÑÑÑПЌ вОЎе
root@ceph01-prod:~#crushtool -d crushmap.row -o crushmap.txt #пеÑевПЎОЌ в ÑОÑаеЌÑй
root@ceph01-prod:~#vim crushmap.txt #ÑеЎакÑОÑÑеЌ, ÑЎалÑÑ rule replicated_ruleset
root@ceph01-prod:~#crushtool -c crushmap.txt -o new_crushmap.row #кПЌпОлОÑÑеЌ ПбÑаÑМП
root@ceph01-prod:~#ceph osd setcrushmap -i new_crushmap.row #загÑÑжаеЌ в клаÑÑеÑ
Akhtung- á€áá¯ááºáá±á¬ááºáá»ááºááẠOSD áá»á¬ážá¡ááŒá¬áž áá±áá¬áá»áá¬ážááŸá¯á¡ááœá²á·á áá»áááºááœááºáá»áŸá¬ááᯠááŒá áºáá±á«áºá á±ááá¯ááºáááºá á¡á²áá«á áá»áœááºáá±á¬áºááá¯á·á¡ááœáẠááŒá áºáá±á«áºá á±áá²á·áá±ááá·áº á¡ááœááºáááºážáá«áááºá
á
ááºážáááºááŸá¯á¡á
á¯ááœáẠáá»áœááºá¯ááºááá¯á·ááŒá¯á¶ááœá±á·áááá·áº áá°ážáááºážááá·áºá¡áá¬ááŸá¬ OSD áá¬áá¬ááᯠááŒááºáááºá
áááºááŒá®ážáá±á¬ááºá áááºážááá¯á·ááẠáá¬áá¬á¡áá
áºáá»á¬ážááŸáá·áº ááŸá±á¬ááºá¡áááºáá»á¬ážááá¯á· ááœáŸá±á·áá¬ážáááºááᯠáá±á·ááœá¬ážááŒá®áž root áá¯á¶áá±ááá¯á· ááŒááºááœá¬ážááŒááºážááŒá
áºáááºá
ááááºá¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠssd drives á¡ááœáẠáá®ážááŒá¬áž root áá
áºáá¯ááŸáá·áº spindle drives á¡ááœáẠáá®ážááŒá¬ážáá
áºáá¯ááᯠáááºáá®ážáá¬ážááá·áº áá±á¬ááºáá¯á¶ážá¡á
á®á¡á
á¥áºááᯠá
á¯á
ááºážááŒá®ážá áá»áœááºá¯ááºááá¯á·ááẠOSD á¡á¬ážáá¯á¶ážááᯠrack áá»á¬ážá¡ááŒá
áºáá°áᬠáá¯á¶ááŸáẠroot ááᯠááá¯ážááŸááºážá
áœá¬ áá»ááºááá¯ááºáá«áááºá ááŒááºáááºá
áááºááŒá®ážáá±á¬áẠOSD ááẠáááºáááºáááºááŸááá±áá²á·áááºá
á
á¬ááœááºá
á¬áááºážáá»á¬ážááᯠáá±á¬ááºááá¯ááºážááœáẠáá°ážáá±á¬áºááŒá®ážáá±á¬ááºá á€á¡ááŒá¯á¡áá°á¡ááœáẠáá¬áááºááŸáááá·áº ááá·áºáááºáá»ááºáá
áºáá¯ááᯠááœá±á·ááŸááá²á·áááºá áá¯áááá¡ááá¯ááºážááŸá¬ áá°á·á¡ááŒá±á¬ááºáž
áá áºá¡áá»áá¯ážá¡á á¬ážá¡ááá¯áẠááá°áá®áá±á¬á¡á¯ááºá á¯áá»á¬ážááᯠáá»áœááºá¯ááºááá¯á·ááŒá¯áá¯ááºáá¯á¶á
á áááºáááºá áá»áœááºá¯ááºááá¯á·ááẠssd á¡ááœááºááŸáá·áº hdd á¡ááœáẠroot ááŸá áºáá¯ááá¯áááºáá®ážáá²á·áááºá
root@ceph01-q:~#ceph osd crush add-bucket ssd-root root
root@ceph01-q:~#ceph osd crush add-bucket hdd-root root
áá¬áá¬áá»á¬ážááẠá¡áá»áá¯ážáá»áá¯ážáá±á¬ ááŸá±á¬ááºá¡áááºáá»á¬ážááœáẠáááºááŸááá±á¬ááŒá±á¬áá·áº á¡áááºááŒá±á á±áááºá¡ááœáẠáááºážááá¯á·ááœáẠáá¬áá¬áá»á¬ážááŒáá·áº ááŸá±á¬ááºá¡áááºáá»á¬ážááᯠáááºáá®ážáá²á·áááºá
# СÑПйкО:
root@ceph01-q:~#ceph osd crush add-bucket ssd-rack01 rack
root@ceph01-q:~#ceph osd crush add-bucket ssd-rack02 rack
root@ceph01-q:~#ceph osd crush add-bucket ssd-rack03 rack
root@ceph01-q:~#ceph osd crush add-bucket hdd-rack01 rack
root@ceph01-q:~#ceph osd crush add-bucket hdd-rack01 rack
root@ceph01-q:~#ceph osd crush add-bucket hdd-rack01 rack
# СеÑвеÑа
root@ceph01-q:~#ceph osd crush add-bucket ssd-ceph01-q host
root@ceph01-q:~#ceph osd crush add-bucket ssd-ceph02-q host
root@ceph01-q:~#ceph osd crush add-bucket ssd-ceph03-q host
root@ceph01-q:~#ceph osd crush add-bucket hdd-ceph01-q host
root@ceph01-q:~#ceph osd crush add-bucket hdd-ceph02-q host
root@ceph01-q:~#ceph osd crush add-bucket hdd-ceph02-q host
áááºážááá¯á·á¡áá»áá¯ážá¡á á¬ážá¡ááá¯áẠdisk áá»á¬ážááᯠááá°áá®áá±á¬áá¬áá¬áá»á¬ážááá¯á· ááŒáá·áºáá±áá±ážáááºá
root@ceph01-q:~# ÐОÑкО Ñ 0 пП 3 ÑÑП SSD, МаÑ
ПЎÑÑÑÑ Ð² ceph01-q, ÑÑавОЌ ОÑ
в ÑеÑвеÑ
root@ceph01-q:~# ssd-ceph01-q
root@ceph01-q:~#ceph osd crush add 0 1 host=ssd-ceph01-q
root@ceph01-q:~#ceph osd crush add 1 1 host=ssd-ceph01-q
root@ceph01-q:~#ceph osd crush add 2 1 host=ssd-ceph01-q
root@ceph01-q:~#ceph osd crush add 3 1 host=ssd-ceph01-q
root-ceph01-q:~# аМалПгОÑМП Ñ ÐŽÑÑгОЌО ÑеÑвеÑаЌО
ssd-root ááŸáá·áº hdd-root áááºážááŒá±á¬ááºážáá»á¬ážááŒá¬ážááœáẠdisks áá»á¬ážááᯠááŒáá·áºááŒá²ááŒá®ážá root-default ááᯠááá¬á¡ááŒá áºáá¬ážáá²á·ááŒá®ážá ááá¯á·ááŒá±á¬áá·áº áááºážááᯠáá»ááºááá¯ááºáá«áááºá
root-ceph01-q:~#ceph osd crush remove default
áá±á¬ááºáá áºáá¯á áááºáá®ážáá¬ážáá²á· áá±áá°ážáááºááœá±áá²á· á ááºážááá·áº ááŒáá·áºááŒá°ážáá±áž á ááºážáá»ááºážááœá±ááᯠáááºáá®ážááá¯á· ááá¯áá«ááẠ- á ááºážáá»ááºážááœá±ááŸá¬ ááẠroot ááœá±á áá»áœááºá¯ááºááá¯á·áá²á· pool data áá²á· áá¯á¶áá°áá²á· áá°ážááŒá¬ážááŸá¯á¡ááá·áºááᯠááœáŸááºááŒááá¯ááºááá² - á¥ááá¬á áá¯á¶áá°ááœá±áᬠááá°áá®áá²á· áá¬áá¬ááœá±ááŸá¬ ááŸáááááºá ááá¯á·ááá¯áẠááá°áá®áá±á¬ ááŸá±á¬ááºá¡áááºáá»á¬ážááœáẠ(áá»áœááºá¯ááºááá¯á·á ááá¯ááá¯á·áá±á¬ááŒáá·áºááŒá°ážááŸá¯áá áºáá¯ááŸááá»áŸáẠááá°áá®áá±á¬á¡ááŒá áºáá»á¬ážááœááºááẠáááºáá¯ááºááá¯ááºáááº)
á¡áá»áá¯ážá¡á
á¬ážáá
áºáá¯ááᯠáááœá±ážáá»ááºáá®á á
á¬ááœááºá
á¬áááºážáá»á¬ážááᯠáááºááẠááá¯áá±á¬ááºážáááº-
root-ceph01-q:~#ceph osd crush rule create-simple rule-ssd ssd-root host firstn
root-ceph01-q:~#ceph osd crush rule create-simple rule-hdd hdd-root host firstn
root-ceph01-q:~# ÐÑ ÑказалО Ўва пÑавОла, в кПÑПÑÑÑ
ЎаММÑе ÑеплОÑОÑÑÑÑÑÑ
root-ceph01-q:~# ÐŒÐµÐ¶ÐŽÑ Ñ
ПÑÑаЌО - ÑП еÑÑÑ ÑеплОка ЎПлжМа лежаÑÑ ÐœÐ° ÐŽÑÑгПЌ Ñ
ПÑÑе,
root-ceph01-q:~# Ўаже еÑлО ПМО в ПЎМПй ÑÑПйке
root-ceph01-q:~# РпÑПЎакÑеМе, еÑлО еÑÑÑ Ð²ÐŸÐ·ÐŒÐŸÐ¶ÐœÐŸÑÑÑ, лÑÑÑе ÑаÑпÑеЎелОÑÑ Ñ
ПÑÑÑ
root-ceph01-q:~# пП ÑÑПйкаЌ О ÑказаÑÑ ÑаÑпÑеЎелÑÑÑ ÑеплОкО пП ÑÑПйкаЌ:
root-ceph01-q:~# ##ceph osd crush rule create-simple rule-ssd ssd-root rack firstn
áá±á¬ááºážááŒá®á áá»áœááºá¯ááºááá¯á·ááẠá¡áá¬áááºááœáẠáá»áœááºá¯ááºááá¯á·á virtualization á disk áá¯á¶áá»á¬ážááᯠááááºážáááºážááá¯ááá·áº pool áá»á¬ážááᯠáááºáá®ážááẠ- PROXMOX:
root-ceph01-q:~# #ceph osd pool create {NAME} {pg_num} {pgp_num}
root-ceph01-q:~# ceph osd pool create ssd_pool 1024 1024
root-ceph01-q:~# ceph osd pool create hdd_pool 1024 1024
ááŒá®ážáá±á¬á· áá®áá±áá°ážáááºááœá±ááᯠáááºááá¯áá±áá¬áá»áá¬ážááŸá¯á ááºážáá»ááºážááœá±ááᯠá¡áá¯á¶ážááŒá¯áááá²ááá¯áᬠááŒá±á¬ááŒáá±ážáá«áŠáž
root-ceph01-q:~#ceph osd crush rule ls # ÑЌПÑÑОЌ ÑпОÑПк пÑавОл
root-ceph01-q:~#ceph osd crush rule dump rule-ssd | grep rule_id #вÑбОÑаеЌ ID ÐœÑжМПгП
root-ceph01-q:~#ceph osd pool set ssd_pool crush_rule 2
áá±áá¬áá»áá¬ážáá±ážááá·áº á¡ááœá²á·á¡áá±á¡ááœááºá ááœá±ážáá»ááºááŸá¯á¡á¬áž ááá·áºá¡á á¯á¡áá±ážá¡ááœáẠáááá¯ááŸááááºážá áœá²á¡ááŒááºááŒáá·áº áá»ááºážáááºááá«ááẠ- ááá·áºááŸááºážááŒá±á¡á¬ážááŒáá·áº OSD áááºáá»áŸááŸááááºá áá±áá¬ááá¬á (á á¯á á¯áá±á«ááºážááá¬áá áá¬ááá¯ááºááŸá¯ááºážáá áºáá¯á¡ááŒá áº) áá±áá°ážáááºááœáẠáááºááá·áºá¡áá¬ááŸááááºá á á¯á á¯áá±á«ááºážáá±áá¬ááá¬áá
á á¯á á¯áá±á«ááºážá áá áºáá±á«áºááœáẠáá±áá¬áá»áá¬ážááŸá¯á¡ááœá²á· 300 áááºáááá¯á á±ááẠá¡ááŒá¶ááŒá¯ááá¯áááºááŸá¬á áá±áá¬áá»áá¬ážááŸá¯á¡á¯ááºá á¯áááºáá»á¬ážááŸáá·áº áááºáá»ááºáá®ááẠááá¯ááá¯ááœááºáá°áááá·áºááẠ- ááá¯ááá¯áááºááŸá¬ ááá·áºáá±áááºáá áºáá¯áá¯á¶ážááœáẠ10 Tb áááºáá¬ááŒá®áž áááºážááœáẠ10 PG áá«ááŸááá«á áááºáá»ááºáá®ááẠáá¬áá¬ááá¯ááºá¡á¯ááºáá²áá»á¬áž (pg) ááŒáá·áº áá áºáá»ááŒááºážááŒáá·áº ááŒá¿áá¬ááŸáááá¯ááºááẠ- áá±ážáááºáá±á¬á¡ááœááºá¡á á¬ážááŸááá±á¬ áá²áá¯á¶ážáá²ááá¯á· áá²áá»á¬ážááᯠááœááºááœááºáá°áá°ááŸáá·áº ááá¯ááá¯áá®áá®á áœá¬ áá±á¬ááºážááá·áºáá«á)
ááá¯á·áá±á¬áº PG á¡áá±á¡ááœáẠáá»á¬ážáá±áá±á áááºážááá¯á·á áááºáá±áá¬ááᯠááœááºáá»ááºáá¬ááœáẠáááºážááŒá áºáá»á¬áž ááá¯áá»á¬ážáá±áá± - memory ááŸáá·áº CPU ááᯠá áááºá¡áá¯á¶ážááŒá¯áá¬áááºááᯠáá»áœááºá¯ááºááá¯á· ááááááááºááŒá áºáááºá
á¡ááŒááºážáá»ááºáž áá¬ážáááºááŸá¯ ááŸáááá¯ááºáááº
áá á¹á ááºážá á¬áááºáž-
source: www.habr.com