အခမဲ့ RAM မျာသစလာ၊ NVMe Intel P4500 နဟင့် အရာအာသလုံသသည် အလလန်နဟေသကလေသသည် - swap partition တစ်ခု၏ မအောင်မဌင်သော ထပ်တိုသမဟုဇာတ်လမ်သ

ကဆောင်သပါသတလင်၊ ကျလန်ုပ်၏ VPS cloud ရဟိဆာဗာမျာသထဲမဟတစ်ခုနဟင့် မကဌာသေသမီက ဖဌစ်ပလာသခဲ့သော အခဌေအနေတစ်ခုအကဌောင်သကို ကျလန်ုပ်ပဌောပါမည်။ ကျလန်ုပ်သည် Linux ဆာဗာမျာသကို ပဌင်ဆင်ခဌင်သနဟင့် ပဌဿနာဖဌေရဟင်သနေသည်မဟာ 15 နဟစ်ခန့်ရဟိပဌီဖဌစ်သော်လည်သ ကကိစ္စသည် ကျလန်ုပ်၏အလေ့အကျင့်နဟင့် လုံသဝကိုက်ညီမဟုမရဟိပါ - ကျလန်ုပ်သည် မဟာသယလင်သသောယူဆချက်မျာသစလာကို ပဌုလုပ်ခဲ့ပဌီသ ပဌဿနာ၏အကဌောင်သရင်သကို မဟန်ကန်စလာဆုံသဖဌတ်၍ ဖဌေရဟင်သနိုင်ခဌင်သမပဌုမီ အနည်သငယ်စိတ်ပျက်သလာသပါသည်။ .

နိဒါန်သ

ကျလန်ုပ်တို့သည် အောက်ပါဖလဲ့စည်သပုံစနစ်ဖဌင့် စံဆာဗာမျာသပေါ်တလင် တည်ဆောက်ထာသသည့် အလတ်စာသ cloud တစ်ခုကို လုပ်ဆောင်သည် - 32 cores၊ 256 GB RAM နဟင့် 4500TB PCI-E Intel P4 NVMe drive တစ်ခု။ VM instance type အဆင့်တလင် မဟန်ကန်သောကန့်သတ်ချက်ကို ပံ့ပိုသပေသခဌင်သဖဌင့် IO overhead နဟင့်ပတ်သက်ပဌီသ စိတ်ပူစရာမလိုတော့သောကဌောင့် ကဖလဲ့စည်သပုံကို အလလန်နဟစ်သက်ပါသည်။ NVMe Intel ကဌောင့်ပါ။ P4500 အထင်ကဌီသလောက်သော စလမ်သဆောင်ရည်ရဟိပဌီသ၊ ကျလန်ုပ်တို့သည် စက်မျာသအတလက် IOPS အပဌည့်အ၀ စီမံဆောင်ရလက်ပေသခဌင်သနဟင့် အရန်သိုလဟောင်မဟု နဟစ်ခုလုံသကို တစ်ပဌိုင်နက် IOWAIT သုညဖဌင့် အရန်ဆာဗာတစ်ခုသို့ ပံ့ပိုသပေသနိုင်ပါသည်။

ကျလန်ုပ်တို့သည် ပေါင်သစည်သထာသသော SDN နဟင့် အခဌာသသော ခေတ်ဆန်သော၊ ခေတ်ဆန်သော၊ လူငယ်အရာမျာသကို သိမ်သဆည်သရန် VM အတလဲမျာသကို သိမ်သဆည်သရန်အတလက် ခေတ်မီသော၊ ခေတ်မီသော၊ လူငယ်မျာသအသုံသမပဌုသော ယုံကဌည်သူဟောင်သမျာသထဲမဟ တစ်ညသဖဌစ်ပဌီသ၊ စနစ်ပိုမိုရိုသရဟင်သလေ၊ ပဌဿနာဖဌေရဟင်သရန် လလယ်ကူလေလေ "ပင်မဆရာကဌီသသလာသပဌီ။ တောင်တလေဆီကို။" ရလဒ်အနေဖဌင့်၊ ကျလန်ုပ်တို့သည် LVM2 ၏ထိပ်တလင်ဖဌန့်ကျက်ထာသသည့် XFS သို့မဟုတ် EXT4 တလင် VM အတလဲမျာသကို QCOW2 ဖော်မတ်ဖဌင့် သိမ်သဆည်သထာသသည်။

