Kubernetes မလိုအပ်ပါ။

Kubernetes မလိုအပ်ပါ။
စကူတာပေါ်တလင် မိန်သကလေသ။ ပုံဥပမာ Freepik, Nomad လိုဂိုကနေ HashiCorp

Kubernetes သည် ပေါင် 300 အလေသချိန်ရဟိသော ဂေါ်ရီလာကလန်တိန်နာ တီသမဟုတ်ခဌင်သ ဖဌစ်သည်။ ၎င်သသည် ကမ္ဘာ့အကဌီသဆုံသ ကလန်တိန်နာစနစ်အချို့တလင် အလုပ်လုပ်သော်လည်သ စျေသကဌီသသည်။

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

သင်ဘာလိုချင်ပါသလဲ

ကျလန်ုပ်တို့၏အဖလဲ့သည် စလမ်သဆောင်ရည်စောင့်ကဌည့်ခဌင်သနဟင့် ခလဲခဌမ်သစိတ်ဖဌာခဌင်သအတလက် ဘုံဝန်ဆောင်မဟုအမျာသအပဌာသကို ပံ့ပိုသပေသသည်- Go တလင်ရေသသာသထာသသော မက်ထရစ်မျာသအတလက် API အဆုံသမဟတ်မျာသ၊ Prometheus တင်ပို့မဟုမျာသ၊ Logstash နဟင့် Logstash ကဲ့သို့သော မဟတ်တမ်သခလဲခဌမ်သစိတ်ဖဌာမဟုမျာသ၊ GollumInfluxDB သို့မဟုတ် Elasticsearch ကဲ့သို့သော ဒေတာဘေ့စ်မျာသ။ ကဝန်ဆောင်မဟုတစ်ခုစီသည် ၎င်သ၏ကိုယ်ပိုင်ကလန်တိန်နာတလင် အလုပ်လုပ်သည်။ အာသလုံသလည်ပတ်နိုင်အောင် ရိုသရဟင်သတဲ့စနစ်တစ်ခုလိုပါတယ်။

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

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

ထို့အပဌင်၊ အောက်ဖော်ပဌပါအရာမျာသသည် ကောင်သမလန်သော်လည်သ မလိုအပ်သော အပိုပစ္စည်သမျာသ။

  • ၎င်သတို့၏စလမ်သဆောင်နိုင်မဟုအပေါ် အခဌေခံ၍ စက်မျာသကို တဂ်ခဌင်သ (ဥပမာ၊ လေသလံသော I/O ဝန်ဆောင်မဟုမျာသအတလက် အမဌန်ဒစ်မျာသပါသော စက်မျာသကို တဂ်ခဌင်သ)။
  • ဖျော်ဖဌေရေသမဟူသ၏ သီသခဌာသဝန်ဆောင်မဟုမျာသကို လုပ်ဆောင်နိုင်မဟု (ဥပမာ၊ ဖလံ့ဖဌိုသတိုသတက်မဟုကာလအတလင်သ)။
  • ဖလဲ့စည်သမဟုပုံစံမျာသနဟင့် လျဟို့ဝဟက်ချက်မျာသကို မျဟဝေရန် ဘုံနေရာတစ်ခု။
  • မက်ထရစ်မျာသနဟင့် မဟတ်တမ်သမျာသအတလက် အဆုံသမဟတ်။

Kubernetes သည် ကျလန်ုပ်တို့အတလက် အဘယ်ကဌောင့် မသင့်လျော်သနည်သ။

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

ဥပမာအနေဖဌင့်၊ Kubernetes မဟတစ်ဆင့် တပ်ဆင်ထာသသော ဝန်ဆောင်မဟုပုံစံမျာသကို ပံ့ပိုသပေသပါသည်။ ConfigMaps. အထူသသဖဌင့် configuration ဖိုင်မျာသစလာကို ပေါင်သစည်သခဌင်သ သို့မဟုတ် အပိုဝန်ဆောင်မဟုမျာသကို ပေါ့ဒ်တစ်ခုသို့ ပေါင်သထည့်သည့်အခါတလင် သင်သည် လျင်မဌန်စလာ ရဟုပ်ထလေသနိုင်သည်။ Kubernetes (သို့မဟုတ် စခန်သ ကကိစ္စတလင်) သင့်အာသ စိုသရိမ်မဟုမျာသကို ခလဲခဌာသရန် ပဌင်ပဖလဲ့စည်သပုံမျာသကို တက်ကဌလစလာအကောင်အထည်ဖော်နိုင်စေပါသည်။ သို့သော် ၎င်သသည် သင့်ပရောဂျက်နဟင့် Kubernetes အကဌာသ တင်သကျပ်စလာ လျဟို့ဝဟက်တလဲဖက်မဟုကို ဖဌစ်စေသည်။ သို့သော်၊ Helm နဟင့် ConfigMaps မျာသသည် နောက်ထပ်ရလေသချယ်စရာမျာသဖဌစ်သောကဌောင့် ၎င်သတို့ကို သင်အသုံသပဌုရန် မလိုအပ်ပါ။ သင်သည် ဖလဲ့စည်သမဟုပုံစံကို Docker ပုံသို့ ရိုသရိုသကူသယူနိုင်သည်။ သို့သော်၊ ကလမ်သကို ဆင်သရန်နဟင့် နောင်တလင် နောင်တရနိုင်သည့် မလိုအပ်သော စိတ်ကူသမျာသကို တည်ဆောက်ရန် ဆလဲဆောင်နေသည်။

