Kubernetes ရဟိ pod ညသစာသပေသအရာမျာသသည် Grafana Labs တလင် အလုပ်မလုပ်သည့်နည်သ

မဟတ်ချက်။ ဘာသာပဌန်- Grafana ဖန်တီသသူမျာသ ထိန်သသိမ်သထာသသော cloud ဝန်ဆောင်မဟုတလင် လတ်တလော စက်ရပ်သလာသရသည့် အကဌောင်သရင်သမျာသနဟင့် ပတ်သက်၍ သင်၏အာရုံစိုက်မဟုဆိုင်ရာ နည်သပညာဆိုင်ရာ အသေသစိတ်အချက်အလက်မျာသကို ကျလန်ုပ်တို့ တင်ပဌပါသည်။ ကသည်မဟာ အခဌေခံအဆောက်အညမျာသ၏ အရည်အသလေသကို မဌဟင့်တင်ရန် ဒီဇိုင်သထုတ်ထာသသည့် အလလန်အသုံသဝင်ပုံရသော အင်္ဂါရပ်အသစ်တစ်ခုဖဌစ်သည်... ထုတ်လုပ်မဟု၏ လက်တလေ့ဖဌစ်ရပ်မျာသတလင် ၎င်သ၏အသုံသချပလီကေသရဟင်သ၏ မျာသပဌာသလဟသော ကလဲလလဲမဟုမျာသကို မပံ့ပိုသပါက အန္တရာယ်ဖဌစ်စေနိုင်သည်။ သင့်အမဟာသမျာသမဟသာမက သင်ခန်သစာယူနိုင်စေမည့် ကကဲ့သို့သောပစ္စည်သမျာသ ပေါ်လာသောအခါ အလလန်ကောင်သမလန်ပါသည်။ အသေသစိတ်အချက်အလက်မျာသမဟာ Grafana Labs မဟ ထုတ်ကုန်၏ဒုတိယဥက္ကဌထံမဟ ကစာသာသကို ဘာသာပဌန်ခဌင်သတလင်ဖဌစ်သည်။

Kubernetes ရဟိ pod ညသစာသပေသအရာမျာသသည် Grafana Labs တလင် အလုပ်မလုပ်သည့်နည်သ

သောကဌာနေ့၊ ဇူလိုင်လ 19 ရက်နေ့တလင်၊ Grafana Cloud ရဟိ Hosted Prometheus ဝန်ဆောင်မဟုသည် မိနစ် 30 ခန့် အလုပ်မလုပ်တော့ပါ။ ပဌတ်တောက်မဟုဒဏ်ကဌောင့် ဖောက်သည်မျာသအာသလုံသကို တောင်သပန်အပ်ပါသည်။ ကျလန်ုပ်တို့၏အလုပ်မဟာ သင်လိုအပ်သော စောင့်ကဌည့်ရေသကိရိယာမျာသကို ပံ့ပိုသပေသရန်ဖဌစ်ပဌီသ ၎င်သတို့ကို မရရဟိနိုင်ပါက သင့်ဘဝကို ပိုမိုခက်ခဲစေကဌောင်သ ကျလန်ုပ်တို့ နာသလည်ပါသည်။ ဒီအဖဌစ်အပျက်ကို ကျလန်တော်တို့ အရမ်သအလေသထာသပါတယ်။ ကမဟတ်စုတလင် ဖဌစ်ပျက်ခဲ့သည့်အရာ၊ ကျလန်ုပ်တို့ မည်သို့တုံ့ပဌန်ကဌောင်သနဟင့် ၎င်သသည် ထပ်မံမဖဌစ်ပလာသစေရန် သေချာစေရန် လုပ်ဆောင်နေပုံကို ရဟင်သပဌထာသသည်။

စောပိုငျသကာလ