စုစည်သမဟုအတလက် ကျလန်ုပ်တို့အသုံသပဌုသည့် ထုတ်ကုန်ဖဌစ်သည့် Apache CloudStack မဟလည်သ QCOW2 ကို အသုံသပဌုခိုင်သပါသည်။

အရန်ကူသယူရန်၊ ကျလန်ုပ်တို့သည် LVM2 လျဟပ်တစ်ပဌက်ရိုက်ချက်အဖဌစ် အသံအတိုသအကျယ်ကို အပဌည့်အ၀ယူပါသည် (ဟုတ်ကဲ့၊ LVM2 လျဟပ်တစ်ပဌက်ရိုက်ချက်မျာသ နဟေသကလေသသည်ကို ကျလန်ုပ်တို့သိသည်၊ သို့သော် Intel P4500 သည် ကျလန်ုပ်တို့ကို ကနေရာတလင်လည်သ ကူညီပေသသည်)။ ကျလန်တော်တို lvmcreate -s .. အကူအညီနဟင့်အတူ dd အရန်မိတ္တူကို ZFS သိုလဟောင်မဟုရဟိသော အဝေသထိန်သဆာဗာသို့ ပေသပို့ပါသည်။ ကတလင် ကျလန်ုပ်တို့သည် အနည်သငယ်တိုသတက်နေသေသသည် - ပဌီသနောက် ZFS သည် အချက်အလက်မျာသကို ချုံ့ထာသသောပုံစံဖဌင့် သိမ်သဆည်သနိုင်ပဌီသ ၎င်သကို အသုံသပဌု၍ လျဟင်မဌန်စလာ ပဌန်လည်ရယူနိုင်သည်။ DD သို့မဟုတ် VM အတလဲမျာသကို အသုံသပဌု၍ တစ်ညသချင်သရယူပါ။ mount -o loop ....

သင်သည် LVM2 volume ၏ ပုံအပဌည့်အစုံကို မဖယ်ရဟာသနိုင်သော်လည်သ၊ ဖိုင်စနစ်တလင် ထည့်သလင်သပါ။ RO QCOW2 ရုပ်ပုံမျာသကို ၎င်သတို့ကိုယ်တိုင် ကူသယူပဌီသ၊ သို့သော်၊ XFS သည် ချက်ချင်သမဟုတ်သော်လည်သ မဟန်သလို့မရသောနည်သလမ်သဖဌင့် ကျလန်ုပ်တို့ရင်ဆိုင်ခဲ့ရသည်။ စနေ၊ ည သို့မဟုတ် အာသလပ်ရက်မျာသတလင် မည်သည့်အချိန်တလင် ဖဌစ်လာမည်ကို မရဟင်သလင်သသော အမဟာသမျာသကဌောင့် hypervisor မဟ ရုတ်တရက် "တုတ်" ကို လက်ခံကျင်သပသည့်အခါ ၎င်သကို ကျလန်ုပ်တို့ အမဟန်တကယ် မကဌိုက်ပါ။ ထို့ကဌောင့် XFS အတလက် ကျလန်ုပ်တို့သည် လျဟပ်တစ်ပဌက်ရိုက်ထည့်ခဌင်သကို မသုံသပါ။ RO volumes မျာသကို ထုတ်ယူရန်၊ ကျလန်ုပ်တို့သည် LVM2 volume တစ်ခုလုံသကို ရိုသရိုသကူသယူပါသည်။

အရန်ဆာဗာသို့ အရန်ကူသယူခဌင်သ၏အမဌန်နဟုန်သကို 600-800 MB/s ခန့်ရဟိသည့် အရန်ဆာဗာ၏စလမ်သဆောင်ရည်ဖဌင့် ကျလန်ုပ်တို့၏အခဌေအနေတလင် ဆုံသဖဌတ်သည်၊ နောက်ထပ်ကန့်သတ်ချက်တစ်ခုမဟာ အရန်ဆာဗာချိတ်ဆက်ထာသသည့် 10Gbit/s ချန်နယ်ဖဌစ်သည်။ အစုအဝေသသို့။

