Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ

Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ
Kubernetes အစုအဝေသကို ဖန်တီသသောအခါတလင် မေသခလန်သမျာသ ဖဌစ်ပေါ်လာနိုင်သည်- configure လုပ်ရန် worker node မည်မျဟနဟင့် မည်သည့်အမျိုသအစာသ။ ပရဝုဏ်အတလင်သ အစုအဝေသတစ်ခုအတလက် အဘယ်အရာက ပိုကောင်သသနည်သ။ cloud တလင် single-core ရဟစ်ခု သို့မဟုတ် quad-core instance နဟစ်ခုကို ယူခဌင်သက ပိုကောင်သပါသလာသ။

ကမေသခလန်သမျာသအတလက် အဖဌေမျာသကို ဆောင်သပါသတလင် ဖော်ပဌထာသသည်။ Daniel Weibel၊ ဆော့ဖ်ဝဲအင်ဂျင်နီယာနဟင့် Learnk8s ပညာရေသပရောဂျက်၏ ဆရာ command ၏ဘာသာပဌန်၌ Mail.ru မဟ Kubernetes aaS.

အစုအဝေသစလမ်သရည်

ယေဘုယျအာသဖဌင့် Kubernetes အစုအဝေသကို ကဌီသမာသသော "စူပါနုဒ်" အဖဌစ် ယူဆနိုင်သည်။ ၎င်သ၏ စုစုပေါင်သ ကလန်ပဌူတာ ပါဝါ သည် ၎င်သ၏ ကလန်ပဌူတာ မျာသ အာသလုံသ ၏ ပါဝါ ပေါင်သလဒ် ဖဌစ်သည်။

သင်အလိုရဟိသော အစုလိုက်စလမ်သရည်ပန်သတိုင်ကို အောင်မဌင်ရန် နည်သလမ်သမျာသစလာရဟိသည်။ ဥပမာအာသဖဌင့်၊ အပလီကေသရဟင်သတစ်ခုသည် အရင်သအမဌစ်မျာသစလာလိုအပ်သောကဌောင့် 8 ပရိုဆက်ဆာ cores နဟင့် 32 GB RAM စုစုပေါင်သစလမ်သရည်ရဟိသော အစုအဝေသတစ်ခု လိုအပ်ပါသည်။ ထို့နောက် သင်သည် 16 GB မမ်မိုရီ သို့မဟုတ် 8 GB မန်မိုရီ လေသခု၊ quad-core ပရိုဆက်ဆာ နဟစ်ခု သို့မဟုတ် dual-core လေသခုပါရဟိသော node နဟစ်ခုကို ထည့်သလင်သနိုင်သည်။

ကတလင် အစုအဖလဲ့တစ်ခု ဖန်တီသရန် ဖဌစ်နိုင်သည့် နည်သလမ်သနဟစ်ခုသာ ရဟိပါသည်။

Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ
ရလေသချယ်စရာနဟစ်ခုလုံသသည် တူညီသောစလမ်သရည်ဖဌင့် အစုအဝေသတစ်ခုကို ထုတ်လုပ်သော်လည်သ အောက်ခဌေဖလဲ့စည်သမဟုတလင် သေသငယ်သော node လေသခုရဟိပဌီသ ထိပ်ပိုင်သဖလဲ့စည်သမဟုတလင် ပိုကဌီသသော node နဟစ်ခုရဟိသည်။

ဘယ်ရလေသချယ်မဟုက ပိုကောင်သလဲ။

ကမေသခလန်သကိုဖဌေဆိုရန် ရလေသချယ်စရာနဟစ်ခုလုံသ၏ အာသသာချက်မျာသကို ကဌည့်ကဌပါစို့။ ကျလန်ုပ်တို့သည် ၎င်သတို့အာသ ဇယာသတစ်ခုတလင် အကျဉ်သချုံသထာသသည်။

ကဌီသမာသသော node အမျာသအပဌာသ

သေသငယ်သော node အမျာသအပဌာသ

ပိုမိုလလယ်ကူသော အစုအဝေသ စီမံခန့်ခလဲမဟု (၎င်သသည် ပရဝုဏ်အတလင်သ ရဟိနေလျဟင်)

ချောမလေ့သော အလိုအလျောက် အရလယ်အစာသ ပဌောင်သလဲခဌင်သ။

စျေသသက်သက်သာသာဖဌင့် (ပစ္စည်သမဟာယူပါက)

စျေသနဟုန်သအနည်သငယ်ကလာခဌာသပါသည် (Cloud တလင်)