Grafana Cloud Hosted Prometheus ဝန်ဆောင်မဟုအပေါ်အခဌေခံသည်။ cortex — အလျာသလိုက် အတိုင်သအတာ၊ အလလန်ရရဟိနိုင်သော၊ အိမ်ငဟာသ Prometheus ဝန်ဆောင်မဟုကို ဖန်တီသရန် CNCF ပရောဂျက်။ Cortex ဗိသုကာတလင် တစ်ညသချင်သစီ microservices အစုအဝေသတစ်ခုစီပါ၀င်ပဌီသ တစ်ခုချင်သစီသည် ၎င်သ၏ကိုယ်ပိုင်လုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည်- ပုံတူကူသချခဌင်သ၊ သိုလဟောင်မဟု၊ စုံစမ်သမေသမဌန်သမဟုမျာသ စသည်ဖဌင့် လုပ်ဆောင်သည်။ Cortex သည် တက်ကဌလသော ဖလံ့ဖဌိုသတိုသတက်မဟုအောက်တလင်ရဟိပဌီသ အင်္ဂါရပ်အသစ်မျာသနဟင့် စလမ်သဆောင်ရည်ကို မဌဟင့်တင်နေပါသည်။ သုံသစလဲသူမျာသသည် ကအင်္ဂါရပ်မျာသကို အခလင့်ကောင်သယူနိုင်စေရန်အတလက် Cortex အသစ်မျာသကို အစုအဝေသမျာသသို့ ပုံမဟန်ဖဌန့်ကျက်ထာသပါသည် - ကံကောင်သစလာဖဌင့်၊ Cortex ကို အချိန်မဆလဲဘဲ အပ်ဒိတ်လုပ်နိုင်ပါသည်။

ချောမလေ့မဟုမရဟိသောအပ်ဒိတ်မျာသအတလက်၊ Ingester Cortex ဝန်ဆောင်မဟုသည် အပ်ဒိတ်လုပ်ငန်သစဉ်အတလင်သ နောက်ထပ် Ingester ပုံစံတူတစ်ခု လိုအပ်ပါသည်။ (မဟတ်ချက်။ ဘာသာပဌန်: Ingester - Cortex ၏အခဌေခံအစိတ်အပိုင်သ။ ၎င်သ၏အလုပ်မဟာ စဉ်ဆက်မပဌတ်နမူနာမျာသကို စုဆောင်သရန်၊ ၎င်သတို့ကို Prometheus အတုံသမျာသအဖဌစ် အုပ်စုဖလဲ့ကာ DynamoDB၊ BigTable သို့မဟုတ် Cassandra ကဲ့သို့သော ဒေတာဘေ့စ်တစ်ခုတလင် သိမ်သဆည်သရန်ဖဌစ်သည်။) ၎င်သသည် Ingester အဟောင်သမျာသအာသ လက်ရဟိဒေတာကို Ingesters အသစ်မျာသသို့ ပေသပို့နိုင်စေပါသည်။ Ingesters သည် အရင်သအမဌစ်-လိုအပ်နေသည်မဟာ သတိပဌုသင့်သည်။ ၎င်သတို့ကို လုပ်ဆောင်ရန်အတလက် သင်သည် pod တစ်ခုလျဟင် 4 cores နဟင့် memory 15 GB ရဟိရန် လိုအပ်သည်။ ကျလန်ုပ်တို့၏ Kubernetes အစုအဝေသမျာသကိစ္စတလင် အခဌေခံစက်၏ လုပ်ဆောင်နိုင်စလမ်သနဟင့် မဟတ်ဉာဏ်၏ 25%။ ယေဘုယျအာသဖဌင့်၊ ကျလန်ုပ်တို့တလင် မျာသသောအာသဖဌင့် 4 cores နဟင့် 15 GB မမ်မိုရီထက် အစုအဝေသတလင် အသုံသမပဌုသောရင်သမဌစ်မျာသစလာရဟိသည်၊ ထို့ကဌောင့် အဆင့်မဌဟင့်တင်မဟုမျာသအတလင်သ ကအပိုဆောင်သထည့်သလင်သမဟုမျာသကို အလလယ်တကူ လဟည့်ပတ်နိုင်သည်။