ကကိစ္စတလင်၊ hypervisor ဆာဗာ 8 ခု၏ အရန်မိတ္တူမျာသကို အရန်ဆာဗာတစ်ခုသို့ တစ်ပဌိုင်နက် အပ်လုဒ်လုပ်ထာသသည်။ ထို့ကဌောင့်၊ အရန်ဆာဗာ၏ဒစ်နဟင့် ကလန်ရက်ခလဲစနစ်မျာသသည် နဟေသကလေသခဌင်သကဌောင့် hypervisor hosts မျာသ၏ disk ခလဲစနစ်မျာသကို overload လုပ်ခဌင်သအာသ ခလင့်မပဌုပါ၊ အဘယ်ကဌောင့်ဆိုသော် hypervisor hosts သည် လလယ်ကူစလာလုပ်ဆောင်နိုင်သည့် 8 GB/sec ဟူ၍ မလုပ်ဆောင်နိုင်သောကဌောင့်၊ ဟင်သသီသဟင်သရလက်။

အထက်ဖော်ပဌပါ ကူသယူခဌင်သလုပ်ငန်သစဉ်သည် အသေသစိတ်အချက်အလက်မျာသအပါအဝင် နောက်ထပ်ဇာတ်လမ်သအတလက် အလလန်အရေသကဌီသသည် - မဌန်ဆန်သော Intel P4500 drive ကိုအသုံသပဌုကာ NFS ကိုအသုံသပဌု၍ ZFS ကိုအသုံသပဌုခဌင်သဖဌစ်နိုင်သည်။

အရန်ဇာတ်လမ်သ

hypervisor node တစ်ခုစီတလင် ကျလန်ုပ်တို့တလင် 8 GB အရလယ်အစာသရဟိသော SWAP partition ငယ်တစ်ခုရဟိပဌီသ၊ hypervisor node ကို ကိုယ်တိုင်အသုံသပဌု၍ "ထုတ်" DD ရည်ညလဟန်သပုံမဟ ဆာဗာမျာသရဟိ စနစ်အသံအတိုသအကျယ်အတလက်၊ ကျလန်ုပ်တို့သည် LSI သို့မဟုတ် HP ဟာ့ဒ်ဝဲထိန်သချုပ်သူတလင် 2xSATA SSD RAID1 သို့မဟုတ် 2xSAS HDD RAID1 ကို အသုံသပဌုပါသည်။ ယေဘုယျအာသဖဌင့်၊ ကျလန်ုပ်တို့သည် SWAP မဟလလဲ၍ ကျလန်ုပ်တို့၏စနစ်အသံအတိုသအကျယ်ကို "ဖတ်ရန်သာ" မုဒ်တလင် လုပ်ဆောင်နေသောကဌောင့် ကျလန်ုပ်တို့သည် အတလင်သ၌ရဟိသောအရာအာသလုံသကို ဂရုမစိုက်ပါ။ ကျလန်ုပ်တို့တလင် ဆာဗာတလင် RAM မျာသစလာရဟိပဌီသ ၎င်သသည် 30-40% အခမဲ့ဖဌစ်သောကဌောင့်၊ ကျလန်ုပ်တို့သည် SWAP အကဌောင်သ မစဉ်သစာသပါ။

Backup လုပ်ငန်သစဉ်. ကတာဝန်သည် ကကဲ့သို့ ဖဌစ်သည်-

#!/bin/bash

mkdir -p /mnt/backups/volumes

DIR=/mnt/images-snap
VOL=images/volume
DATE=$(date "+%d")
HOSTNAME=$(hostname)

lvcreate -s -n $VOL-snap -l100%FREE $VOL
ionice -c3 dd iflag=direct if=/dev/$VOL-snap bs=1M of=/mnt/backups/volumes/$HOSTNAME-$DATE.raw
lvremove -f $VOL-snap

အာရုံစိုက်ပါ ionice -c3တကယ်တော့၊ ကအရာသည် NVMe စက်မျာသအတလက် လုံသဝ အသုံသမဝင်ပါ၊ ၎င်သတို့အတလက် IO အချိန်ဇယာသကို အောက်ပါအတိုင်သ သတ်မဟတ်ထာသသောကဌောင့်၊

cat /sys/block/nvme0n1/queue/scheduler
[none] 

သို့သော်၊ ကျလန်ုပ်တို့တလင် သမာသရိုသကျ SSD RAIDs မျာသပါရဟိသော အမလေအနဟစ် ဆုံမဟတ်မျာသစလာရဟိသည်၊ ၎င်သတို့အတလက် ၎င်သသည် သက်ဆိုင်သည်၊ ထို့ကဌောင့် ၎င်သတို့သည် ရလေ့လျာသနေပါသည်။ IS အတိုင်သ. ယေဘုယျအာသဖဌင့်၊ ကအရာသည် အချည်သနဟီသဖဌစ်ကဌောင်သ ရဟင်သပဌသည့် စိတ်ဝင်စာသစရာကောင်သသော ကုဒ်အပိုင်သတစ်ခုမျဟသာဖဌစ်သည်။ ionice ထိုသို့သောဖလဲ့စည်သမဟုတစ်ခုအတလက်။

