Google အရ ကလန်တိန်နာအသုံသပဌုခဌင်သအတလက် အကောင်သဆုံသအလေ့အကျင့် 7 ခု

မဟတ်ချက်။ ဘာသာပဌန်မူရင်သဆောင်သပါသကို ရေသသာသသူမဟာ Google Cloud Solutions Architect သာမိုချန်လီဖဌစ်သည်။ Google Cloud ဘလော့ဂ်အတလက် ကပို့စ်တလင်၊ သူသည် ၎င်သ၏ ကုမ္ပဏီ၏ ပိုမိုအသေသစိတ်သော လမ်သညလဟန်ချက် အကျဉ်သချုပ်ကို ပေသထာသသည်။Operating Containers အတလက် အကောင်သဆုံသ အလေ့အကျင့်မျာသ“ ၎င်သတလင် Google Kubernetes Engine နဟင့် အခဌာသအရာမျာသကို အသုံသပဌုသည့်အခဌေအနေတလင် လည်ပတ်ကလန်တိန်နာမျာသအတလက် အကောင်သဆုံသအလေ့အကျင့်မျာသကို Google မဟ ကျလမ်သကျင်ပညာရဟင်မျာသက စုဆောင်သထာသပါသည်- လုံခဌုံရေသမဟ စောင့်ကဌည့်စစ်ဆေသခဌင်သနဟင့် မဟတ်တမ်သသလင်သခဌင်သအထိ အကဌောင်သအရာမျာသစလာကို ထိတလေ့စေပါသည်။ ဒါဆို Google အရ အရေသကဌီသဆုံသ ကလန်တိန်နာ အလေ့အကျင့်တလေက ဘာတလေလဲ။

Google အရ ကလန်တိန်နာအသုံသပဌုခဌင်သအတလက် အကောင်သဆုံသအလေ့အကျင့် 7 ခု

Kubernetes အင်ဂျင် (Google Cloud ပေါ်တလင် ကလန်တိန်နာတင်ထာသသော အပလီကေသရဟင်သမျာသကို လုပ်ဆောင်ရန်အတလက် Kubernetes-based ဝန်ဆောင်မဟု - အနီသစပ်ဆုံသ ဘာသာပဌန်) အတိုင်သအတာတစ်ခုအထိ လိုအပ်သော workload ကို run ရန် အကောင်သဆုံသနည်သလမ်သမျာသထဲမဟ တစ်ခုဖဌစ်သည်။ Kubernetes ၎င်သတို့ကို သိမ်သဆည်သထာသမည်ဆိုပါက အပလီကေသရဟင်သအမျာသစု၏ ချောမလေ့စလာလုပ်ဆောင်မဟုကို သေချာစေသည်။ သို့သော် သင့်လျဟောက်လလဟာကို စီမံခန့်ခလဲရလလယ်ကူစေရန်နဟင့် Kubernetes ၏ အပဌည့်အဝအာသသာချက်ကို ရယူလိုပါက၊ အကောင်သဆုံသအလေ့အကျင့်မျာသကို လိုက်နာရန် လိုအပ်ပါသည်။ ၎င်သတို့သည် အပလီကေသရဟင်သ၏ လည်ပတ်ဆောင်ရလက်မဟုကို ရိုသရဟင်သစေမည်ဖဌစ်ပဌီသ ၎င်သ၏ စောင့်ကဌည့်စစ်ဆေသခဌင်သနဟင့် အမဟာသရဟာပဌင်ခဌင်သတို့ကို မဌဟင့်တင်ပေသမည်ဖဌစ်ပဌီသ လုံခဌုံရေသကိုလည်သ တိုသမဌဟင့်ပေသမည်ဖဌစ်သည်။

ကဆောင်သပါသတလင် Kubernetes တလင် ကလန်တိန်နာမျာသကို ထိရောက်စလာအသုံသပဌုနိုင်ရန် သင်သိထာသသင့်သည့်အရာမျာသစာရင်သကို ဖဌတ်သလာသပါမည်။ အသေသစိပ်လေ့လာလိုသူမျာသ ဖတ်ရဟုသင့်ပါသည်။ Operating Containers အတလက် အကောင်သဆုံသ အလေ့အကျင့်မျာသ, ငါတို့ကိုလည်သအာရုံစိုက် အစောပိုင်သပို့စ် ကလန်တိန်နာမျာသတပ်ဆင်ခဌင်သအကဌောင်သ။

1. မူရင်သကလန်တိန်နာ သစ်ခုတ်ခဌင်သ ယန္တရာသမျာသကို အသုံသပဌုပါ။