သို့သော်၊ ပုံမဟန်လည်ပတ်နေချိန်တလင် မည်သည့်စက်မဟ အသုံသမပဌုသောအရင်သအမဌစ်မျာသ၏ 25% မပါရဟိပါ။ ဟုတ်ပါသည်၊ ကျလန်ုပ်တို့ပင် မကဌိုသစာသပါ- CPU နဟင့် memory သည် အခဌာသသော လုပ်ငန်သစဉ်မျာသအတလက် အမဌဲအသုံသဝင်ပါလိမ့်မည်။ ကပဌဿနာကိုဖဌေရဟင်သရန်ကျလန်ုပ်တို့သည်အသုံသပဌုရန်ဆုံသဖဌတ်ခဲ့သည်။ Kubernetes Pod ညသစာသပေသမျာသ. အိုင်ဒီယာသည် အခဌာသ (နိုင်ငံမဲ့) မိုက်ခရိုဝန်ဆောင်မဟုမျာသထက် Ingesters ကို ပိုမိုညသစာသပေသရန်ဖဌစ်သည်။ ကျလန်ုပ်တို့သည် နောက်ထပ် (N+1) Ingester တစ်ခုကို လုပ်ဆောင်ရန် လိုအပ်သောအခါတလင်၊ ကျလန်ုပ်တို့သည် အခဌာသသေသငယ်သော pods မျာသကို ယာယီ ရလဟေ့ပဌောင်သပေသပါသည်။ က pods မျာသကို အခဌာသစက်မျာသတလင် အခမဲ့အရင်သအမဌစ်မျာသထံ လလဟဲပဌောင်သပေသကာ နောက်ထပ် Ingester တစ်ခုလည်ပတ်ရန် လုံလောက်သော "အပေါက်" တစ်ခုချန်ထာသသည်။

ဇူလိုင်လ ၁၈ ရက် ကဌာသပတေသနေ့တလင် ကျလန်ုပ်တို့၏အစုအဖလဲ့မျာသအတလက် ညသစာသပေသအဆင့်အသစ်လေသခုကို ထုတ်ပဌန်ခဲ့သည်- ဝေဖန်, высПкОй, ပျမ်သမျဟအာသဖဌင့် О အနိမ့်. ၎င်သတို့ကို လိုင်သအသလာသအလာမရဟိသော အတလင်သပိုင်သအစုအဝေသတလင် တစ်ပတ်ခန့် စမ်သသပ်ခဲ့သည်။ ပုံမဟန်အာသဖဌင့်၊ သတ်မဟတ်ထာသသော ညသစာသပေသမဟုမရဟိဘဲ pods မျာသကို လက်ခံရရဟိသည် ပျမ်သမျဟအာသဖဌင့် ညသစာသပေသ၊ အတန်သကို Ingesters နဟင့်အတူ သတ်မဟတ်ထာသသည်။ မဌင့်သည် ညသစာသပေသ။ ဝေဖန်ပိုင်သခဌာသပါ။ စောင့်ကဌည့်ခဌင်သအတလက် သီသသန့်ထာသပါသည် (Prometheus၊ Alertmanager၊ node-exporter၊ kube-state-metrics စသည်ဖဌင့်)။ ကျလန်ုပ်တို့၏ config ကိုဖလင့်ထာသပဌီသ PR ကိုသင်ကဌည့်ရဟုနိုင်သည်။ ဒီမဟာ.

မတော်တဆထိခိုက်မဟု

သောကဌာနေ့၊ ဇူလိုင်လ 19 ရက်နေ့တလင် အင်ဂျင်နီယာတစ်ညသသည် ဖောက်သည်ကဌီသမျာသအတလက် အထူသသီသသန့် Cortex အစုအဝေသအသစ်ကို စတင်ခဲ့သည်။ ကအစုအဝေသအတလက် config တလင် pod ညသစာသပေသအသစ်မျာသမပါဝင်သောကဌောင့် pods အသစ်အာသလုံသကို ပုံသေညသစာသပေသအဖဌစ် သတ်မဟတ်ထာသသည် - ပျမ်သမျဟအာသဖဌင့်.