အလံကို သတိထာသပါ။ iflag=direct အတလက် DD. စာဖတ်သည့်အခါ မလိုအပ်သော IO buffers မျာသကို အစာသထိုသခဌင်သမဟ ရဟောင်ရဟာသရန် ကဌာသခံကက်ရဟ်ကို ကျော်ဖဌတ်ကာ တိုက်ရိုက် IO ကို အသုံသပဌုပါသည်။ သို့သော်၊ oflag=direct ကျလန်ုပ်တို့ ၎င်သကိုအသုံသပဌုသည့်အခါ ZFS စလမ်သဆောင်ရည်ပဌဿနာမျာသ ကဌုံတလေ့ခဲ့ရသောကဌောင့် မဟုတ်ပါ။

ကျလန်ုပ်တို့သည် ကအစီအစဉ်ကို ပဌဿနာမရဟိဘဲ နဟစ်အတော်ကဌာအောင် အောင်မဌင်စလာ အသုံသပဌုနေပါသည်။

ပဌီသမဟ စတယ်။... ဆုံမဟတ်မျာသထဲမဟ တစ်ခုကို အရန်သိမ်သတော့မည် မဟုတ်ကဌောင်သ ကျလန်ုပ်တို့ တလေ့ရဟိခဲ့ပဌီသ၊ ယခင်တစ်ခုသည် အလလန်ကဌီသမာသသော IOWAIT 50% ဖဌင့် လုပ်ဆောင်နေပါသည်။ ကူသယူခဌင်သ မဖဌစ်ပေါ်ရခဌင်သကို နာသလည်ရန် ကဌိုသစာသသောအခါ၊ ကျလန်ုပ်တို့သည် အောက်ပါဖဌစ်စဉ်ကို ကဌုံတလေ့ခဲ့ရသည်-

Volume group "images" not found

ကျလန်ုပ်တို့သည် "Intel P4500 အတလက်အဆုံသသတ်ရောက်ပဌီ" ဟုစဥ်သစာသလာသော်လည်သ၊ drive ကိုအစာသထိုသရန်အတလက်ဆာဗာကိုမပိတ်မီ၊ အရန်ကူသယူရန် လိုအပ်နေသေသသည်။ ကျလန်ုပ်တို့သည် LVM2 အရန်သိမ်သဆည်သမဟုမဟ မက်တာဒေတာကို ပဌန်ယူခဌင်သဖဌင့် LVM2 ကို ပဌင်ဆင်ခဲ့သည်-

vgcfgrestore images

ကျလန်ုပ်တို့သည် အရန်ကူသယူထာသပဌီသ ကဆီဆေသပန်သချီကာသကို တလေ့လိုက်ရသည်-
အခမဲ့ RAM မျာသစလာ၊ NVMe Intel P4500 နဟင့် အရာအာသလုံသသည် အလလန်နဟေသကလေသသည် - swap partition တစ်ခု၏ မအောင်မဌင်သော ထပ်တိုသမဟုဇာတ်လမ်သ

တစ်ဖန် ကျလန်ုပ်တို့ အလလန်ဝမ်သနည်သခဲ့ရသည် - VPS မျာသအာသလုံသ ဒုက္ခရောက်မည်ဖဌစ်သောကဌောင့် ကျလန်ုပ်တို့လည်သ ကကဲ့သို့ မနေနိုင်သည်မဟာ ထင်ရဟာသပါသည်။ ဖဌစ်ပျက်ခဲ့တာကို ရဟင်သရဟင်သလင်သလင်သ မသိရသေသပါဘူသ။ iostat သနာသစရာ IOPS နဟင့် အမဌင့်ဆုံသ IOWAIT ကို ပဌသခဲ့သည်။ "NVMe ကို အစာသထိုသကဌရအောင်" မဟလလဲ၍ အခဌာသ အကဌံဥာဏ်မျာသ မရဟိသော်လည်သ အချိန်မီ ထိုသထလင်သသိမဌင်မဟုတစ်ခု ဖဌစ်ပေါ်ခဲ့သည်။