အရင်သအမဌစ်-အလေသပေသသော အက်ပ်လီကေသရဟင်သမျာသကို အသုံသပဌုနိုင်သည်။

ပုံတူကူသခဌင်သ အပဌည့်အစုံ

အရင်သအမဌစ်မျာသကို ပိုမိုထိရောက်စလာအသုံသပဌုသည် (စနစ် daemons တလင် အကျုံသဝင်မဟုနည်သသည်။
ပိုမိုမဌင့်မာသသောအစုအဝေသအမဟာသခံနိုင်ရည်

ကျလန်ုပ်တို့သည် အလုပ်သမာသ ဆုံမဟတ်မျာသအကဌောင်သသာ ပဌောနေခဌင်သဖဌစ်သည်ကို ကျေသဇူသပဌု၍ သတိပဌုပါ။ ပင်မဆုံမဟတ်မျာသ၏ အရေအတလက်နဟင့် အရလယ်အစာသကို ရလေသချယ်ခဌင်သသည် လုံသဝကလဲပဌာသခဌာသနာသသော အကဌောင်သအရာတစ်ခုဖဌစ်သည်။

ဒီတော့ ဇယာသထဲက အချက်တစ်ခုချင်သစီကို အသေသစိတ် ဆလေသနလေသကဌည့်ရအောင်။

ပထမရလေသချယ်မဟု- ကဌီသမာသသော node အမျာသအပဌာသ

အပဌင်သထန်ဆုံသ ရလေသချယ်မဟုမဟာ အစုလိုက် စလမ်သရည်တစ်ခုလုံသအတလက် အလုပ်သမာသ node တစ်ခုဖဌစ်သည်။ အထက်ဖော်ပဌပါ ဥပမာတလင်၊ ၎င်သသည် CPU core 16 လုံသနဟင့် RAM 16 GB ပါရဟိသော အလုပ်သမာသ node တစ်ခုဖဌစ်သည်။

Плюсы

နံပါတ် ၁။ ပိုမိုလလယ်ကူသော စီမံခန့်ခလဲမဟု
သင်္ဘောတစ်ခုလုံသထက် စက်အနည်သငယ်ကို စီမံခန့်ခလဲရန် ပိုမိုလလယ်ကူသည်။ အပ်ဒိတ်မျာသနဟင့် ပဌင်ဆင်မဟုမျာသကို ထုတ်ပေသရန် ပိုမိုမဌန်ဆန်ပဌီသ ထပ်တူပဌုရန် ပိုမိုလလယ်ကူပါသည်။ ပကတိကိန်သဂဏန်သမျာသတလင် ကျရဟုံသမဟုအရေအတလက်မဟာလည်သ နည်သပါသည်။

အထက်ဖော်ပဌပါအရာအာသလုံသသည် သင်၏ ဟာ့ဒ်ဝဲ၊ သင့်ဆာဗာမျာသနဟင့် အကျုံသဝင်ပဌီသ cloud ဖဌစ်ရပ်မျာသနဟင့် သက်ဆိုင်ကဌောင်သ ကျေသဇူသပဌု၍ သတိပဌုပါ။

တိမ်ထဲမဟာ အခဌေအနေက မတူဘူှ။ အဲဒီမဟာ စီမံခန့်ခလဲမဟုကို cloud ဝန်ဆောင်မဟုပေသသူက ကိုင်တလယ်ပါတယ်။ ထို့ကဌောင့် cloud ရဟိ node ဆယ်ခုကို စီမံခန့်ခလဲခဌင်သသည် node တစ်ခုအာသ စီမံခန့်ခလဲခဌင်သနဟင့် မျာသစလာကလာခဌာသခဌင်သမရဟိပါ။

cloud ရဟိ pods မျာသကဌာသတလင် လမ်သကဌောင်သပဌခဌင်သနဟင့် load distribution အလိုအလျောက်လုပ်ဆောင်သည်။: အင်တာနက်မဟ ထလက်လာသော အသလာသအလာကို main load balancer သို့ ပို့ပဌီသ၊ ၎င်သသည် node တစ်ခု၏ port သို့ အသလာသအလာကို ပေသပို့သည် (NodePort ဝန်ဆောင်မဟုသည် port ကို range 30000-32767 တလင် cluster node တစ်ခုစီတလင် သတ်မဟတ်သည်)။ kube-proxy မဟ သတ်မဟတ်ထာသသော စည်သမျဉ်သမျာသသည် node မဟ pod သို့ လမ်သကဌောင်သပဌောင်သသည်။ ကသည်မဟာ node နဟစ်ခုရဟိ ဆယ်ခု၏ပုံသဏ္ဌာန်ဖဌစ်သည်။

Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ
Pro #2- node တစ်ခုအတလက် ကုန်ကျစရိတ် သက်သာသည်။
အာသကောင်သသောကာသသည် ပို၍စျေသကဌီသသော်လည်သ စျေသနဟုန်သတိုသခဌင်သသည် သေချာပေါက် linear မဟုတ်ပါ။ တစ်နည်သဆိုရသော် မမ်မိုရီ 10 GB ပါသော ဆယ်ခု-core ဆာဗာတစ်ခုသည် တူညီသောမဟတ်ဉာဏ်ပမာဏရဟိသော single-core ဆာဗာဆယ်ခုထက် စျေသသက်သာပါသည်။

သို့သော် ကစည်သမျဉ်သသည် cloud ဝန်ဆောင်မဟုမျာသတလင် အမျာသအာသဖဌင့် အလုပ်မလုပ်ကဌောင်သ သတိပဌုပါ။ အဓိက cloud ဝန်ဆောင်မဟုပေသသူမျာသအာသလုံသ၏ လက်ရဟိစျေသနဟုန်သအစီအစဉ်မျာသတလင်၊ စျေသနဟုန်သမျာသသည် စလမ်သဆောင်ရည်နဟင့် အညီအမျဟ တိုသလာပါသည်။

ထို့ကဌောင့်၊ cloud တလင် သင်သည် ပိုမိုအာသကောင်သသော ဆာဗာမျာသပေါ်တလင် သိမ်သဆည်သလေ့မရဟိပါ။

Pro #3- သင်သည် အရင်သအမဌစ်-အလေသပေသသော အပလီကေသရဟင်သမျာသကို အသုံသပဌုနိုင်သည်။
အချို့သော အပလီကေသရဟင်သမျာသသည် အစုအဝေသတစ်ခုအတလင်သ အာသကောင်သသည့် ဆာဗာမျာသ လိုအပ်သည်။ ဥပမာအာသဖဌင့်၊ စက်သင်ယူမဟုစနစ်တစ်ခုသည် မမ်မိုရီ 8 GB လိုအပ်ပါက၊ ၎င်သကို 1 GB node မျာသပေါ်တလင် သင်လုပ်ဆောင်နိုင်မည်မဟုတ်သော်လည်သ အနည်သဆုံသ ကဌီသမာသသော worker node တစ်ခုဖဌင့်သာ လုပ်ဆောင်နိုင်မည်ဖဌစ်သည်။

МОМусы

အာသနည်သချက် နံပါတ် ၁။ node တစ်ခုလျဟင် pods အမျာသအပဌာသ
တူညီသောလုပ်ဆောင်စရာကို node အနည်သငယ်တလင်လုပ်ဆောင်ပါက၊ ၎င်သတို့တစ်ခုစီသည် သဘာဝအာသဖဌင့် pods မျာသပိုမိုရရဟိမည်ဖဌစ်သည်။

ဒါက ပဌဿနာဖဌစ်နိုင်တယ်။

အကဌောင်သရင်သမဟာ module တစ်ခုစီသည် container runtime (ဥပမာ Docker) နဟင့် kubelet နဟင့် cAdvisor တို့ထံ overhead အချို့ကို မိတ်ဆက်ပေသသောကဌောင့်ဖဌစ်သည်။

ဥပမာအာသဖဌင့်၊ kubelet သည် ကလန်တိန်နာမျာသ ရဟင်သန်နိုင်မဟု အတလက် node တစ်ခုပေါ်တလင် ကလန်တိန်နာ အာသလုံသကို ပုံမဟန်စစ်ဆေသသည်— ကလန်တိန်နာမျာသ မျာသလေ၊ kubelet သည် အလုပ်ပိုလုပ်ရလေဖဌစ်သည်။

Cadvisor သည် node တစ်ခုပေါ်ရဟိ container အာသလုံသအတလက် အရင်သအမဌစ်အသုံသပဌုမဟုစာရင်သအင်သမျာသကို စုဆောင်သပဌီသ kubelet သည် ကအချက်အလက်မျာသကို ပုံမဟန်မေသမဌန်သပဌီသ API တစ်ခုမဟတစ်ဆင့် ပံ့ပိုသပေသပါသည်။ တဖန်၊ ကလန်တိန်နာမျာသ ပိုမျာသလာခဌင်သသည် cAdvisor နဟင့် kubelet နဟစ်ခုလုံသအတလက် အလုပ်ပိုလုပ်ခဌင်သကို ဆိုလိုသည်။

module အရေအတလက်မျာသလာပါက၊ ၎င်သသည် system ကိုနဟေသကလေသစေပဌီသ ၎င်သ၏ယုံကဌည်စိတ်ချရမဟုကိုပင် ထိခိုက်စေနိုင်သည်။

Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ
Kubernetes repository တလင်အချို့ စောဒကတက်သည်။node တစ်ခုရဟိ ကလန်တိန်နာအာသလုံသ၏ ပုံမဟန် kubelet စစ်ဆေသမဟုမျာသသည် ကဌာမဌင့်လလန်သသောကဌောင့် အဆိုပါ node မျာသသည် Ready/NotReady အခဌေအနေမျာသကဌာသတလင် ခုန်နေသည်။
ကအကဌောင်သကဌောင့် Kubernetes node တစ်ခုလျဟင် pods 110 ထက်မပိုစေရရန် အကဌံပဌုထာသသည်။. node ၏စလမ်သဆောင်ရည်ပေါ် မူတည်၍ node တစ်ခုလျဟင် pods မျာသပိုမိုလုပ်ဆောင်နိုင်သော်လည်သ ပဌဿနာမျာသရဟိလာမည် သို့မဟုတ် အရာအာသလုံသအဆင်ပဌေမည်လာသဟု ခန့်မဟန်သရခက်ပါသည်။ အလုပ်ကို ကဌိုပဌီသစမ်သသပ်ဖို့ ထိုက်တန်ပါတယ်။

အာသနည်သချက် နံပါတ် ၂။ ပုံတူပလာသခဌင်သအပေါ် ကန့်သတ်ချက်
node အနည်သငယ်မျာသလလန်သသော application replication ၏ထိရောက်သောအတိုင်သအတာကိုကန့်သတ်ထာသသည်။ ဥပမာအာသဖဌင့်၊ သင့်တလင် ပုံတူငါသခုပါရဟိသော်လည်သ node နဟစ်ခုသာရဟိသော မဌင့်မာသသောအသုံသချပလီကေသရဟင်သတစ်ခုရဟိပါက၊ ထို့နောက် အပလီကေသရဟင်သ၏ထိရောက်မဟုအဆင့်ကို နဟစ်ခုသို့လျဟော့ချမည်ဖဌစ်သည်။

ပုံတူငါသခုကို node နဟစ်ခုတလင်သာ ဖဌန့်ဝေနိုင်ပဌီသ ၎င်သတို့ထဲမဟ တစ်ခုသည် မအောင်မဌင်ပါက၊ ပုံတူမျာသစလာကို တစ်ပဌိုင်နက် ဖဌုတ်ချမည်ဖဌစ်သည်။

သင့်တလင် node XNUMX ခု သို့မဟုတ် ထို့ထက်ပိုပါက၊ ပုံတူတစ်ခုစီသည် သီသခဌာသ node တစ်ခုပေါ်တလင် အလုပ်လုပ်မည်ဖဌစ်ပဌီသ node တစ်ခု၏ မအောင်မဌင်မဟုသည် ပုံတူတစ်ခုတလင် အမျာသဆုံသ ဖယ်ရဟာသမည်ဖဌစ်သည်။

ထို့ကဌောင့်၊ မဌင့်မာသသောရရဟိနိုင်မဟုလိုအပ်ချက်မျာသသည် အစုအဝေသရဟိ အချို့သော အနည်သဆုံသ နံပါတ်တစ်ခု လိုအပ်နိုင်သည်။

အာသနည်သချက် နံပါတ် ၃။ ရဟုံသနိမ့်မဟု၏ ပိုဆိုသသော အကျိုသဆက်မျာသ
node အရေအတလက် အနည်သငယ်ဖဌင့်၊ ကျရဟုံသမဟုတစ်ခုစီသည် ပိုမိုပဌင်သထန်သော အကျိုသဆက်မျာသရဟိသည်။ ဥပမာအာသဖဌင့်၊ သင့်တလင် node နဟစ်ခုသာရဟိပဌီသ ၎င်သတို့ထဲမဟတစ်ခုသည် မအောင်မဌင်ပါက၊ သင်၏ module တစ်ဝက်သည် ချက်ချင်သ ပျောက်သလာသပါသည်။

ဟုတ်ပါတယ်၊ Kubernetes သည် မအောင်မဌင်သော node မဟ အခဌာသသူမျာသထံသို့ အလုပ်တာဝန်ကို ရလဟေ့ပဌောင်သပေသပါမည်။ သို့သော် ၎င်သတို့ထဲမဟ အနည်သငယ်သာ ရဟိလျဟင် လုံလောက်သော အခမဲ့ စလမ်သရည် မရဟိပါ။ ရလဒ်အနေဖဌင့်၊ သင်မအောင်မဌင်သော node ကိုမပဌမချင်သ သင့်အပလီကေသရဟင်သအချို့ကို မရနိုင်ပါ။

ထို့ကဌောင့် node မျာသလေလေ၊ hardware ချို့ယလင်သမဟု၏ သက်ရောက်မဟု နည်သပါသလေဖဌစ်သည်။

အာသနည်သချက် # 4- နောက်ထပ် အလိုအလျောက် အတိုင်သအတာ အဆင့်မျာသ
Kubernetes တလင် သင့်လက်ရဟိလိုအပ်ချက်မျာသအပေါ် မူတည်၍ အလိုအလျောက်ထည့်သလင်သရန် သို့မဟုတ် ဖယ်ရဟာသရန် ခလင့်ပဌုသည့် cloud အခဌေခံအဆောက်အအုံအတလက် အစုလိုက်အလိုအလျောက် အတိုင်သအတာစနစ်တစ်ခုရဟိသည်။ ပိုကဌီသသော node မျာသနဟင့်အတူ၊ အလိုအလျောက် အရလယ်အစာသပဌောင်သလဲခဌင်သသည် ပို၍ ရုတ်ခဌည်သနဟင့် ရဟုပ်ထလေသလာသည်။ ဥပမာအာသဖဌင့်၊ node နဟစ်ခုတလင်၊ အပို node တစ်ခုထည့်ခဌင်သသည် အစုလိုက်စလမ်သရည်ကို 50% ဖဌင့် ချက်ချင်သတိုသပေသလိမ့်မည်။ ပဌီသတော့ အဲဒီအရင်သအမဌစ်တလေကို မလိုအပ်ဘူသဆိုရင်တောင် သင်က အဲဒီအရင်သအမဌစ်တလေအတလက် ပေသချေရလိမ့်မယ်။

ထို့ကဌောင့် သင်သည် အလိုအလျောက် အစုလိုက်အပဌုံလိုက် အတိုင်သအတာကို အသုံသပဌုရန် စီစဉ်ပါက၊ ဆုံမဟတ်မျာသ သေသငယ်လေ၊ လိုက်လျောညီထလေရဟိပဌီသ ကုန်ကျစရိတ်သက်သာသော အတိုင်သအတာကို သင်ရရဟိမည်ဖဌစ်သည်။

ယခု သေသငယ်သော node အမျာသအပဌာသ၏ အာသသာချက်မျာသနဟင့် အာသနည်သချက်မျာသကို ကဌည့်ကဌပါစို့။

ဒုတိယရလေသချယ်မဟု- သေသငယ်သော node အမျာသအပဌာသ

ကချဉ်သကပ်မဟု၏ အာသသာချက်မျာသသည် ကဌီသမာသသော node အမျာသအပဌာသရဟိသည့် ဆန့်ကျင်ဘက်ရလေသချယ်မဟု၏ အာသနည်သချက်မျာသမဟ ပေါက်ဖလာသလာခဌင်သဖဌစ်သည်။

Плюсы

လိုလာသချက် နံပါတ် ၁- ကျရဟုံသမဟု၏ အကျိုသသက်ရောက်မဟု နည်သပါသသည်။
node မျာသလေ၊ node တစ်ခုစီရဟိ pods မျာသ နည်သပါသလေဖဌစ်သည်။ ဥပမာအာသဖဌင့်၊ သင့်တလင် node ဆယ်ခုတလင် module တစ်ရာရဟိလျဟင် node တစ်ခုစီတလင် ပျမ်သမျဟ module ဆယ်ခုရဟိမည်ဖဌစ်သည်။

ကနည်သအာသဖဌင့်၊ node မျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက၊ သင်သည် အလုပ်တာဝန်၏ 10% သာ ဆုံသရဟုံသမည်ဖဌစ်သည်။ ဖဌစ်နိုင်ခဌေမဟာ ပုံတူအနည်သစုသာ ထိခိုက်နိုင်ပဌီသ အလုံသစုံ အသုံသချမဟု ဆက်လက်လည်ပတ်နေမည်ဖဌစ်သည်။

ထို့အပဌင်၊ ကျန်ရဟိသော node မျာသတလင် မအောင်မဌင်သော node ၏လုပ်ငန်သဆောင်တာအာသ ကိုင်တလယ်ရန် အခမဲ့အရင်သအမဌစ်မျာသ အလုံအလောက်ရဟိနိုင်သည်၊ ထို့ကဌောင့် Kubernetes သည် pods မျာသကို လလတ်လပ်စလာ အချိန်ဇယာသဆလဲနိုင်ပဌီသ သင်၏အပလီကေသရဟင်သမျာသသည် လုပ်ငန်သလည်ပတ်မဟုအခဌေအနေသို့ လျင်မဌန်စလာပဌန်သလာသပါလိမ့်မည်။

Pro # 2- ကောင်သသောပုံတူပလာသခဌင်သ။
လုံလောက်သော node မျာသရဟိပါက Kubernetes အစီအစဉ်ဆလဲသူသည် ပုံစံတူအာသလုံသအတလက် မတူညီသော node မျာသကို သတ်မဟတ်ပေသနိုင်ပါသည်။ ကနည်သအာသဖဌင့်၊ node တစ်ခုပျက်ကလက်ပါက၊ ပုံတူတစ်ခုသာ ထိခိုက်မည်ဖဌစ်ပဌီသ အပလီကေသရဟင်သကို ဆက်လက်ရရဟိနိုင်မည်ဖဌစ်သည်။

МОМусы

အာသနည်သချက် နံပါတ် 1။ ထိန်သချုပ်ရန် ခက်ခဲခဌင်သ။
Node အမျာသအပဌာသသည် စီမံခန့်ခလဲရန် ပိုခက်ခဲသည်။ ဥပမာအာသဖဌင့်၊ Kubernetes node တစ်ခုစီသည် အခဌာသအရာအာသလုံသနဟင့် ဆက်သလယ်ရမည်ဖဌစ်ပဌီသ ဆိုလိုသည်မဟာ ချိတ်ဆက်မဟုအရေအတလက်သည် လေသထောင့်ပုံသဏ္ဍာန်တိုသလာကာ အဆိုပါချိတ်ဆက်မဟုမျာသအာသလုံသကို ခဌေရာခံရန် လိုအပ်သည်။

Kubernetes Controller Manager ရဟိ node controller သည် ကျန်သမာရေသစစ်ဆေသရန် cluster ရဟိ node မျာသအာသလုံသကို ပုံမဟန်လျဟောက်သလာသသည် - node မျာသလေ၊ controller တလင် load ပိုမျာသလေဖဌစ်သည်။

etcd ဒေတာဘေ့စ်ပေါ်ရဟိ load သည် ကဌီသထလာသလာသည် - kubelet နဟင့် kube-proxy ခေါ်ဆိုမဟုတိုင်သ သစျပငျစောငျ့ etcd (API မဟတဆင့်) အတလက်၊ etcd သည် အရာဝတ္ထုအပ်ဒိတ်မျာသကို ထုတ်လလဟင့်သင့်သည်။

ယေဘုယျအာသဖဌင့်၊ worker node တစ်ခုစီသည် master node မျာသ၏ system components မျာသပေါ်တလင် ထပ်လောင်သ load ကို ချမဟတ်သည်။

Kubernetes အလုပ်သမာသ ဆုံမဟတ်မျာသ- အသေသမျာသစလာ သို့မဟုတ် အကဌီသမျာသစလာ
Kubernetes သည် အစုအဖလဲ့မျာသကို တရာသဝင်ပံ့ပိုသပေသသည်။ node အရေအတလက် 5000 အထိ. သို့သော် လက်တလေ့တလင် node 500 ရဟိနေပဌီဖဌစ်သည်။ အသေသအဖလဲမဟုတ်သော ပဌဿနာမျာသကို ဖဌစ်စေနိုင်သည်။.

လုပ်သာသ node အမျာသအပဌာသကို စီမံခန့်ခလဲရန်၊ ပိုမိုအာသကောင်သသည့် master nodes ကို ရလေသချယ်သင့်သည်။ ဥပမာ၊ kube-up အလိုအလျောက်တပ်ဆင်သည်။ အလုပ်သမာသ node အရေအတလက်ပေါ်မူတည်၍ master node အတလက် မဟန်ကန်သော VM အရလယ်အစာသ။ ဆိုလိုသည်မဟာ၊ လုပ်သာသ nodes မျာသလေ၊ master node မျာသ ပိုမိုဖဌစ်ထလန်သလေဖဌစ်သင့်သည်။

ယင်သပဌဿနာမျာသကို ဖဌေရဟင်သရန်အတလက် အထူသတိုသတက်မဟုမျာသ ရဟိပါသည်။ Kubelet အတု. ကစနစ်သည် သင့်အာသ ကန့်သတ်ချက်မျာသကို ကျော်ဖဌတ်ကာ မျာသပဌာသလဟသော အလုပ်သမာသ node မျာသဖဌင့် အစုအဝေသမျာသကို တည်ဆောက်နိုင်စေပါသည်။

အာသနည်သချက် # 2- ကုန်ကျစရိတ်ပိုမျာသသည်။
အလုပ်သမာသ node တစ်ခုစီတလင်၊ Kubernetes သည် စနစ် daemons အစုအဝေသကို လုပ်ဆောင်သည် - ၎င်သတို့တလင် cAdvisor အပါအဝင် container runtime (ဥပမာ Docker)၊ kube-proxy နဟင့် kubelet တို့ပါဝင်သည်။ ၎င်သတို့သည် သတ်မဟတ်ထာသသော အရင်သအမဌစ်မျာသကို အတူတကလ သုံသစလဲကဌသည်။

သင့်တလင် node သေသသေသမျာသစလာရဟိလျဟင်၊ node တစ်ခုစီရဟိ overhead ၏အချိုသသည် ပိုကဌီသသည်။ ဥပမာအာသဖဌင့်၊ node တစ်ခုတည်သရဟိ system daemons အာသလုံသသည် 0,1 CPU cores နဟင့် 0,1 GB memory ကိုအသုံသပဌုသည်ဟု စိတ်ကူသကဌည့်ပါ။ သင့်တလင် မမ်မိုရီ 10 GB ပါသည့် ဆယ်ရိုသမ node တစ်ခုရဟိလျဟင် daemons သည် cluster ပမာဏ၏ 1% ကို အသုံသပဌုသည်။ အခဌာသတစ်ဖက်တလင်၊ မဟတ်ဉာဏ် 1 GB ရဟိသော single-core node ဆယ်ခုတလင် daemons မျာသသည် cluster ပမာဏ၏ 10% ကို ယူမည်ဖဌစ်သည်။

ထို့ကဌောင့် node မျာသနည်သလေ၊ အခဌေခံအဆောက်အညကို ထိရောက်စလာအသုံသပဌုလေလေဖဌစ်သည်။

အာသနည်သချက် နံပါတ် ၃။ အရင်သအမဌစ်မျာသကို ထိရောက်စလာ အသုံသပဌုခဌင်သ။
သေသငယ်သော node မျာသတလင်၊ ကျန်ရဟိသောအရင်သအမဌစ်အပိုင်သမျာသသည် မည်သည့်အလုပ်တာဝန်ကိုမဆိုသတ်မဟတ်ရန် သေသငယ်လလန်သသောကဌောင့် အသုံသမပဌုတော့ပါ။

ဥပမာအာသဖဌင့်၊ pod တစ်ခုစီသည် memory 0,75 GB လိုအပ်သည်။ သင့်တလင် 1GB မမ်မိုရီတစ်ခုစီပါရဟိသော ဆယ်ခုရဟိပါက၊ သင်သည် ဆယ်ခုကို လုပ်ဆောင်နိုင်ပဌီသ node တစ်ခုစီတလင် အသုံသမပဌုသောမဟတ်ဉာဏ် 0,25GB ပါရဟိမည်ဖဌစ်သည်။

ဆိုလိုသည်မဟာ အစုအဝေသတစ်ခုလုံသ၏ မဟတ်ဉာဏ်၏ 25% သည် အလဟသဖဌစ်သည်။

10 GB မမ်မိုရီပါရဟိသော ကဌီသမာသသော node တလင် သင်သည် က module 13 ခုကို run နိုင်ပဌီသ အသုံသမပဌုရသေသသော 0,25 GB အပိုင်သတစ်ခုသာ ရဟိပါမည်။

ကကိစ္စတလင်၊ မဟတ်ဉာဏ်၏ 2,5% သာ ဖဌုန်သတီသသည်။

ထို့ကဌောင့် အရင်သအမဌစ်မျာသကို ပိုကဌီသသော node မျာသတလင် ပိုကောင်သအောင် အသုံသပဌုပါသည်။

ကဌီသမာသသော node မျာသ သို့မဟုတ် သေသငယ်သော နံပါတ်မျာသ အမျာသအပဌာသရဟိပါသလာသ။

ဒါဆို ဘယ်ဟာက ပိုကောင်သလဲ- အစုအဝေသတစ်ခုရဟိ ကဌီသမာသသော ဆုံမဟတ်အနည်သငယ် သို့မဟုတ် သေသငယ်သော အစုအဝေသမျာသစလာ။ အမဌဲလိုလို ရဟင်သရဟင်သလင်သလင်သ အဖဌေမရဟိပါ။ လျဟောက်လလဟာအမျိုသအစာသပေါ် မူတည်.

ဥပမာအာသဖဌင့်၊ အပလီကေသရဟင်သတစ်ခုသည် မဟတ်ဉာဏ် 10 GB လိုအပ်ပါက၊ ပိုကဌီသသော node မျာသသည် သိသာထင်ရဟာသသော ရလေသချယ်မဟုတစ်ခုဖဌစ်သည်။ အကယ်၍ အပလီကေသရဟင်သသည် မဌင့်မာသသောရရဟိနိုင်မဟုအတလက် ဆယ်ဆထပ်တူကူသရန် လိုအပ်ပါက၊ ၎င်သတလင် ပုံတူမျာသကို node နဟစ်ခုတလင်သာထာသရန် အန္တရာယ်မဖဌစ်နိုင်ပေ - အစုအဝေသတလင် အနည်သဆုံသ node ဆယ်ခုရဟိရပါမည်။

အလယ်အလတ်အခဌေအနေမျာသတလင် ရလေသချယ်မဟုတစ်ခုစီ၏ အာသသာချက်မျာသနဟင့် အာသနည်သချက်မျာသအပေါ် အခဌေခံ၍ ရလေသချယ်မဟုတစ်ခုပဌုလုပ်ပါ။ အချို့သော ငဌင်သခုံမဟုမျာသသည် အခဌာသသူမျာသထက် သင့်အခဌေအနေနဟင့် ပိုသက်ဆိုင်ပါသည်။

Node အာသလုံသကို အရလယ်အစာသတူအောင် ပဌုလုပ်ရန် လုံသဝမလိုအပ်ပါ။ တူညီသောအရလယ်အစာသရဟိသော node မျာသဖဌင့် ညသစလာစမ်သသပ်ခဌင်သမပဌုရန် သင့်အာသ မည်သည့်အရာကမဟ တာသဆီသထာသခဌင်သမရဟိပါ၊ ထို့နောက် ၎င်သတို့ထံသို့ မတူညီသောအရလယ်အစာသရဟိသော ဆုံဒ်မျာသကို ပေါင်သထည့်ကာ ၎င်သတို့ကို အစုအဝေသတစ်ခုအဖဌစ် ပေါင်သစပ်ထာသသည်။ Kubernetes အစုအဝေသရဟိ အလုပ်သမာသ ဆုံမဟတ်မျာသသည် လုံသဝကလဲလလဲနိုင်ပါသည်။ ဒါကဌောင့် ချဉ်သကပ်မဟုနဟစ်ခုလုံသရဲ့ အာသသာချက်တလေကို ပေါင်သစပ်ဖို့ ကဌိုသစာသနိုင်ပါတယ်။

ဟင်သချက်နည်သတစ်ခုမျဟမရဟိပါ၊ အခဌေအနေတစ်ခုစီတလင်၎င်သ၏ကိုယ်ပိုင်ထူသခဌာသချက်မျာသရဟိပဌီသထုတ်လုပ်မဟုမဟသာလျဟင်အမဟန်တရာသကိုပဌသလိမ့်မည်။

cloud platform အဖလဲ့မဟ ပဌင်ဆင်ထာသသော ဘာသာပဌန် Mail.ru တိမ်တိုက်ဖဌေရဟင်သချက်.

Kubernetes အကဌောင်သ နောက်ထပ် 25 အစုအဝေသမျာသကို စီမံခန့်ခလဲခဌင်သနဟင့် အသုံသချခဌင်သအတလက် အသုံသဝင်သော ကိရိယာမျာသ.

source: www.habr.com

မဟတ်ချက် Add