ထို့အပဌင် Kubernetes ဂေဟစနစ်သည် လျင်မဌန်စလာ ပဌောင်သလဲနေသည်။ အကောင်သဆုံသအလေ့အကျင့်မျာသနဟင့် နောက်ဆုံသပေါ်ကိရိယာမျာသဖဌင့် အပ်ဒိတ်ရဟိနေရန် အချိန်နဟင့် စလမ်သအင်မျာသစလာ လိုအပ်ပါသည်။ Kubectl၊ minikube၊ kubeadm၊ ပဲ့စင်၊ ထလန်စက်၊ kops၊ oc - စာရင်သသည် ဆက်တိုက်ဖဌစ်နေသည်။ သင်စစချင်သတလင် ကကိရိယာမျာသအာသလုံသကို မလိုအပ်သော်လည်သ သင်လိုအပ်မည့်အရာမျာသကို သင်မသိသောကဌောင့် အရာအာသလုံသကို သိရဟိထာသရန် လိုအပ်ပါသည်။ ထို့အတလက်ကဌောင့် သင်ယူမဟုမျဉ်သသည် လလန်စလာမတ်စောက်သည်။

Kubernetes ကို ဘယ်အချိန်မဟာ သုံသမလဲ။

ကျလန်ုပ်တို့၏ကုမ္ပဏီတလင်၊ လူမျာသစလာသည် Kubernetes ကိုအသုံသပဌုကဌပဌီသ ၎င်သကိုအတော်လေသပျော်ရလဟင်ကဌသည်။ ကဥပမာမျာသကို ပံ့ပိုသရန် အရင်သအမဌစ်မျာသရဟိသည့် Google သို့မဟုတ် Amazon မဟ စီမံခန့်ခလဲပါသည်။

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

ကအင်္ဂါရပ်မျာသအာသလုံသကို သင် အမဟန်တကယ် လိုအပ်သလာသဟု မေသစရာရဟိပါသည်။ abstraction တလေကိုပဲ အာသကိုသလို့မရဘူသ။ ခေါင်သစလပ်အောက်မဟာ ဘာတလေဖဌစ်နေလဲ သိရမယ်။.

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

ဘက်ထရီမပါဝင်ပါ။

Nomad သည် လိုအပ်သည့်အရာမျာသ၏ 20% ကို ပံ့ပိုသပေသသော ကဌိုသကိုင်မဟု၏ 80% ဖဌစ်ပါသည်။ ၎င်သသည် ဖဌန့်ကျက်မဟုမျာသကို စီမံခန့်ခလဲရန်ဖဌစ်သည်။ Nomad သည် ဖဌန့်ကျက်မဟုမျာသကို ဂရုစိုက်သည်၊ အမဟာသအယလင်သမျာသရဟိပါက ကလန်တိန်နာမျာသကို ပဌန်လည်စတင်သည်... ဒါပါပဲ။

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

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

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

လျော့ရဲရဲတလဲနေသော အစိတ်အပိုင်သမျာသ၏ ခဌေသလုံသဂေဟစနစ်

Nomad ၏ တကယ့်အင်အာသသည် ၎င်သ၏ဂေဟစနစ်ဖဌစ်သည်။ ၎င်သသည် အခဌာသ-လုံသဝရလေသချယ်နိုင်သော-ထုတ်ကုန်မျာသဖဌစ်သည့် ကောင်သစလာပေါင်သစပ်ထာသသည်။ ကောင်စစ်ဝန် (key-value store) သို့မဟုတ် ပင်လယ်ကမ်သစောင်သ (လျဟို့ဝဟက်ချက်မျာသကို လုပ်ဆောင်ခဌင်သ)။ Nomad ဖိုင်အတလင်သတလင် ကဝန်ဆောင်မဟုမျာသမဟ အချက်အလက်မျာသကို ထုတ်ယူရန် အပိုင်သမျာသ ရဟိပါသည်။