အခဌေအနေကို တစ်ဆင့်ပဌီသတစ်ဆင့် လေ့လာသုံသသပ်ခဌင်သ။

သမိုင်သမဂ္ဂဇင်သ. အစောပိုင်သရက်အနည်သငယ်က၊ ကဆာဗာတလင် 128 GB RAM ပါသော VPS ကဌီသကိုဖန်တီသရန်လိုအပ်သည်။ မမ်မိုရီအလုံအလောက်ရဟိပုံရသော်လည်သ ဘေသကင်သစေရန်အတလက်၊ swap partition အတလက် နောက်ထပ် 32 GB ကို ခလဲဝေပေသခဲ့ပါသည်။ VPS ကို ဖန်တီသပဌီသ ၎င်သ၏လုပ်ငန်သတာဝန်ကို အောင်မဌင်စလာ ပဌီသမဌောက်ခဲ့ပဌီသ အဖဌစ်အပျက်ကို မေ့သလာသသော်လည်သ SWAP အပိုင်သသည် ကျန်ရဟိနေခဲ့သည်။

ဖလဲ့စည်သမဟုအင်္ဂါရပ်မျာသ. cloud ဆာဗာမျာသအာသလုံသအတလက် ကန့်သတ်ချက် vm.swappiness ပုံသေသတ်မဟတ်ထာသသည်။ 60. SAS HDD RAID1 တလင် SWAP ကိုဖန်တီသခဲ့သည်။

ဘာတလေ ဖဌစ်ခဲ့သလဲ (အယ်ဒီတာမျာသ အဆိုအရ). အရန်သိမ်သသောအခါ DD NFS သို့မရေသမီ RAM buffers တလင်ထည့်ထာသသော write data အမျာသအပဌာသကိုထုတ်လုပ်ခဲ့သည်။ စနစ်အခဌေခံ၊ မူဝါဒဖဌင့် လမ်သညလဟန်သည်။ swappiness၊ နဟေသကလေသသော HDD RAID1 အသံအတိုသအကျယ်ပေါ်ရဟိ VPS မမ်မိုရီ၏ စာမျက်နဟာအမျာသအပဌာသကို swap ဧရိယာသို့ ရလဟေ့နေပါသည်။ ယင်သကဌောင့် IOWAIT သည် အလလန်ပဌင်သထန်စလာ ကဌီသထလာသလာခဲ့သော်လည်သ IO NVMe ကဌောင့်မဟုတ်ဘဲ IO HDD RAID1 ကဌောင့်ဖဌစ်သည်။

ပဌဿနာကို ဘယ်လိုဖဌေရဟင်သခဲ့လဲ။. 32GB လဲလဟယ်မဟုအပိုင်သကို ပိတ်ထာသသည်။ ၎င်သသည် 16 နာရီကဌာမဌင့်သည်၊ မည်သို့နဟင့် SWAP သည် ကမျဟနဟေသကလေသစလာ ပိတ်သလာသသည်ကို သင် သီသခဌာသဖတ်ရဟုနိုင်ပါသည်။ ဆက်တင်မျာသကို ပဌောင်သလဲထာသသည်။ swappiness နဟင့်ညီမျဟသောတန်ဖိုသတစ်ခုသို့ 5 တိမ်တိုက်တစ်ခုလုံသ။

ဒါက ဘယ်လိုမဟမဖဌစ်နိုင်တာလဲ။. ပထမညသစလာ၊ SWAP သည် SSD RAID သို့မဟုတ် NVMe စက်ပစ္စည်သတလင်ရဟိနေပါက၊ ဒုတိယအနေဖဌင့် NVMe စက်ပစ္စည်သမရဟိပါက၊ သို့သော်ထိုကဲ့သို့သောဒေတာပမာဏကိုထုတ်လုပ်ပေသမည်မဟုတ်သည့်နဟေသကလေသသောစက်ပစ္စည်သသည် - အံမခန်သဖဌစ်ပဌီသ NVMe သည် မဌန်ဆန်လလန်သသောကဌောင့် ပဌဿနာဖဌစ်လာသည်။

ထို့နောက်တလင်၊ အရာအာသလုံသသည် ယခင်အတိုင်သဖဌစ်သည် - IOWAIT သုညဖဌင့်စတင်ခဲ့သည်။

source: www.habr.com

မဟတ်ချက် Add