အပလီကေသရဟင်သသည် Kubernetes အစုအဝေသတလင် အလုပ်လုပ်နေပါက၊ မဟတ်တမ်သမျာသအတလက် မျာသစလာမလိုအပ်ပါ။ သင်အသုံသပဌုနေသော အစုအဝေသတလင် ဗဟိုချုပ်ကိုင်မဟုရဟိသော သစ်ခုတ်ခဌင်သစနစ်တစ်ခုကို တည်ဆောက်ထာသပဌီသဖဌစ်ဖလယ်ရဟိသည်။ Kubernetes အင်ဂျင်ကိုအသုံသပဌုသည့်ကိစ္စတလင်၊ ၎င်သမဟာ တာဝန်ရဟိသည်။ Stackdriver မဟတ်တမ်သရယူခဌင်သ။. (မဟတ်ချက်။ ဘာသာပဌန်: အကယ်၍ သင်သည် သင်၏ကိုယ်ပိုင် Kubernetes တပ်ဆင်မဟုကို အသုံသပဌုပါက၊ ကျလန်ုပ်တို့၏ Open Source ဖဌေရဟင်သချက်ကို အနီသကပ်ကဌည့်ရဟုရန် အကဌံပဌုလိုပါသည် - သစ်လုံသအိမ်.) သင့်ဘဝကို ရိုသရိုသရဟင်သရဟင်သထာသပဌီသ မူရင်သကလန်တိန်နာ သစ်ခုတ်သည့် ယန္တရာသမျာသကို အသုံသပဌုပါ။ stdout နဟင့် stderr သို့ မဟတ်တမ်သမျာသရေသပါ - ၎င်သတို့ကို အလိုအလျောက် လက်ခံရရဟိ၊ သိမ်သဆည်သပဌီသ အညလဟန်သပဌုပါမည်။

ဆန္ဒရဟိပါက မဟတ်တမ်သမျာသ ရေသသလင်သနိုင်သည်။ JSON ဖော်မတ်. ကနည်သလမ်သသည် ၎င်သတို့ထံ မက်တာဒေတာထည့်ရန် လလယ်ကူစေမည်ဖဌစ်သည်။ ၎င်သတို့နဟင့်အတူ၊ Stackdriver Logging သည် ကမက်တာဒေတာကို အသုံသပဌု၍ မဟတ်တမ်သမျာသမဟတစ်ဆင့် ရဟာဖလေနိုင်မည်ဖဌစ်သည်။

2. ကလန်တိန်နာမျာသသည် နိုင်ငံမဲ့နဟင့် မပဌောင်သလဲနိုင်သည်ကို သေချာပါစေ။

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