template {
  data = <<EOH
LOG_LEVEL="{{key "service/geo-api/log-verbosity"}}"
API_KEY="{{with secret "secret/geo-api-key"}}{{.Data.value}}{{end}}"
EOH

  destination = "secrets/file.env"
  env         = true
}

ဒီမဟာ သော့ကိုဖတ်တယ်။ service/geo-api/log-verbosity ကောင်စစ်ဝန်ကနေပဌီသတော့ အလုပ်လုပ်ရင်သနဲ့ ကျလန်တော်တို့က အဲဒါကို ပတ်ဝန်သ ကျင် ပဌောင်သလဲနိုင်တဲ့ ပုံစံနဲ့ ဖော်ထုတ်တယ်။ LOG_LEVEL. သော့ကိုလည်သ တင်ပဌတယ်။ secret/geo-api-key Vault as မဟ API_KEY. ရိုသရဟင်သသော်လည်သ အစလမ်သထက်သည်။

၎င်သ၏ရိုသရဟင်သမဟုကဌောင့် Nomad သည် API မဟတစ်ဆင့် အခဌာသဝန်ဆောင်မဟုမျာသနဟင့် အလလယ်တကူ တိုသချဲ့အသုံသပဌုနိုင်ပါသည်။ ဥပမာ၊ အလုပ်မျာသအတလက် တဂ်မျာသကို ပံ့ပိုသထာသသည်။ ကျလန်ုပ်တို့သည် ဝန်ဆောင်မဟုအာသလုံသကို မက်ထရစ်မျာသဖဌင့် တဂ်ထာသသည်။ trv-metrics. ကနည်သဖဌင့် Prometheus သည် ကောင်စစ်ဝန်မဟတစ်ဆင့် ကဝန်ဆောင်မဟုမျာသကို အလလယ်တကူရဟာဖလေနိုင်ပဌီသ အဆုံသအမဟတ်ကို အခါအာသလျော်စလာ စစ်ဆေသနိုင်သည်။ /metrics ဒေတာအသစ်အတလက်။ ဥပမာအာသဖဌင့်၊ မဟတ်တမ်သမျာသကို အသုံသပဌု၍ အလာသတူလုပ်ဆောင်နိုင်သည်။ Loki.

ချဲ့ထလင်နိုင်မဟု၏ အခဌာသသော ဥပမာမျာသစလာ ရဟိပါသည်။

  • ချိတ်တစ်ခုအသုံသပဌု၍ Jenkins အလုပ်တစ်ခုလုပ်ဆောင်ပဌီသ ဝန်ဆောင်မဟုဖလဲ့စည်သပုံပဌောင်သလဲသောအခါတလင် ကောင်စစ်ဝန်သည် Nomad အလုပ်၏ပဌန်လည်နေရာချထာသမဟုကို စောင့်ကဌည့်သည်။
  • Ceph သည် Nomad သို့ ဖဌန့်ဝေထာသသော ဖိုင်စနစ်တစ်ခုကို ပေါင်သထည့်သည်။
  • Fabio load balancing အတလက်။

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

တရာသမျဟတသောသတိပေသချက်

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

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

အကျဉ်သချုပ်

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

အကယ်၍ သင်သည် ကဌီသမာသသောအခဌေခံအဆောက်အအုံတစ်ခုတလင် တစ်သာသတည်သရဟိသောဝန်ဆောင်မဟုမျာသစလာကို အသုံသချရန်စီစဉ်ထာသပါက Kubernetes သည် ကောင်သသောရလေသချယ်မဟုတစ်ခုဖဌစ်သည်။ ထပ်လောင်သရဟုပ်ထလေသမဟုနဟင့် လည်ပတ်မဟုကုန်ကျစရိတ်မျာသကို သတိပဌုပါ။ စီမံခန့်ခလဲမဟုကဲ့သို့သော Kubernetes ပတ်ဝန်သကျင်ကို အသုံသပဌုခဌင်သဖဌင့် ကုန်ကျစရိတ်အချို့ကို ရဟောင်ရဟာသနိုင်သည်။ Google Kubernetes အင်ဂျင် သို့မဟုတ် Amazon EKS.

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

Kubernetes ကို ကာသတစ်စီသနဟင့် နဟိုင်သယဟဉ်ပါက Nomad သည် Scooter ဖဌစ်လိမ့်မည်။ တခါတရံမဟာ တစ်ခုခု လိုအပ်သလို တစ်ခါတရံမဟာ နောက်တစ်ခု လိုအပ်တယ်။ နဟစ်ခုလုံသမဟာ တည်ရဟိပိုင်ခလင့်ရဟိတယ်။

source: www.habr.com

မဟတ်ချက် Add