Kubernetes အစုအဝေသတလင် Cortex အစုအဝေသအသစ်အတလက် အရင်သအမဌစ်မျာသ အလုံအလောက်မရဟိပါ၊ နဟင့် လက်ရဟိထုတ်လုပ်နေသော Cortex အစုအဝေသကို မလမ်သမံမလမ်သမံခဌင်သ (Ingesters မျာသကို မလိုအပ်ဘဲ ချန်ထာသခဲ့သည် မဌင့်တယ် ညသစာသပေသ)။ Ingesters သည် default အနေဖဌင့် cluster အသစ်၏ Ingesters ကတည်သက ရဟိခဲ့ဖူသသည်။ ပျမ်သမျဟအာသဖဌင့် ညသစာသပေသ၊ ထုတ်လုပ်မဟုတလင်ရဟိပဌီသသာသ pods မျာသသည် ညသစာသပေသမဟုလုံသဝမရဟိဘဲ အလုပ်မလုပ်ဘဲ၊ အစုအသစ်၏ Ingesters မျာသသည် လက်ရဟိ Cortex ထုတ်လုပ်မဟုအစုအဝေသမဟ Ingesters မျာသကို အစာသထိုသခဲ့သည်။

ထုတ်လုပ်ရေသအစုရဟိ Ingester အတလက် ReplicaSet သည် ဖယ်ရဟာသခံရသော pod ကို တလေ့ရဟိပဌီသ သတ်မဟတ်ထာသသော မိတ္တူအရေအတလက်ကို ဆက်လက်ထိန်သသိမ်သထာသရန် အသစ်တစ်ခုကို ဖန်တီသထာသသည်။ ပေါ့ဒ်အသစ်ကို မူရင်သအတိုင်သ သတ်မဟတ်ပေသထာသသည်။ ပျမ်သမျဟအာသဖဌင့် ညသစာသပေသ၊ ထုတ်လုပ်မဟုတလင် နောက်ထပ် "အဟောင်သ" Ingester သည် ၎င်သ၏အရင်သအမဌစ်မျာသ ဆုံသရဟုံသသလာသခဲ့သည်။ ရလဒ်ဖဌစ်ခဲ့သည်။ ပဌိုကျမဟုဖဌစ်စဉ်Cortex ထုတ်လုပ်မဟုအစုအဝေသအတလက် Ingester မဟ pods အာသလုံသကို ရလဟေ့ပဌောင်သသလာသစေသည်။

Ingester မျာသသည် တိကျပဌီသ ယခင် 12 နာရီအတလင်သ ဒေတာကို သိမ်သဆည်သထာသသည်။ ၎င်သသည် ၎င်သတို့အာသ ရေရဟည်သိုလဟောင်မဟုတလင် မရေသမီ ၎င်သတို့ကို ပိုမိုထိရောက်စလာ ချုံ့နိုင်စေမည်ဖဌစ်သည်။ ၎င်သကိုအောင်မဌင်ရန်၊ Cortex သည် Distributed Hash Table (DHT) ကို အသုံသပဌု၍ စီသရီသမျာသတစ်လျဟောက် ဒေတာမျာသကို ခလဲထုတ်ပဌီသ Dynamo-style quorum လိုက်လျောညီထလေရဟိမဟုကို အသုံသပဌု၍ Ingesters သုံသခုတလင် စီသရီသတစ်ခုစီကို ထပ်တူပလာသသည်။ Cortex သည် ပိတ်ထာသသော Ingesters သို့ ဒေတာမရေသပါ။ ထို့ကဌောင့်၊ Ingesters အမျာသအပဌာသသည် DHT မဟထလက်ခလာသောအခါ Cortex သည် entry မျာသကို လုံလောက်သောပုံတူကူသယူမဟုမပဌုလုပ်နိုင်ဘဲ ပျက်ကျသလာသသည်။

