CEPH-แแก แจแแ แฉแแแ. แฒแแฌแแแ 1
แฉแแแ แแแฅแแแแ แฎแฃแแ แแแ แ, แแแ แแแขแแแฃแ แ แแแแแแ แแแแแ, แแแแคแแแฃแ แแ แแแฃแแ BGP, แ แแแแแแแแ แแแแฃแแ SSD แแ แงแแแแ แคแแ แแกแ แแ แแแแแก SAS แแแกแแ, แแกแแแ proxmox แแ แกแฃแ แแแแ, แ แแ แงแแแแ แกแขแแขแแแฃแ แ แแแแแชแแแ แฉแแแแแงแแแแแแแ แฉแแแแก แกแแแฃแแแ S3 แกแแชแแแจแ. แแก แงแแแแแคแแ แ แแ แแ แแก แกแแญแแ แ แแแ แขแฃแแแแแแชแแแกแแแแก, แแแแ แแ แ แแแแ แช แแ แแแแฌแงแแแ แฆแแ แฌแงแแ แแก แแแแแงแแแแแแก, แจแแแแแ แแแฐแงแแแแ แแฅแแแแก แฐแแแแก แแแแแแแ. แแ แแแแแ แแ, แ แแช แแแฌแฃแฎแแแแ, แแงแ BGP. แแกแแคแแแแจแ แแ แแแแ แแ แแก แฃแคแ แ แฃแแฌแแ, แฃแแแกแฃแฎแแกแแแแแแ แแ แแแแ แแแฃแ แ, แแแแ แ แจแแแ BGP แแแ แจแ แฃแขแแแแชแแ. แแ แแแชแแแ, แ แแ แแแแ แฉแแแงแแแแแแแแแ แแแกแจแ.
แแแแชแแแ แขแ แแแแแแฃแ แ แแงแ - แแงแ CEPH, แแแแ แแ แแก แแ แช แแกแ แแแ แแแ แแฃแจแแแแแ. แกแแญแแ แ แแงแ "แกแแแแแแก" แแแแแแแแ.
แแแแกแขแแ แ, แ แแแแแแช แแแแแฆแ, แแงแ แฐแแขแแ แแแแแฃแแ, แแแฉแฅแแ แแแแ แแแ แแแแฃแแ แแ แแ แแฅแขแแแฃแแแ แแ แแงแ แแแ แแแแฃแแ. แแแ แจแแแแแแแแ แกแฎแแแแแกแฎแแ แแแแแซแแแแก แแ แ แฏแแฃแคแแกแแแ, แแ แแ แกแแแ แแ แแแแแ, แ แแแแแแช แแแฅแแแแแแก แ แแแแ แช แแแแกแขแแ แ, แแกแแแ แกแแฏแแ แ แฅแกแแแ. แแแแแซแแแ แแแกแแแแแ แแแฎแ แขแแแแก แแแกแแแแแ - แแ แ แขแแแแก SSD, แจแแแ แแแแแฃแแ แแ แชแแแแ แแแแแแแแแแก แฌแแกแแแจแ แแ แแ แ แขแแแแก HDD แกแฎแแแแแกแฎแแ แแแแแก, แจแแแ แแแแแฃแแ แแแกแแแ แฏแแฃแคแจแ. แกแฎแแแแแกแฎแแ แแแแแก แแ แแแแแแ แแแแแแ แแ แกแฎแแแแแกแฎแแ OSD แฌแแแแ.
แแแแแ แแแแคแแแฃแ แแชแแ แแแงแแคแแแแ แแ แแแฌแแแแ - แแแแ แแชแแฃแแ แกแแกแขแแแแก แแแ แแแฃแแแ แแแ ะธ แแแแแ CEPH-แแก tuning แแ แแแกแ แแแ แแแแขแ แแแ.
OS-แแก แแแแแฎแแแแ
แฅแกแแแ
แแแฆแแแ แจแแงแแแแแแ แแแแฅแแแแ แ แแแแ แช แฉแแฌแแ แแแ, แแกแแแ แแแแแแแแกแแแแแ. แฉแแฌแแ แแกแแก - แแแแขแแ, แ แแ แแแแแแขแ แแแ แแแแฆแแแก แแแกแฃแฎแก แฌแแ แแแขแแแฃแแ แฉแแฌแแ แแก แจแแกแแฎแแ, แกแแแแ แกแฎแแ แแแแแแแแแแก แฏแแฃแคแแแจแ แแแแแชแแแแแแก แแกแแแแ แแ แแแแแแกแขแฃแ แแแแ แฌแแ แแแขแแแแก. แแแแแแแแ CRUSH แ แฃแแแแ แแกแแแแแก แแแแแฌแแแแแแก แฌแแกแแแ แแงแ แแแแ แ แแแแแแ แแแแ แฐแแกแขแแ, แฅแกแแแ แงแแแแแแแแก แแแแแแงแแแแแแแ.
แแแแขแแ, แแแ แแแแ, แ แแช แแแแแแฌแงแแแขแ, แแงแ แแแแแ แจแแแแกแฌแแ แแแแแ แแแแแแแแ แ แฅแกแแแ, แแแแแแ แแฃแแแ แชแแแแแแแ แแแแแ แฌแแฃแแแแแแ แชแแแแ แฅแกแแแแแจแ แแแแแกแแแ.
แแแกแแฌแงแแกแแกแแแแก, แแ แจแแแชแแแแ แฅแกแแแแก แแแ แแแแแแก แแแ แแแแขแ แแแ. แแแแแฌแงแ แ แแแแแแก แแแงแแแแแแ:
แ แ แแแฎแแ:
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
แแแ แแแ, แแแแแ แแแคแแก แแแแฃแแแแขแแชแแแก แจแแแแแ
แแแแแแ แแ MTU แแแ 9000.
root@ceph01:~#ip link set dev ens1f0 mtu 9000
แแแแแขแแแฃแแแ /etc/network/แแแขแแ แคแแแกแแแจแ แแกแ, แ แแ แงแแแแ แแแแแ แฉแแแแแแแแแ แฉแแแขแแแ แแแแ แแแจแแแแแกแแก
แแแขแ / แ.แจ. / แฅแกแแแ / แแแขแแ แคแแแกแ
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 แแแ แแแแก แกแแฎแแแฃแ แแแแก แแแแแ แแแฃแแแ แแแแแฎแแแแ. แแแแก แแแแแแแแกแฌแแแแแแ, แ แแ แแแแแซแแแก แแฅแแ 128 แ แแแแ แแขแแฃแแ แแแฎแกแแแ แแแ, แฉแแแ แแแแแฆแแ แแแแคแแแฃแ แแชแแแก แคแแแแ 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 ะฟะฐะบะตัะต. ะ ะฝะฐัะตะผ ัะปััะฐะต ัะฒะปัะตััั ะฟะปะฐัะตะฑะพ, ะฟัะพััะพ
# ะฒัะณะปัะดะธั ะบัะฐัะธะฒะพ)
ะกแแ แฌแงแแแแแแ แฅแกแแแ แแแแแงแแคแแแ แแงแ แชแแแแ 10 แแ/แฌแ แฅแกแแแแก แแแขแแ แคแแแกแแแแ แชแแแแ แแ แขแงแแ แฅแกแแแจแ. แแแแแแฃแแ แแแแฅแแแ แแฆแญแฃแ แแแแ แแงแ แแ แแแแ แแแ แขแแแแ แฅแกแแแแก แแแ แแแแแแ แแแแแแแฅแกแ 10/25 แแแแขแ/แฌแ, แฉแแ แแฃแแ แแ แชแแแแแฃแ 10 แแ/แฌแ แแแแแแ แแแแแจแ. แแแ แแแแชแแ แแแแฎแแ แชแแแแแ OSPF-แแก แแแแแงแแแแแแ, แแแแแแแแ lacp-แแแ แจแแแแแจแแ แแแ แ แแขแแแฆแแช แแฉแแแแแแแ แแแฅแกแแแฃแ 16 แแ/แฌแ แแแแขแแ แฃแแแ แแแแแแแก, แฎแแแ ospf แฌแแ แแแขแแแแ แแแแแแงแแแแแแ แแ แแแ แแแแฃแแก แแแแแแฃแ แแแแฅแแแแแ. แกแแแแแแแแ แแแแแแแ แแงแ ROCE-แแก แแแแแงแแแแแ แแ แแแแแแแฅแกแแแแ แแแขแแแขแฃแ แแแแก แจแแกแแแชแแ แแแแแ. แ แแแแ แแแแแงแแแแ แฅแกแแแแก แแก แแแฌแแแ:
- แแแแแแแแ แแแแแ แแแแฅแแแแแก แแฅแแ แแแ แ IP แแแกแแแแ แแแแ BGP-แแ, แฉแแแ แแแญแแ แแแแ แแ แแแ แแแฃแแ แฃแแ แฃแแแแแงแแคแ - (แฃแคแ แ แแฃแกแขแแ, แแ แกแขแแขแแแก แแแฌแแ แแก แแ แแก แแงแ
frr=6.0-1 ) แฃแแแ แแแแ. - แกแแแ แแ แฏแแแจแ, แแแแฅแแแแแก แฐแฅแแแแแ แแ แ แฅแกแแแฃแ แ แแแขแแ แคแแแกแ, แแแแแแฃแแก แแ แ แแแขแแ แคแแแกแ - แกแฃแ 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
แ แแแแแแแช แแแแฅแแแแแ แแ แแแแแแแก แฎแแแแแแ.
แแแกแแ
แจแแแแแแ แแแแแฏแ แแงแ แแแกแแแแแก แแแขแแแแแแชแแ. SSD-แกแแแแก แแ แจแแแชแแแแ แแ แแคแแแ แแ แHDD-แกแแแแก - แแแแ แแแแ. แฃแฎแแจแแ แ แแ แแแฅแแแ, NOOP แแฃแจแแแแก "แแแ แแแแ แจแแแแกแฃแแ, แแแ แแแแ แแแแแกแแแแก" แแ แแแชแแแแ, แ แแแแแแช แแแแแแกแฃแ แแ แแฆแแ แก แ แแแแ แช "FIFO (First In, First Out)." แแแแฎแแแแแแ แฉแแแแกแแแแกแแก แ แแแจแ แแแแแ. DEADLINE แฃแคแ แ แฌแแแแแฎแแแแแ แแ แแแแขแแ แแแฃแแ, แแแ แแ แแแแกแ, แ แแแแก แแ แแชแแกแ แแฆแแแก แแแแฅแแแก แแฅแกแแแฃแแแฃแ แฌแแแแแแก แแแกแแแ แแแแ แแชแแแก แแ แแก. แแก แจแแกแแแแจแแแแแ แฉแแแแ แกแแกแขแแแแกแแแแก - แแแแแก แแ แแแแแก, แแฎแแแแ แแ แแ แแ แแชแแกแ แแฃแจแแแแก แแแแแแฃแ แแแกแแแ - OSD แแแแแแ.
(แแแ, แแแกแแช แกแฃแ แก แฉแแงแแแแแแแก I/O แแแแแแแแ แจแ, แแแแก แจแแกแแฎแแ แฌแแแแแแฎแแ แแฅ:
แแแกแแช แ แฃแกแฃแแแ แแแแฎแแ แฃแ แฉแแแแแ:
Linux-แแก แแแ แแแฃแแแ แแแแก แ แแแแแแแแแชแแแแจแ แแกแแแ แ แแแแแแแแแแฃแแแ nr_request-แแก แแแแ แแ
nr_แแแฎแแแก
nr_requests-แแก แแแแจแแแแแแแ แแแแกแแแฆแแ แแแก I/O แแแแฎแแแแแแแก แ แแแแแแแแแก, แ แแแแแแแช แแฃแคแแ แแแแ แแแแแ, แกแแแแ I/O แแแแแแแแแแ แแแแแแแแแก/แแแแฆแแแก แแแแแชแแแแแก แแแแแแก แแแฌแงแแแแแแแแแ, แแฃ แแงแแแแแ RAID แแแ แแแก/แแแแ แแแฌแงแแแแแแแแก, แ แแแแแกแแช แจแแฃแซแแแ แแแฃแแแแแแแแก แฃแคแ แ แแแ แ แแแก, แแแแ แ I. /O แแแแแแแแแแ แแแงแแแแแฃแแแ, nr_requests-แแก แแแแจแแแแแแแแก แแแแฆแแแแแ แจแแแซแแแแ แฎแแแ แจแแฃแฌแงแแก แแแฃแแฏแแแแกแแแแก แแ แจแแแแชแแ แแก แกแแ แแแ แแก แแแขแแแ แแแ, แ แแแแกแแช แกแแ แแแ แแ แแแแ แ แแแแแแแแแ I/O แฎแแแแ. แแฃ แแฅแแแ แแงแแแแแ Deadline-แก แแ CFQ-แก, แ แแแแ แช แแแแ แแแก, แแแ แฉแแแ แแแแงแแแแ nr_request แแแแจแแแแแแแ แ แแแแก แกแแฆแ แแแก แแแแจแแแแแแแแแ 2-แฏแแ .
แแแแ แแ! แแแแแ แแแฅแแแแฅแแแแ, CEPH-แแก แแแแแแแแแ แแแ แแแแ แฌแแฃแแแแแ, แ แแ แแแแ แแ แแแ แแขแแขแแแแก แกแแกแขแแแ แฃแแแ แแฃแจแแแแก
WBThrottle แแ/แแ nr_แแแแฎแแแแแแ
WBThrottle แแ/แแ nr_แแแแฎแแแแแแ
แคแแแแแก แจแแแแฎแแ แแงแแแแแก แแฃแคแแ แฃแ I/O-แก แฉแแกแแฌแแ แแ; แแก แแแแฅแแก แฃแแแ แแ แกแแ แแแแแแก, แแฃ แคแแแแแก แจแแแแฎแแแก แแฃแ แแแแ แฃแคแ แ แกแฌแ แแค แแแแแแแแ. แแแแแแขแแก แแแแฎแแแแแแ แแชแแแแแแ, แ แแแแ แช แแ แแแแแชแแแแแ แฉแแแฌแแ แแแ แแฃแ แแแแจแ, แแ แจแแแแแ แแ แแชแฎแแแ แแแแแ แแแแแชแแแแ แแแกแแแ แแแแแแแแแแแ, Linux-แแก แกแขแแแแแ แขแฃแแ แคแฃแแฅแชแแแแแ แแแแก แแแแแงแแแแแแ. แแก แจแแกแแซแแแแแแก แฎแแแก spindle OSD-แแแก แฃแแ แฃแแแแแงแแก แฉแแฌแแ แแก แจแแงแแแแแแ SSD-แแแแก แแกแแแแกแ, แ แแแแกแแช แฌแแ แก แแชแแ แ แแแแแแแฃแแแ แแแฌแแแก. แแก แแแแแแแแแแฃแแ แฉแแฌแแ แ แแกแแแ แกแแจแฃแแแแแแก แแซแแแแก แแแ แแแก แแแแแ แแแแฎแแแแแก แแแกแแแก I/O แแแแฎแแแแแแแก แ แแแ แแแแแแแชแแ, แแ แแแแแแ, แ แแ แแ แแแแ แแแแแแแแ แแกแแแ แแ แแแกแชแแแก แกแแจแฃแแแแแแก แแ แกแแแฃแ แแแกแแแก แแแแแแก แแแ แฉแแแ แฃแคแ แ แแแขแแแแแฃแ แ แแแ แแแแแแแ แคแแ แคแแขแแแแ. แฌแแแแแ แแคแแฅแขแ แแ แแก แแก, แ แแ แแฅแแแ แจแแแแซแแแแ แแแแแฆแแ แแแแแ แแแขแ I/O แแแแแแฃแแ แแแกแแแแแ, แแแแ แ แแก แจแแกแแซแแแแแแ แแฅแแแแแแ แแแ แแแแแ แ แแ แกแแแฅแ แแแฃแแ I/O-แแ.
แแฃแแชแ, แแแ แแแแฃแแ แแ แแแแแแ แฌแแ แแแแฅแแแแแ, แแฃ แแแชแแแฃแ Ceph แแแแกแขแแ แจแ แจแแแแแแแแแ แฉแแแแฌแแ แแแแก แแแชแฃแแแแ แแฆแแแแขแแแ แซแแ แแแแแ แแแกแแแแแก แงแแแแ แจแแกแแซแแแแแแแแก. แแ แกแชแแแแ แจแ, แแแแแแแแแ I/O แแแแ แแชแแแแแก แแแแแแแ แ แแแแแแแแ, แ แแแแแแแช แแแแแแแ แแแกแแแ แฉแแฌแแ แแก, แจแแแซแแแแ แฃแแแแขแ แแแแ แแแแแแ แแแก แแ แแแแแแฌแแแแก I/O แ แแแแแ, แ แแแแแแช แแแกแแแก แแแแ แแแกแแก แแ Ceph แ แแแแแก. แฌแแแแแฎแแแก แแแแฎแแแแแแ แแแแกแแแฃแแ แแแแ แแแแฅแแแแแแก, แ แแแแแ แแกแแแ แฉแแ แแแแแแ แฉแแฌแแ แแก แแแแฎแแแแแแก แจแแ แแก, แ แแกแแช แจแแแซแแแแ แ แแแแแแแแ แฌแแแ แแแกแญแแ แแแก แแแ แแแแแ แแแกแแแ แฉแแกแแแก.
แแ แแ แแแแแแแก แแแแแกแแญแ แแแแ, Ceph-แก แแฅแแก แฉแแกแแฃแแ แฉแแฌแแ แแก แแแฅแแแแแแ แคแแแแแแแก แกแแชแแแจแ, แกแแฎแแแฌแแแแแแ WBThrottle. แแแ แจแแฅแแแแแแ แแแแกแแแแก, แ แแ แจแแแฆแฃแแแก แแแ แแแชแ แฉแแฌแแ แแก I/O-แแก แกแแแ แแ แ แแแแแแแแ, แ แแแแแกแแช แจแแฃแซแแแ แ แแแแก แแแแแ แแ แแแกแ แแแแ แแชแฎแแแก แแ แแชแแกแแก แแแฌแงแแแ แฃแคแ แ แแแ แ, แแแแ แ แแฃแแแแ แแแแ แแแฎแแแแ แแแ แแแแก แแแแ แฉแแ แแแแก แแแแ. แกแแแฌแฃแฎแแ แแ, แขแแกแขแแ แแแ แแฉแแแแแแก, แ แแ แแแแฃแแแกแฎแแแแ แแแแจแแแแแแแแแ แจแแแซแแแแ แแแแแช แแ แจแแแแชแแ แแ แแ แกแแแฃแแ แฅแชแแแ แแ แแแแแแแ, แ แแ แจแแแแชแแ แแก แแก แแแแแแแ แฌแแแแแฎแแแก แจแแงแแแแแแแแ. แแแ แแฅแขแแแแแก แจแแฃแซแแแ แจแแชแแแแแก แแก แฅแชแแแ แแ แจแแแแชแแ แแก แฉแแฌแแ แแก แ แแแแก แแแแแแแ แกแแแ แซแ แแ แแก แแแแแแแ แแแแแแแแ แแซแแแ แแแฎแแแแก. แแฃแแชแ, แแ แกแแแแแก แแแแแ แแแแกแ: แ แแแแ แแแกแแจแแแแ แฉแแแแฌแแ แแแแก แกแแแ แแ แแแฅแกแแแแแฃแ แ แ แแแแแแแแแก แจแแแชแแ แแแแ, แแฅแแแ แจแแแแซแแแแ แจแแแแชแแ แแ แแแแแ แแแ แแแแก แจแแกแแซแแแแแแแ, แแแฅแกแแแแแฃแ แแ แแแแแ แแแก แแแกแ แแคแแฅแขแฃแ แแแ แจแแแแแแแแแ แแแแฎแแแแแแแก แจแแแแแแแกแแก. แฆแแ แก แชแแขแแแ แแคแแฅแ แแ แแแแแ, แแฃ แ แ แแญแแ แแแแแ แแแขแ แแฅแแแแ แแแแแ แแขแฃแแ แแแแแงแแแแแแก แจแแแแฎแแแแแกแแแแก, แกแแแฃแจแแ แแแขแแแ แแแแกแแแแก แแ แแแ แแแแ แแแ แจแแกแแคแแ แแกแแ.
แฉแแฌแแ แแก-แฉแแแแฌแแ แแก แ แแแแก แกแแฆแ แแแก แแแกแแแแแขแ แแแแแแแ, แจแแแแซแแแแ แจแแแแชแแ แแ แแแแแฉแแแแแ I/O แแแแ แแชแแแแแก แกแแแ แแ แแแฅแกแแแแแฃแ แ แ แแแแแแแแ WBThrottle-แแก แแแ แแแแขแ แแแแก แแแแแงแแแแแแ, แแ แจแแแแซแแแแ แจแแแแชแแ แแ แแแแแฉแแแแแ แแแแ แแชแแแแแก แแแฅแกแแแแแฃแ แ แแแแจแแแแแแแ แแฅแแแแ แแแ แแแแก แแแแแแก แแแแแแ. แแ แแแแก แจแแฃแซแแแ แแคแแฅแขแฃแ แแ แแแแแแแขแ แแแแก แแ แแ แแ แแแแแ แฅแชแแแ แแ แแฅแแแแ แแ แแคแแ แแแชแแแแ แแฅแแแแ แแ แแแ แแแแขแ แแก แแแแฎแแ แชแแแแแแแก แกแแคแฃแซแแแแ.
แแกแแแ แฃแแแ แแฆแแแแจแแแก, แ แแ Ceph-แแก แแแแ แแชแแแก แแ แแแ แแขแแขแฃแแ แกแแกแขแแแ แฃแคแ แ แแคแแฅแขแฃแ แแ แแแกแแแก แแแแแแ แแแแแ แแแแฎแแแแแแแกแแแแก. แแแชแแแฃแ แแแกแแแ แแแแแแแ แ แแแแก แจแแแชแแ แแแแ, แ แแแแก แซแแ แแแแแ แแแแแแ แแแแ แแแแแแแก Ceph-แแ, แกแแแแช แแแก แแแขแ แแแแขแ แแแ แแฅแแก แแแแแ, แแฃ แ แ แแ แแแ แแขแแขแ แแฅแแก I/O แแแแ แแชแแแก. แแแแแแฎแแแแ แจแแแแแแ แแแแแแแแ:
echo 8 > /sys/block/sda/queue/nr_requests
COMMON
แแ แแแแแ แ แแแแแแแแ แแแ แแแแก แจแแกแฌแแ แแแ, แ แแแ แแฅแแแแ แแแแฅแแแ แแแฎแแแแ แ แแแแ แแ แแแ แแจแฃแแแกแแแ แ แแ แแแแแแแแแ แชแแขแ แแแขแ แจแแกแ แฃแแแแ แแแแ แแขแฃแ แแกแแแ
แแแขแ /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
แแแแแแ แแ แแแ แแแแขแ แ, แ แแแแแแช แขแแกแขแแ แแแฃแแ แแงแ QA-แกแแแแก 12.2.12 แแแ แกแแแแ, แแ แแ แกแแแแแก ceph แแแ แกแแ 12.2.2-แจแ, แแแแแแแแแ. osd_recovery_threads. แแแแขแแ, แแแแแแแ แแแแชแแแแ แแ แแแฃแฅแชแแแก แแแแแฎแแแแแก 12.2.12. แแ แแฅแขแแแแ แแฉแแแแ แแแแกแแแแแแแ 12.2.2 แแ 12.2.12 แแแ แกแแแแก แจแแ แแก แแ แ แแแแกแขแแ แจแ, แ แแช แกแแจแฃแแแแแแก แแซแแแแ แแแซแ แแแ แแแแแฎแแแแแแ.
แกแแขแแกแขแ แแแแกแขแแ แ
แแฃแแแแ แแแแ, แขแแกแขแแ แแแแกแแแแก แกแแญแแ แ แแงแ แแแแแ แแแ แกแแแก แแ แกแแแแแ, แ แแแแ แช แแ แซแแแแจแ, แแแแ แแ แแ แแ แแก, แ แแชแ แแแแกแขแแ แแแ แแแแแฌแงแ แแฃแจแแแแ, แกแแชแแแจแ แแฎแแแแ แแฎแแแ แแงแ แฎแแแแแกแแฌแแแแแ. แงแฃแ แแแแก แจแแแแแ, แ แแช แจแแแแซแแแแ แแแฎแแ แแชแแ แ แแแ แกแแแจแ, แแ แแ แแก แซแแแแแ แแแแ (1393 แฎแแแแแ แแแแคแแแฃแ แแชแแแก แฌแแแแแฆแแแแ 1436 แแฎแแ แแแ แกแแแจแ), แฉแแแ แแแแแแฌแงแแแขแแ แแแแแแฌแงแ แแฎแแแก แขแแกแขแแ แแแ (แแแแแช แแแแแฎแแแแ, แ แแขแแ แฌแแแแแแ แซแแแ แฃแกแแ แแแแแแแแแแ)
แแ แแแแแ แแ, แ แแช แฉแแแ แแชแแแแแแแแ แซแแแแ แแแ แกแแแก แฃแแแ แแแขแแแแแแก, แแ แแก แแแแแขแ ceph-แแแแแแแแแ แแแแแแแแ แแแแแแ แแ แแแแฃแแแแฃแ แ แแ แแแ แแแ (แแ แแแแแแ แแ แแแแแแจแ แแแแแ) แแงแ แแแ แแแแฃแแ แแแก แกแแแขแแฅแกแแ. แแฎแแแ แแแ แกแแ แกแแแแแแ แแแแกแฎแแแแแแฃแแ แแงแ, แแแแ แแ แแ แแแแฅแแแแ แแแแแ แแแแกแขแแ แแก แแฃแจแแแแแแ แแ แแก แแแ แฉแ แแแ แกแแแจแ 1.5.39
แแแแแแแแ ceph-disk แแ แซแแแแแ แแแแแแ แแแแแแก, แ แแ แแก แแแซแแแแแแฃแแแ แแ แแแแแแงแแแแ ceph-volume แแ แซแแแแแ, แซแแแ แคแแกแ, แฉแแแ แแแแแฌแงแแ OSD-แแแแก แจแแฅแแแ แแ แแ แซแแแแแแ, แแแซแแแแแแฃแแแแแ แแ แแแก แแแแแ แแแแก แแแ แแจแ.
แแแแแ แแงแ แแ แ SSD แแแกแแแก แกแแ แแแก แจแแฅแแแ, แ แแแแแแแแแช แแแแแแแแกแแแ OSD แแฃแ แแแแแแก, แ แแแแแแแช, แแแแแก แแฎแ แแ, แแแแแแแแแฃแแแ spindle SAS-แแแแ. แแ แแแแ แฉแแแ แจแแแแแซแแแ แแแแแชแแแ แแแแ แแแแแชแแแแแแก แแ แแแแแแแแแกแแแ, แแฃ แแฃแ แแแแแก แแแกแแ แแแแชแแแ.
แแแแแฌแงแแ แแแแกแขแแ แแก แจแแฅแแแ แแแแฃแแแแขแแชแแแก แแแฎแแแแแ
แแแขแ /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, แแงแ แจแแชแแแแ, แ แแแแกแแช แแชแแแแแแแ OSD-แแก แจแแฅแแแแก db-แแ แแ แแแ แแแฃแ แ แแแแแ -
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 แแ แแแแแฆแแ แจแแแแแแ แจแแชแแแแ (แ แแแแแแช, แกแฎแแแแ แจแแ แแก, แแ แแงแ แ แแแ แแแฃแชแแ แแแฃแแ แแ แซแแแแจแ)
bluestore แขแแแแก OSD-แแก แจแแฅแแแแกแแก WAL-แแก แแแแก แแแแแแแแแก แแแ แแจแ, แแแแ แแ 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-แกแแแแก แแ แแแฃแแแแแแ แแแก 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 แแแแแแแแ.
แแแแฃแจแแแ, แ แแ แกแแ แแแ แแแก แแฅแแ 20 แแแกแแ, แแแ แแแแ แแแ แแ แแ แขแแแแกแแ, แแแแ แ แแ แกแฎแแ.
แกแแฌแงแแกแ, แแแแฃแแแกแฎแแแแ, แแแ แแแ แแกแ แแแแแแงแฃแ แแแ:
ceph osd แฎแ
root@ceph01-q:~# ceph osd แฎแ
ID แแแแกแแก แฌแแแ แขแแแ แกแแฎแแแ STATUS REWEIGHT PRI-AFF
-1 14.54799 root แแแแฃแแแกแฎแแแแ
-3 9.09200 แแแกแแแแซแแแ 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 แแแแแ 1.00000 1.00000
5 HDD 0.27299 osd.5 แแแแแ 1.00000 1.00000
6 HDD 0.27299 osd.6 แแแแแ 1.00000 1.00000
7 HDD 0.27299 osd.7 แแแแแ 1.00000 1.00000
8 HDD 0.27299 osd.8 แแแแแ 1.00000 1.00000
9 HDD 0.27299 osd.9 แแแแแ 1.00000 1.00000
10 HDD 0.27299 osd.10 แแแแแ 1.00000 1.00000
11 HDD 0.27299 osd.11 แแแแแ 1.00000 1.00000
12 HDD 0.27299 osd.12 แแแแแ 1.00000 1.00000
13 HDD 0.27299 osd.13 แแแแแ 1.00000 1.00000
14 HDD 0.27299 osd.14 แแแแแ 1.00000 1.00000
15 HDD 0.27299 osd.15 แแแแแ 1.00000 1.00000
16 HDD 0.27299 osd.16 แแแแแ 1.00000 1.00000
17 HDD 0.27299 osd.17 แแแแแ 1.00000 1.00000
18 HDD 0.27299 osd.18 แแแแแ 1.00000 1.00000
19 HDD 0.27299 osd.19 แแแแแ 1.00000 1.00000
-5 5.45599 แแแกแแแแซแแแ 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 แแแแแ 1.00000 1.00000
25 HDD 0.27299 osd.25 แแแแแ 1.00000 1.00000
26 HDD 0.27299 osd.26 แแแแแ 1.00000 1.00000
27 HDD 0.27299 osd.27 แแแแแ 1.00000 1.00000
28 HDD 0.27299 osd.28 แแแแแ 1.00000 1.00000
29 HDD 0.27299 osd.29 แแแแแ 1.00000 1.00000
30 HDD 0.27299 osd.30 แแแแแ 1.00000 1.00000
31 HDD 0.27299 osd.31 แแแแแ 1.00000 1.00000
32 HDD 0.27299 osd.32 แแแแแ 1.00000 1.00000
33 HDD 0.27299 osd.33 แแแแแ 1.00000 1.00000
34 HDD 0.27299 osd.34 แแแแแ 1.00000 1.00000
35 HDD 0.27299 osd.35 แแแแแ 1.00000 1.00000
36 HDD 0.27299 osd.36 แแแแแ 1.00000 1.00000
37 HDD 0.27299 osd.37 แแแแแ 1.00000 1.00000
38 HDD 0.27299 osd.38 แแแแแ 1.00000 1.00000
39 HDD 0.27299 osd.39 แแแแแ 1.00000 1.00000
-7 6.08690 แแแกแแแแซแแแ 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 แแแแแ 1.00000 1.00000
45 HDD 0.27299 osd.45 แแแแแ 1.00000 1.00000
46 HDD 0.27299 osd.46 แแแแแ 1.00000 1.00000
47 HDD 0.27299 osd.47 แแแแแ 1.00000 1.00000
48 HDD 0.27299 osd.48 แแแแแ 1.00000 1.00000
49 HDD 0.27299 osd.49 แแแแแ 1.00000 1.00000
50 HDD 0.27299 osd.50 แแแแแ 1.00000 1.00000
51 HDD 0.27299 osd.51 แแแแแ 1.00000 1.00000
52 HDD 0.27299 osd.52 แแแแแ 1.00000 1.00000
53 HDD 0.27299 osd.53 แแแแแ 1.00000 1.00000
54 HDD 0.27299 osd.54 แแแแแ 1.00000 1.00000
55 HDD 0.27299 osd.55 แแแแแ 1.00000 1.00000
56 HDD 0.27299 osd.56 แแแแแ 1.00000 1.00000
57 HDD 0.27299 osd.57 แแแแแ 1.00000 1.00000
58 HDD 0.27299 osd.58 แแแแแ 1.00000 1.00000
59 HDD 0.89999 osd.59 แแแแแ 1.00000 1.00000
แแแแแ แจแแแฅแแแแ แฉแแแแ แกแแแฃแแแ แ แแแ แขแฃแแแฃแ แ แแแ แแแแ แแ แกแแ แแแ แแแ แแแแฅแฏแแแแ แแ แกแฎแแ แแแแแแแแ:
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
แแ แแแแแแแแ, แ แแแแแแแช แจแแแแฎแแแ แกแแแ แซแแแ แแแแกแขแแ แ, แ แแแแกแแช แชแแแแแแ แจแแฅแแแแ แแฎแแแ แฐแแกแขแ แแ แแแแแแขแแแแ แแแ แแ แกแแแฃแ แแแ แแแ - แแ แซแแแแแ ceph osd crush move ceph01-host root=rack01 แแแแงแแแ แแ แแแแแขแแ แแแแ แกแแแแแแแ แแแแฌแงแแก แแแชแแแ. แแ แซแแแแแแก แจแแฌแงแแแขแแ แแแ แขแแแ CTRL+C-แแ แแแแแ แฃแแ แแแแกแขแแ แ แชแแชแฎแแแแ แกแแแงแแ แแจแ.
แซแแแแแ แแฉแแแแ แแก แแ แแแแแแ:
แแแแแกแแแแแ แแฆแแแฉแแแ แแ แแจแแแแแก แแแแแงแ แ แแ แแฅแแแแ แแแแแแแแแแก แแแแฆแแแ แฌแแกแ 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 #ะทะฐะณััะถะฐะตะผ ะฒ ะบะปะฐััะตั
แแฎแขแฃแแแ: แแ แแแแ แแชแแแ แจแแแซแแแแ แแแแแแฌแแแแก แแแแแแแแแแก แฏแแฃแคแแก แฎแแแแฎแแแ แแแแแแกแ OSD-แแแก แจแแ แแก. แแแแ แแแแแแฌแแแ แแก แฉแแแแแแแก, แแแแ แแ แซแแแแแ แชแแขแ.
แแ แฃแชแแแฃแ แ แ แแ, แ แแช แฉแแแ แจแแแแฎแแแ แกแแขแแกแขแ แแแแกแขแแ แจแ, แแงแ แแก, แ แแ OSD แกแแ แแแ แแก แแแแแขแแแ แแแแก แจแแแแแ, แแแ แแแแแแฌแงแแแ, แ แแ แแกแแแ แแแแแแงแแแแแก แแฎแแ แกแแ แแแ แแแกแ แแ แแแ แแแแแ แแ แแแแ แฃแแแแแ root แแแแฃแแแกแฎแแแแแ.
แจแแแแแแ, แกแแแแแแ แกแฅแแแแก แแฌแงแแแแก แจแแแแแ, แ แแแแแจแแช แฉแแแ แจแแแฅแแแแแ แชแแแแ แคแแกแแ ssd แแแกแแแแแกแแแแก แแ แชแแแแ spindle แแแกแแแแแกแแแแก, แฉแแแ แงแแแแ OSD แแแแฆแแ แแแ แแแแแ แแ แฃแแ แแแแ แฌแแแจแแแแ แแแแฃแแแกแฎแแแแ แคแแกแแ. แแแแแขแแแ แแแแก แจแแแแแ, OSD-แ แแแแแก แแแแแแแ แแแ แฉแแแ แแแแฌแงแ.
แแแแแแแแแแแ แแแแฃแแแแขแแชแแแก แแแแฎแ แแแแก แจแแแแแ, แแฆแแแแแฉแแแแ แแแ แแแแขแ แ, แ แแแแแแช แแแกแฃแฎแแกแแแแแแแแ แแ แฅแชแแแแแ. แแแก แจแแกแแฎแแ แแแแ แ แแแฌแแแจแ
แ แแแแ แจแแแฅแแแแแ แกแฎแแแแแกแฎแแ แฏแแฃแคแ แแแกแแแก แขแแแแก แแแฎแแแแแ.
แแแกแแฌแงแแกแแกแแแแก, แฉแแแ แจแแแฅแแแแแ แแ แ แคแแกแแ - ssd-แกแแแแก แแ hdd-แกแแแแก
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
แแ แแแแแแฌแแแ แแแกแแแแ แแแแ แขแแแแแแก แแแฎแแแแแ แกแฎแแแแแกแฎแแ แกแแ แแแ แแแแ
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 แแแ แจแ แฃแขแแแก แจแแ แแก แแแกแแแแแก แแแคแแแขแแแก แจแแแแแ, แฉแแแ แแแแขแแแแ root-default แชแแ แแแแ, แแกแ แ แแ แฉแแแ แจแแแแแซแแแ แแแกแ แฌแแจแแ.
root-ceph01-q:~#ceph osd crush remove default
แจแแแแแแ, แฉแแแ แฃแแแ แจแแแฅแแแแ แแแแแฌแแแแแแก แฌแแกแแแ, แ แแแแแแกแแช แแแแแแแแจแแ แแแ แจแแฅแแแแ แแฃแแแแก - แฌแแกแแแจแ แฉแแแ แแฆแแแแจแแแแ, แแฃ แ แแแแ แคแแกแแแแก แจแแฃแซแแแ แแแแงแแแแก แฉแแแแ แแฃแแแก แแแแแชแแแแแ แแ แ แแแแแแแก แฃแแแแแแฃแ แแแแก แแแแ - แแแแแแแแแ, แ แแแแแแ แฃแแแ แแงแแก แกแฎแแแแแกแฎแแ แกแแ แแแ แแ, แแ แกแฎแแแแแกแฎแแ แแแ แแแแจแ (แจแแแแซแแแแ แกแฎแแแแแกแฎแแ แคแแกแแแแจแแช แแ, แแฃ แแกแแแ แแแแแฌแแแแแ แแแแฅแแก)
แขแแแแก แแ แฉแแแแแแ, แฃแแฏแแแแกแแ แฌแแแแแแฎแแ แแแแฃแแแแขแแชแแ:
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
แแแ แแแ, แฉแแแ แแฅแแแแ แแฃแแแแก, แ แแแแแแจแแช แแแแแแ แแแแแแแแจแ แฉแแแแ แแแ แขแฃแแแแแแชแแแก แแแกแแแก แกแฃแ แแแแแแก แจแแแแฎแแ - 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 แขแ-แก แแ แแฅแแก 10 PG - แแแจแแ แแแแแแแแกแแแ. แแ แแแแแแฃแ แ แแฅแแแแ แขแแ แแแแแขแแแแ แแแฃแ แแก (แแ) แกแ แแแ - แฅแแแจแ แแชแแ แ แแแแแก แฅแแแจแแก แแแ แชแแแแแแ แแแแกแฎแแ แแแแ แแแแจแ แฃแคแ แ แแแแแแแ แแ แแแแแแ แแ).
แแแแ แแ แฃแแแ แแแแฎแกแแแแแก, แ แแ แ แแช แฃแคแ แ แแแขแแ PG-แแแแก แ แแแแแแแแ, แแแ แแแขแ แ แแกแฃแ แกแ แแฎแแ แฏแแแ แแแแ แแแแแแ แแแแแก แแแแแกแแแแแแแแ - แแแฎแกแแแ แแแแก แแ CPU-แแก แแแแแงแแแแแ แแฌแงแแแ.
แฃแฎแแจแ แแแแแแ แจแแแซแแแแ
แแแกแแแแแแก แกแแ:
แฌแงแแ แ: www.habr.com