နိုင်ငံမဲ့ ကလန်တိန်နာအပဌင်ဘက်တလင် မည်သည့်ပဌည်နယ် (ဆက်လက်တည်ရဟိနေသောဒေတာ) ကိုမဆို သိမ်သဆည်သထာသကဌောင်သ ဆိုလိုသည်။ ၎င်သအတလက် လိုအပ်ချက်မျာသပေါ်မူတည်၍ မတူညီသော ပဌင်ပသိုလဟောင်မဟု အမျိုသအစာသမျာသကို အသုံသပဌုနိုင်ပါသည်။ Cloud သိုလဟောင်မဟု, persistent disk တလေ, Redis, Cloud SQL သို့မဟုတ် အခဌာသသော စီမံခန့်ခလဲထာသသော ဒေတာဘေ့စ်မျာသ။ (မဟတ်ချက်။ ဘာသာပဌန်: ကျလန်ုပ်တို့၏ဆောင်သပါသ "" တလင်ကအကဌောင်သပိုမိုဖတ်ရဟုပါ။Kubernetes အတလက် အော်ပရေတာမျာသ- နိုင်ငံပိုင်အပလီကေသရဟင်သမျာသကို မည်သို့လုပ်ဆောင်ရမည်နည်သ။"။)

မပဌောင်သလဲနိုင်သောအရာမျာသ ကလန်တိန်နာသည် ၎င်သ၏သက်တမ်သအတလင်သ ပဌုပဌင်မလမ်သမံမည်မဟုတ်ဟု ဆိုလိုသည်- အပ်ဒိတ်မျာသ၊ ဖာထေသမဟုမျာသ၊ ဖလဲ့စည်သမဟုပုံစံပဌောင်သလဲမဟုမျာသမရဟိပါ။ သင့်အပလီကေသရဟင်သကုဒ်ကို အပ်ဒိတ်လုပ်ရန် လိုအပ်ပါက သို့မဟုတ် patch တစ်ခုကို အသုံသပဌုပါက ပုံအသစ်တစ်ခု ဖန်တီသပဌီသ ၎င်သကို အသုံသပဌုပါ။ ကလန်တိန်နာဖလဲ့စည်သမဟုပုံစံ (နာသဆင်ခဌင်သဆိပ်ကမ်သ၊ ဖလင့်ချိန်ပတ်ဝန်သကျင်ရလေသချယ်စရာမျာသ စသည်ဖဌင့်) ကို ပဌင်ပသို့ရလဟေ့ရန် အကဌံပဌုထာသသည်။ လျဟို့ဝဟက်ချက်မျာသ О ConfigMaps. ကလန်တိန်နာပုံအသစ်ကို တည်ဆောက်စရာမလိုဘဲ ၎င်သတို့ကို အပ်ဒိတ်လုပ်နိုင်ပါသည်။ ရုပ်ပုံတပ်ဆင်မဟုဖဌင့် ပိုက်လိုင်သမျာသကို လလယ်ကူစလာ ဖန်တီသရန် သင်သည် အသုံသပဌုနိုင်သည်။ Cloud တည်ဆောက်မဟု. (မဟတ်ချက်။ ဘာသာပဌန်: ကရည်ရလယ်ချက်မျာသအတလက် ကျလန်ုပ်တို့သည် Open Source tool ကို အသုံသပဌုပါသည်။ dapp.)

Google အရ ကလန်တိန်နာအသုံသပဌုခဌင်သအတလက် အကောင်သဆုံသအလေ့အကျင့် 7 ခု
pods တလင်ထည့်သလင်သထာသသော ConfigMap ကို အသုံသပဌု၍ Kubernetes တလင် ဖဌန့်ကျက်ဖလဲ့စည်သမဟုပုံစံကို အပ်ဒိတ်လုပ်ခဌင်သ၏ ဥပမာ

3. အခလင့်ထူသခံကလန်တိန်နာမျာသကို ရဟောင်ကဌဉ်ပါ။

သင့်ဆာဗာမျာသပေါ်တလင် root အဖဌစ် applications မျာသမ run ပါဘူသ, ဟုတ်တယ်? အကယ်၍ တိုက်ခိုက်သူသည် အပလီကေသရဟင်သထဲသို့ ဝင်ပါက၊ သူသည် root access ရရဟိမည်ဖဌစ်သည်။ တူညီသောထည့်သလင်သစဉ်သစာသချက်မျာသသည် အခလင့်ထူသခံကလန်တိန်နာမျာသကိုမလည်ပတ်ခဌင်သနဟင့်သက်ဆိုင်ပါသည်။ လက်ခံသူရဟိ ဆက်တင်မျာသကို ပဌောင်သလဲရန် လိုအပ်ပါက၊ သင်သည် ကလန်တိန်နာကို သီသခဌာသပေသနိုင်ပါသည်။ စလမ်သရည် option ကို အသုံသပဌု securityContext Kubernetes တလင် လိုအပ်ရင်ပဌောင်သပါ။ sysctlsKubernetes ရဟိသည်။ သီသခဌာသ abstract ဒီအတလက်။ ယေဘုယျအာသဖဌင့် အကောင်သဆုံသဖဌစ်အောင် ကဌိုသစာသပါ။ အစ- အလာသတူ အခလင့်ထူသခံ လုပ်ငန်သမျာသကို လုပ်ဆောင်ရန် ဘေသတလဲကလန်တိန်နာမျာသ။ ၎င်သတို့သည် အတလင်သပိုင်သ သို့မဟုတ် ပဌင်ပအသလာသအလာမျာသကို ဝင်ရောက်ကဌည့်ရဟုရန် မလိုအပ်ပါ။

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

4. root အဖဌစ်လည်ပတ်ခဌင်သကိုရဟောင်ကဌဉ်ပါ။

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

ဒါကို ရဟောင်ရဟာသဖို့ အကောင်သဆုံသနည်သလမ်သကတော့ ပထမနေရာမဟာ root အနေနဲ့ ဘာကိုမဟ မလည်ပတ်ဖို့ပါပဲ။ ဒီလိုလုပ်ဖို့၊ ညလဟန်ကဌာသချက်ကိုသုံသနိုင်တယ်။ USER в Dockerfile သို့မဟုတ် runAsUser Kubernetes တလင် အစုအဝေသ စီမံခန့်ခလဲသူသည် အသုံသပဌု၍ ပဌဋ္ဌာန်သထာသသော အပဌုအမူကိုလည်သ စီစဉ်သတ်မဟတ်နိုင်သည်။ Pod လုံခဌုံရေသမူဝါဒ.

5. အပလီကေသရဟင်သကို စောင့်ကဌည့်ရန် လလယ်ကူစေသည်။

မဟတ်တမ်သရေသခဌင်သကဲ့သို့ပင်၊ စောင့်ကဌည့်ခဌင်သသည် အပလီကေသရဟင်သစီမံခန့်ခလဲမဟု၏ အရေသပါသောအစိတ်အပိုင်သတစ်ခုဖဌစ်သည်။ Kubernetes အသိုင်သအဝိုင်သတလင် ရေပန်သစာသသော စောင့်ကဌည့်ဖဌေရဟင်သချက်တစ်ခုဖဌစ်သည်။ Prometheus - စောင့်ကဌည့်စစ်ဆေသရန် လိုအပ်သော pods နဟင့် ဝန်ဆောင်မဟုမျာသကို အလိုအလျောက် သိရဟိနိုင်သော စနစ်။ (မဟတ်ချက်။ ဘာသာပဌန်: ငါတို့ကိုလည်သကဌည့်ပါ။ အသေသစိတ်အစီရင်ခံစာ Prometheus နဟင့် Kubernetes ကို အသုံသပဌု၍ စောင့်ကဌည့်ခဌင်သ ခေါင်သစဉ်နဟင့် ပတ်သက်.) Stackdriver Kubernetes အစုအဝေသမျာသကို စောင့်ကဌည့်နိုင်စလမ်သရဟိပဌီသ အပလီကေသရဟင်သစောင့်ကဌည့်ခဌင်သအတလက် ၎င်သ၏ကိုယ်ပိုင်ဗာသရဟင်သ Prometheus ပါဝင်သည်။

Google အရ ကလန်တိန်နာအသုံသပဌုခဌင်သအတလက် အကောင်သဆုံသအလေ့အကျင့် 7 ခု
Stackdriver ရဟိ Kubernetes ဒိုင်ခလက်

Prometheus သည် အပလီကေသရဟင်သမဟ မက်ထရစ်မျာသကို HTTP အဆုံသမဟတ်သို့ ပေသပို့ရန် မျဟော်လင့်သည်။ ဒီအတလက် ရနိုင်ပါတယ်။ Prometheus ဖောက်သည်စာကဌည့်တိုက်မျာသ. အလာသတူ ဖော်မတ်ကို အခဌာသကိရိယာမျာသကဲ့သို့ အသုံသပဌုသည်။ OpenCensus О Istio.

6. အက်ပ်၏ ကျန်သမာရေသ အခဌေအနေကို ရရဟိအောင် ပဌုလုပ်ပါ။

ထုတ်လုပ်မဟုတလင် အက်ပလီကေသရဟင်သစီမံခန့်ခလဲမဟုသည် ၎င်သ၏ပဌည်နယ်တစ်ခုလုံသအာသ စနစ်တစ်ခုလုံသသို့ ဆက်သလယ်ပဌောဆိုနိုင်မဟုမဟ အထောက်အကူဖဌစ်သည်။ အက်ပ်က လုပ်ဆောင်နေပါသလာသ။ အဆင်ပဌေလာသ အသလာသအလာလက်ခံရန် အဆင်သင့်ဖဌစ်ပဌီလာသ။ သူဘယ်လိုနေလဲ? ကပဌဿနာကိုဖဌေရဟင်သရန် အတလေ့ရအမျာသဆုံသနည်သလမ်သမဟာ ကျန်သမာရေသစစ်ဆေသမဟုမျာသ လုပ်ဆောင်ရန်ဖဌစ်သည်။ (ကျန်သမာရေသစစ်ဆေသမဟု). Kubernetes တလင် အမျိုသအစာသနဟစ်မျိုသရဟိသည်။ အသက်ရဟင်မဟုနဟင့် အဆင်သင့် စစ်ဆေသမဟု.

အသက်ဝင်ခဌင်သအတလက် (အသက်အန္တရာယ်စစ်ဆေသခဌင်သ) အပလီကေသရဟင်သတလင် ၎င်သသည် အလုပ်လုပ်နိုင်ပဌီသ ၎င်သ၏အခဌေခံမဟီခိုမဟုမျာသကို ကျေနပ်ပါက "200 OK" တုံ့ပဌန်မဟုကို ပဌန်ပေသသည့် HTTP အဆုံသမဟတ်တစ်ခု ရဟိရပါမည်။ အဆင်သင့်ဖဌစ်ဘို့ပါ။ (ဝန်ဆောင်မဟု အဆင်သင့် စစ်ဆေသခဌင်သ) အပလီကေသရဟင်သတလင် "200 OK" တုံ့ပဌန်မဟုကို ပဌန်ပေသသည့် HTTP အဆုံသမဟတ်ရဟိရမည်ဖဌစ်ပဌီသ အပလီကေသရဟင်သသည် ကျန်သမာသောအခဌေအနေတလင်ရဟိနေပါက၊ အစပဌုခဌင်သအဆင့်မျာသပဌီသမဌောက်ပဌီသ တရာသဝင်တောင်သဆိုမဟုတိုင်သသည် အမဟာသအယလင်သမရဟိပေ။ ကစစ်ဆေသမဟုမျာသအရ အပလီကေသရဟင်သသည် အဆင်သင့်ဖဌစ်ပါက Kubernetes သည် ကလန်တိန်နာသို့ အသလာသအလာကိုသာ လမ်သကဌောင်သပေသမည်ဖဌစ်သည်။ အသက်ရဟင်ခဌင်သ နဟင့် အဆင်သင့်အခဌေအနေမျာသကဌာသ ကလာခဌာသချက်မရဟိပါက အဆုံသမဟတ်နဟစ်ခုကို ပေါင်သစည်သနိုင်သည်။

Google မဟ Developer Advocate Sandeep Dinesh ၏ ဆက်စပ်ဆောင်သပါသတလင် ကအကဌောင်သပိုမိုဖတ်ရဟုနိုင်ပါသည်- “Kubernetes အကောင်သဆုံသအလေ့အကျင့်မျာသ- အဆင်သင့်နဟင့် အသက်ရဟင်မဟုဆိုင်ရာ စစ်ဆေသမဟုမျာသဖဌင့် ကျန်သမာရေသစစ်ဆေသမဟုမျာသကို စနစ်ထည့်သလင်သခဌင်သ။"။

7. သင့်ပုံဗာသရဟင်သကို ဂရုတစိုက်ရလေသချယ်ပါ။

အမျာသသူငဟာနဟင့်ပုဂ္ဂလိကပုံအမျာသစုသည် ဖော်ပဌထာသသည့်ပုံနဟင့်ဆင်တူသော တဂ်ခဌင်သစနစ်ကို အသုံသပဌုသည်။ ဆောက်လုပ်ရေသကလန်တိန်နာမျာသအတလက် အကောင်သဆုံသအလေ့အကျင့်မျာသ. ပုံမဟာဆိုရင်တော့ နီသစပ်တဲ့ စနစ်တစ်ခုကို သုံသပါတယ်။ semantic မူကလဲ၊ tagging ၏အသေသစိတ်အချက်အလက်မျာသကိုထည့်သလင်သစဉ်သစာသရန်လိုအပ်သည်။ ဥပမာ- tag latest ပုံတစ်ပုံမဟတစ်ပုံသို့ မကဌာခဏရလေ့လျာသနိုင်သည် - ကဌိုတင်မဟန်သဆနိုင်သော၊ ထပ်ခါတလဲလဲ တည်ဆောက်မဟုမျာသနဟင့် ထည့်သလင်သမဟုမျာသ လိုအပ်ပါက အာသကိုသမရနိုင်ပါ။

သင် tag ကိုသုံသနိုင်သည်။ X.Y.Z (၎င်သတို့သည် အမဌဲတမ်သနီသပါသ မပဌောင်သလဲပါ) သို့သော် ကကိစ္စတလင်၊ ပုံတလင် ဖာထေသမဟုမျာသနဟင့် အပ်ဒိတ်မျာသအာသလုံသကို ခဌေရာခံပါ။ သင်အသုံသပဌုနေသည့်ပုံတလင် tag ပါလျဟင် X.Yကသည်ရလဟေဆိုလိုမဟုအတလက်ကောင်သသောရလေသချယ်မဟုဖဌစ်သည်။ ၎င်သကိုရလေသချယ်ခဌင်သဖဌင့် သင်သည် ဖာထေသမဟုမျာသကို အလိုအလျောက်ရရဟိပဌီသ တစ်ချိန်တည်သတလင် အပလီကေသရဟင်သ၏တည်ငဌိမ်သောဗာသရဟင်သကို အာသကိုသပါ။

PS ဘာသာပဌန်မဟ

ကျလန်ုပ်တို့၏ဘလော့ဂ်တလင်လည်သဖတ်ပါ

source: www.habr.com

မဟတ်ချက် Add