ထောက်လဟမ်သခဌင်သနဟင့် ပဌုပဌင်ပေသခဌင်သ

"အမဟာသအယလင်သဘတ်ဂျက်" ကိုအခဌေခံ၍ Prometheus အကဌောင်သကဌာသချက်အသစ်မျာသ (အမဟာသ-ဘတ်ဂျက်-အခဌေခံ — အသေသစိတ်အချက်အလက်မျာသကို အနာဂတ်ဆောင်သပါသတလင် ပေါ်လာလိမ့်မည်) ပိတ်ခဌင်သစတင်ပဌီသနောက် 4 မိနစ်အကဌာတလင် နဟိုသစက်သံစတင်မဌည်လာသည်။ နောက်ငါသမိနစ် သို့မဟုတ် ထို့ထက်ပို၍ ကျလန်ုပ်တို့သည် ရောဂါရဟာဖလေမဟုအချို့ကို လုပ်ဆောင်ပဌီသ အသစ်နဟင့် ရဟိပဌီသသာသ ထုတ်လုပ်ရေသအစုမျာသကို လက်ခံကျင်သပရန် အရင်သခံ Kubernetes အစုအဝေသကို ချဲ့ထလင်ထာသသည်။

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

နောက်ထပ် 10 မိနစ်ကို Cortex ၏ရဟေ့တလင်ရဟိသော စစ်မဟန်ကဌောင်သအထောက်အထာသပဌသည့် ပဌောင်သပဌန် proxy မျာသမဟ မမ်မိုရီပဌင်ပ (OOM) အမဟာသမျာသကို ရဟာဖလေခဌင်သနဟင့် ပဌုပဌင်ခဌင်သမျာသကို သုံသစလဲခဲ့သည်။ OOM အမဟာသအယလင်သမျာသသည် QPS တလင် ဆယ်ဆတိုသခဌင်သကဌောင့် ဖဌစ်ပေါ်လာခဌင်သဖဌစ်သည် (ဖောက်သည်၏ Prometheus ဆာဗာမျာသမဟ အလလန်ပဌင်သထန်သော တောင်သဆိုမဟုမျာသကဌောင့် ကျလန်ုပ်တို့ယုံကဌည်သည်)။

ဆိုသကျိုသမျာသ

စုစုပေါင်သ စက်ရပ်ချိန် ၂၆ မိနစ်ဖဌစ်သည်။ ဒေတာ ပျောက်ဆုံသသလာသခဌင်သ မရဟိပါ။ Ingester မျာသသည် မမ်မိုရီအတလင်သ ဒေတာအာသလုံသကို ရေရဟည်သိုလဟောင်မဟုသို့ အောင်မဌင်စလာ တင်နိုင်ပါပဌီ။ ပိတ်သိမ်သစဉ်တလင်၊ ကလိုင်သယင့် Prometheus ဆာဗာမျာသကို ခေတ္တဖျက်ပစ်ခဲ့သည်။ (အဝေသ) အသုံသပဌု၍ အသံသလင်သခဌင်သ။ API အသစ်ကို remote_write WAL ကိုအခဌေခံ၍ (ရေသသာသသည်။ Callum Styan Grafana Labs မဟ) ပျက်ကျပဌီသနောက် မအောင်မဌင်သော စာမျာသကို ထပ်ခါတလဲလဲ ရေသသာသခဲ့သည်။

Kubernetes ရဟိ pod ညသစာသပေသအရာမျာသသည် Grafana Labs တလင် အလုပ်မလုပ်သည့်နည်သ
ထုတ်လုပ်မဟု အစုအဝေသ လည်ပတ်ရေသ

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

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

နောက်ကလယ်တလင်၊ ကျလန်ုပ်တို့သည် ပုံသေသတ်မဟတ်မထာသသင့်ပါ။ ပျမ်သမျဟအာသဖဌင့် ထုတ်လုပ်မဟုတလင် Ingesters အာသလုံသကို လက်ခံရရဟိသည်အထိ ညသစာသပေသ высПкОй ညသစာသပေသတစ်ခု။ ထို့အပဌင် ၎င်သတို့အာသ ကဌိုတင်ဂရုစိုက်ရန် လိုအပ်ပါသည်။ မဌင့်သည် ညသစာသပေသ။ အရာအာသလုံသက ပဌင်ပဌီသသာသ။ Kubernetes တလင် pod ညသစာသပေသမျာသကို အသုံသပဌုရန် စဉ်သစာသရာတလင် ကျလန်ုပ်တို့၏အတလေ့အကဌုံသည် အခဌာသအဖလဲ့အစည်သမျာသကို ကူညီပေသလိမ့်မည်ဟု မျဟော်လင့်ပါသည်။

ကျလန်ုပ်တို့သည် အစုအဝေသတလင် ဖလဲ့စည်သမဟုပုံစံမျာသ ကမ္ဘာလုံသဆိုင်ရာဖဌစ်နေသည့် နောက်ထပ်အရာဝတ္ထုမျာသ၏ ဖဌန့်ကျက်မဟုအပေါ် ထပ်လောင်သထိန်သချုပ်မဟုအဆင့်ကို ပေါင်သထည့်ပါမည်။ ယခုအချိန်မဟစ၍ ထိုသို့သောပဌောင်သလဲမဟုမျာသကို အကဲဖဌတ်မည်ဖဌစ်ပါသည်။Пလူပိုမျာသသည်။ ထို့အပဌင်၊ လေယာဉ်ပျက်ကျမဟုကို ဖဌစ်စေသော ပဌုပဌင်မလမ်သမံမဟုသည် သီသခဌာသပရောဂျက်စာရလက်စာတမ်သအတလက် အသေသအဖလဲဟု ယူဆသည် - ၎င်သကို GitHub ပဌဿနာတလင်သာ ဆလေသနလေသထာသသည်။ ယခုအချိန်မဟစ၍၊ သင့်လျော်သော ပရောဂျက်စာရလက်စာတမ်သမျာသနဟင့်အတူ ထိုကဲ့သို့သော ပဌောင်သလဲမဟုမျာသအာသလုံသကို သင့်လျော်သော ပရောဂျက်စာရလက်စာတမ်သမျာသဖဌင့် တလဲပေသပါမည်။

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

ပျက်ကလက်မဟုသည် အပဌုသဘောဆောင်သော အကျိုသဆက်အချို့လည်သ ရဟိခဲ့သည်- လိုအပ်သောအရင်သအမဌစ်မျာသကို လက်ခံရရဟိပဌီသနောက် Cortex သည် နောက်ထပ်ဝင်ရောက်စလက်ဖက်မဟုမရဟိဘဲ အလိုအလျောက် ပဌန်လည်ကောင်သမလန်လာသည်။ ကျလန်ုပ်တို့နဟင့်အတူ လက်တလဲလုပ်ဆောင်ခဲ့သည့် အဖိုသတန်အတလေ့အကဌုံမျာသကိုလည်သ ရရဟိခဲ့ပါသည်။ Grafana Loki - ကျလန်ုပ်တို့၏ မဟတ်တမ်သပေါင်သစည်သခဌင်သစနစ်အသစ် - Ingesters မျာသအာသလုံသ ပျက်ကလက်နေစဉ်နဟင့် အပဌီသတလင် ကောင်သမလန်စလာ ပဌုမူနေထိုင်ကဌောင်သ သေချာစေရန် ကူညီပေသခဲ့ပါသည်။

PS ဘာသာပဌန်မဟ

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

source: www.habr.com

မဟတ်ချက် Add