CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

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

ငါတို့ဘယ်ကစခဲ့တာလဲ။

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

လလန်ခဲ့သည့်နဟစ်အနည်သငယ်အတလင်သ cian.ru ပေါ်တလင်တင်ဆောင်မဟုသည် အလလန်လျင်မဌန်စလာကဌီသထလာသလာခဲ့ပဌီသ 2018 ခုနဟစ် တတိယသုံသလပတ်တလင် အရင်သအမဌစ်အသလာသအလာသည် တစ်လလျဟင် ထူသခဌာသသောအသုံသပဌုသူ 11.2 သန်သအထိရောက်ရဟိခဲ့သည်။ ထိုအချိန်တလင်၊ အရေသကဌီသသောအခိုက်အတန့်မျာသတလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ 40% အထိ ဆုံသရဟုံသသလာသသောကဌောင့် အဖဌစ်အပျက်မျာသကို မဌန်မဌန်ဆန်ဆန် မဖဌေရဟင်သနိုင်ဘဲ ၎င်သတို့အာသ ဖဌေရဟင်သရန် အချိန်မျာသစလာနဟင့် ကဌိုသစာသအာသထုတ်မဟုတို့ကို ကုန်ဆုံသစေသည်။ ကျလန်ုပ်တို့သည်လည်သ ပဌဿနာ၏အကဌောင်သရင်သကို မကဌာခဏရဟာမတလေ့နိုင်ဘဲ အချိန်အတန်ကဌာပဌီသနောက် ပဌန်ဖဌစ်လာမည်ဖဌစ်သည်။ ဒါဟာ ငရဲဖဌစ်ပဌီသ အဲဒါနဲ့ ပတ်သက်ပဌီသ တစ်ခုခုလုပ်ရမဟာပေါ့။

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

ElasticSearch ညဟိနဟိုင်သရေသမဟူသငါသခုရဟိ မတူညီသော ဆိပ်ကမ်သမျာသတလင် Logstash မဟ ဝင်လာသော မဟတ်တမ်သမျာသကို စီမံဆောင်ရလက်ပေသပါသည်။ အရလယ်အစာသမခလဲခဌာသဘဲ အညလဟန်သတစ်ခုတလင် အပိုင်သငါသပိုင်သပါရဟိသည်။ တစ်နာရီနဟင့်နေ့စဥ်လည်ပတ်မဟုကိုစီစဉ်ထာသသောကဌောင့် အစုအဝေသတလင်တစ်နာရီလျဟင် အပိုင်သအသစ် 100 ခန့်ပေါ်လာသည်။ မဟတ်တမ်သမျာသစလာမရဟိသော်လည်သ၊ အစုအဖလဲ့သည် ကောင်သမလန်စလာဖဌေရဟင်သနိုင်ပဌီသ ၎င်သ၏ဆက်တင်မျာသကို မည်သူမျဟ ဂရုမစိုက်ပါ။ 

အရဟိန်အဟုန်ဖဌင့် ကဌီသထလာသလာသော စိန်ခေါ်မဟုမျာသ

လုပ်ငန်သစဉ်နဟစ်ခုသည် တစ်ခုနဟင့်တစ်ခု ထပ်နေသောကဌောင့် ထုတ်လုပ်လိုက်သော မဟတ်တမ်သမျာသ၏ ပမာဏသည် အလလန်လျင်မဌန်စလာ တိုသလာပါသည်။ တစ်ဖက်တလင်၊ ဝန်ဆောင်မဟုအသုံသပဌုသူအရေအတလက် တိုသလာခဲ့သည်။ အခဌာသတစ်ဖက်တလင်၊ ကျလန်ုပ်တို့သည် C# နဟင့် Python တို့တလင် ကျလန်ုပ်တို့၏ monoliths အဟောင်သမျာသကို မဌင်နိုင်သော microservice ဗိသုကာတစ်ခုသို့ တက်ကဌလစလာကူသပဌောင်သစပဌုလာသည်။ monolith ၏ အစိတ်အပိုင်သမျာသကို အစာသထိုသသည့် ဒါဇင်မျာသစလာသော မိုက်ခရိုဝန်ဆောင်မဟုအသစ်မျာသသည် အခဌေခံအဆောက်အအုံအစုအဝေသအတလက် သိသိသာသာ မဟတ်တမ်သမျာသ ပိုမိုထုတ်ပေသသည်။ 

၎င်သသည် အစုအဝေသကို လက်တလေ့ကျကျ မစီမံခန့်ခလဲနိုင်သော အနေအထာသသို့ ပို့ဆောင်ပေသခဲ့သည်။ မဟတ်တမ်သမျာသသည် တစ်စက္ကန့်လျဟင် မက်ဆေ့ခ်ျ 20 နဟုန်သဖဌင့် စတင်ရောက်ရဟိသောအခါ၊ မကဌာခဏ အသုံသမဝင်သော လဟည့်ခဌင်သမျာသသည် shards အရေအတလက် 6 သို့ တိုသလာပဌီသ node တစ်ခုလျဟင် shards 600 ကျော်ရဟိသည်။ 

၎င်သသည် RAM ခလဲဝေမဟုတလင် ပဌဿနာမျာသဖဌစ်ပေါ်စေပဌီသ node တစ်ခုပျက်သလာသသောအခါ၊ shards မျာသအာသလုံသသည် တစ်ပဌိုင်နက်တည်သ ရလေ့လျာသလာပဌီသ၊ traffic မျာသကို မျာသပဌာသစေကာ အခဌာသ node မျာသကို loading ပဌုလုပ်ခဌင်သဖဌင့် cluster သို့ data ရေသရန် မဖဌစ်နိုင်လုနီသပါသဖဌစ်စေခဲ့သည်။ အဲဒီကာလမဟာ ကျလန်တော်တို့ဟာ သစ်တုံသမပါဘဲ ကျန်ရစ်ခဲ့တယ်။ ဆာဗာတလင် ပဌဿနာရဟိပါက၊ ကျလန်ုပ်တို့သည် အခဌေခံအာသဖဌင့် အစုအဝေသ၏ 1/10 ကို ဆုံသရဟုံသခဲ့ရသည်။ သေသငယ်သော အညလဟန်သကိန်သမျာသစလာသည် ရဟုပ်ထလေသမဟုကို ပေါင်သထည့်ထာသသည်။

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

မဟတ်တမ်သမျာသ ဆုံသရဟုံသမဟုကို လုံသဝဖယ်ရဟာသရန်နဟင့် ELK အစုအဝေသသို့ ၎င်သတို့၏ ပေသပို့သည့်အချိန်ကို အင်အာသပဌနေချိန်တလင် အမျာသဆုံသ 15 မိနစ်အထိ လျဟော့ချရန် ရည်မဟန်သချက်ကို ချမဟတ်ထာသပါသည် (နောက်ပိုင်သတလင် ကကိန်သဂဏန်သကို ပဌည်တလင်သ KPI အဖဌစ် မဟီခိုနေရသည်)။

လည်ပတ်မဟု ယန္တရာသအသစ်နဟင့် ပူနလေသသော ဆုံမဟတ်မျာသ

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

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

ကအဆင့်တလင် အကဌီသစာသအသလင်ပဌောင်သမဟုမဟာ အလယ်အလတ်ကဌာသခံအဖဌစ် ညဟိနဟိုင်သရေသမဟူသနဟင့်အတူ node သုံသခုပေါ်တလင် Apache Kafka ကို အကောင်အထည်ဖော်ခဌင်သဖဌစ်သည်။ ElasticSearch နဟင့် ပဌဿနာမျာသအတလင်သ မဟတ်တမ်သမျာသ ဆုံသရဟုံသခဌင်သမဟ မက်ဆေ့ချ်ပလဲစာသသည် ကျလန်ုပ်တို့ကို ကယ်တင်ခဲ့သည်။ တစ်ချိန်တည်သမဟာပင်၊ ကျလန်ုပ်တို့သည် အစုအဝေသသို့ node 2 ခုကိုပေါင်သထည့်ပဌီသ data center ရဟိ မတူညီသော racks တလင်ရဟိသော "hot" node သုံသခုပါသည့် ပူနလေသသောဗိသုကာအဖဌစ်သို့ ပဌောင်သခဲ့သည်။ မည်သည့်အခဌေအနေမျိုသတလင်မဆို မဆုံသရဟုံသသင့်သော မျက်နဟာဖုံသကို အသုံသပဌု၍ မဟတ်တမ်သမျာသကို ၎င်သတို့ထံ ပဌန်ညလဟန်သခဲ့သည် - nginx နဟင့် အပလီကေသရဟင်သ အမဟာသအယလင်သမဟတ်တမ်သမျာသ။ မဟတ်တမ်သအသေသစာသမျာသကို ကျန်ရဟိသော node မျာသသို့ ပို့လိုက်သည် - အမဟာသပဌင်ဆင်ခဌင်သ၊ သတိပေသချက် စသည်တို့ကို ပေသပို့ပဌီသ 24 နာရီအကဌာတလင်၊ "hot" node မျာသမဟ အရေသကဌီသသော မဟတ်တမ်သမျာသကို လလဟဲပဌောင်သပေသပါသည်။

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

အစုလိုက် ပိုမိုကောင်သမလန်အောင် ပဌုလုပ်ခဌင်သ။

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

သို့သော် ကျလန်ုပ်တို့သည် ပဌဿနာမျာသကို လုံသလုံသလျာသလျာသ မဖဌေရဟင်သနိုင်ပါ။ ကံမကောင်သစလာဖဌင့်၊ သေသငယ်သော အညလဟန်သကိန်သမျာသသည် ပေါ်လာဆဲဖဌစ်သည်- ၎င်သတို့သည် သတ်မဟတ်ထာသသည့် ပမာဏသို့ မရောက်ဘဲ၊ လဟည့်ခဌင်သမခံရဘဲ၊ ကျလန်ုပ်တို့သည် ရက်စလဲဖဌင့် လည်ပတ်မဟုကို ဖယ်ရဟာသလိုက်သောကဌောင့် သုံသရက်ထက် ပိုဟောင်သသော အညလဟန်သမျာသကို ကမ္ဘာလုံသဆိုင်ရာ သန့်ရဟင်သရေသဖဌင့် ဖျက်ပစ်ခဲ့သည်။ ယင်သကဌောင့် အစုအဝေသမဟ အညလဟန်သသည် လုံသလုံသလျာသလျာသ ပျောက်ကလယ်သလာသပဌီသ၊ မရဟိသော အညလဟန်သသို့ စာရေသရန် ကဌိုသပမ်သမဟုကဌောင့် ဒေတာ ဆုံသရဟုံသမဟု ဖဌစ်စေခဲ့သည်။ စာရေသခဌင်သအတလက် နံမည်မျာသကို အညလဟန်သတစ်ခုအဖဌစ်သို့ ပဌောင်သလဲခဲ့ပဌီသ အချို့သော အညလဟန်သကိန်သမျာသကို 600 GB အထိ ထိန်သချုပ်မရသော ကဌီသထလာသမဟုကို ဖဌစ်စေသည်။ 

ဥပမာအာသဖဌင့်၊ လည်ပတ်မဟု config အတလက်၊

сurator-elk-rollover.yaml

---
actions:
  1:
    action: rollover
    options:
      name: "nginx_write"
      conditions:
        max_docs: 100000000
  2:
    action: rollover
    options:
      name: "python_error_write"
      conditions:
        max_docs: 10000000

rollover alias မရဟိပါက၊ အမဟာသအယလင်သဖဌစ်သလာသသည်-

ERROR     alias "nginx_write" not found.
ERROR     Failed to complete action: rollover.  <type 'exceptions.ValueError'>: Unable to perform index rollover with alias "nginx_write".

ကျလန်ုပ်တို့သည် ကပဌဿနာအတလက် ဖဌေရဟင်သချက်ကို ချန်ထာသခဲ့ကာ နောက်ထပ်ပဌဿနာတစ်ခုအာသ ဖဌေရဟင်သခဲ့သည်- ကျလန်ုပ်တို့သည် အဝင်မဟတ်တမ်သမျာသကို လုပ်ဆောင်ပေသသည့် (မလိုအပ်သော အချက်အလက်မျာသကို ဖယ်ရဟာသပဌီသ ကဌလယ်ဝစေသည်) ဟူသော Logstash ၏ ဆလဲငင်ယုဂ်သို့ ပဌောင်သခဲ့သည်။ ကျလန်ုပ်တို့သည် ၎င်သကို docker-compose မဟတစ်ဆင့် စတင်သည့် docker တလင် ထာသရဟိကာ၊ logstash-exporter ကိုလည်သ ထိုနေရာတလင် ထာသရဟိကာ၊ log stream ၏လည်ပတ်မဟုကို စောင့်ကဌည့်ရန်အတလက် Prometheus သို့ မက်ထရစ်မျာသကို ပေသပို့ပေသပါသည်။ ကနည်သဖဌင့် ကျလန်ုပ်တို့သည် မဟတ်တမ်သအမျိုသအစာသတစ်ခုစီကို လုပ်ဆောင်ရန် တာဝန်ရဟိသော logstash ဖဌစ်ရပ်အရေအတလက်ကို ချောမလေ့စလာပဌောင်သလဲရန် အခလင့်အရေသပေသခဲ့သည်။

ကျလန်ုပ်တို့သည် အစုအဝေသကို ပိုမိုကောင်သမလန်အောင် လုပ်ဆောင်နေစဉ်၊ cian.ru ၏ လမ်သကဌောင်သသည် တစ်လလျဟင် ထူသခဌာသသောအသုံသပဌုသူ 12,8 သန်သအထိ တိုသလာသည်။ ရလဒ်အနေနဟင့်၊ ကျလန်ုပ်တို့၏အသလင်ကူသပဌောင်သမဟုမျာသသည် ထုတ်လုပ်မဟုပဌောင်သလဲမဟုမျာသ၏နောက်ကလယ်တလင် အနည်သငယ်ရဟိနေကဌောင်သ တလေ့ရဟိရပဌီသ "ပူနလေသသော" nodes မျာသသည် ဝန်ကိုမထိန်သနိုင်ဘဲ မဟတ်တမ်သမျာသပေသပို့မဟုတစ်ခုလုံသကို နဟေသကလေသစေသည့်အချက်နဟင့် ရင်ဆိုင်ခဲ့ရသည်။ ကျလန်ုပ်တို့သည် မအောင်မဌင်ဘဲ "hot" ဒေတာကို လက်ခံရရဟိခဲ့သည်၊ သို့သော် ကျန်အရာမျာသကို ပေသပို့ရာတလင် ဝင်ရောက်စလက်ဖက်ကာ အညလဟန်သကိန်သမျာသကို အညီအမျဟ ဖဌန့်ဝေနိုင်ရန် လူကိုယ်တိုင် လဟည့်ပတ်လုပ်ဆောင်ရပါမည်။ 

တစ်ချိန်တည်သမဟာပင်၊ အစုအဝေသရဟိ logstash ဖဌစ်ရပ်မျာသ၏ ဆက်တင်မျာသကို ချဲ့ထလင်ခဌင်သနဟင့် ပဌောင်သလဲခဌင်သတို့သည် ဒေသခံ docker-compose ဖဌစ်သည်ဟူသောအချက်ကဌောင့် ရဟုပ်ထလေသခဲ့ပဌီသ လုပ်ဆောင်ချက်မျာသအာသလုံသကို ကိုယ်တိုင်လုပ်ဆောင်ခဲ့သည် (အဆုံသအသစ်မျာသထည့်ရန်၊ အာသလုံသကို ကိုယ်တိုင်ဖဌတ်သန်သရန် လိုအပ်ပါသည်။ ဆာဗာမျာသနဟင့် docker-compose up -d နေရာတိုင်သတလင်ပဌုလုပ်ပါ။

မဟတ်တမ်သပဌန်လည်ဖဌန့်ဝေခဌင်သ။

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

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

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

  • "hot" nodes အတလက်- E3-1270 v6 / 960Gb SSD / 32 Gb x 3 x 2 (Hot3 အတလက် 1 နဟင့် Hot3 အတလက် 2)။
  • "နလေသထလေသသော" ဆုံမဟတ်မျာသအတလက်- E3-1230 v6 / 4Tb SSD / 32 Gb x 4 ။

ကအစီအစဥ်တလင်၊ ကျလန်ုပ်တို့သည် ရဟေ့လိုင်သ nginx မဟတ်တမ်သမျာသကဲ့သို့ နေရာယူထာသသည့် microservices ၏ဝင်ရောက်ခလင့်မဟတ်တမ်သမျာသဖဌင့် အညလဟန်သကိန်သကို "hot" node သုံသခု၏ ဒုတိယအုပ်စုသို့ ရလဟေ့လိုက်ပါသည်။ ယခုအခါ ကျလန်ုပ်တို့သည် “hot” node မျာသတလင် ဒေတာကို နာရီ 20 ကဌာ သိမ်သဆည်သထာသပဌီသ ကျန်မဟတ်တမ်သမျာသဆီသို့ ၎င်သတို့အာသ “နလေသ” သည့်နေရာမျာသသို့ လလဟဲပဌောင်သပါ။ 

၎င်သတို့၏ လည်ပတ်မဟုကို ပဌန်လည်သတ်မဟတ်ခဌင်သဖဌင့် သေသငယ်သော အညလဟန်သမျာသ ပျောက်ဆုံသသလာသသည့် ပဌဿနာကို ကျလန်ုပ်တို့ ဖဌေရဟင်သခဲ့သည်။ ယခုအခါတလင် ဒေတာအနည်သငယ်သာရဟိသော်လည်သ မည်သည့်အခဌေအနေမျိုသတလင်မဆို ၂၃ နာရီတိုင်သ အညလဟန်သကိန်သမျာသကို လဟည့်ပတ်နေပါသည်။ ကအရာသည် shards အရေအတလက်အနည်သငယ်တိုသလာသည် (၎င်သတို့ထဲမဟ 23 ခန့်ရဟိသည်)၊ သို့သော် cluster performance ၏ရဟုထောင့်မဟကဌည့်လျဟင်၎င်သသည်သည်သခံနိုင်သည်။ 

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

ကပဌန်ဆိုချက်သည် semi-automatic scaling မရဟိခဌင်သပဌဿနာကိုလည်သ ဖဌေရဟင်သပေသပါသည်။ ဒါကိုလုပ်ဖို့၊ ကျလန်ုပ်တို့ဟာ ထုတ်လုပ်မဟုမဟာ ဖဌန့်ကျက်ထာသပဌီသသာသနဲ့ ဆင်တူတဲ့ အခဌေခံအဆောက်အည Nomad cluster ကို ဖဌန့်ကျက်ထာသပါတယ်။ ယခုအချိန်တလင်၊ Logstash ပမာဏသည် ဝန်ပေါ် မူတည်၍ အလိုအလျောက်ပဌောင်သလဲခဌင်သမရဟိသော်လည်သ၊ ကျလန်ုပ်တို့သည် ကသို့လာပါမည်။

CIAN တလင် ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ၏ terabytes ကို မည်သို့ ထိန်သကျောင်သခဲ့သနည်သ။

အနာဂတျအတဟကျအစီအစဉျမဌာသ

အကောင်အထည်ဖော်ထာသသော ဖလဲ့စည်သမဟုပုံစံစကေသမျာသကို စုံလင်စလာ ချိန်ညဟိထာသပဌီသ ယခု ကျလန်ုပ်တို့သည် ဒေတာ 13,3 TB - အရေသပေါ်သတိပေသချက်မျာသကို ခလဲခဌမ်သစိတ်ဖဌာမဟုအတလက် လိုအပ်သော မဟတ်တမ်သမျာသအာသလုံသကို 4 ရက်ကဌာ သိမ်သဆည်သထာသပါသည်။ ကျလန်ုပ်တို့သည် မဟတ်တမ်သအချို့ကို Graphite သို့ထည့်သည့် မက်ထရစ်မျာသအဖဌစ်သို့ ပဌောင်သလဲပါသည်။ အင်ဂျင်နီယာမျာသ၏အလုပ်ပိုမိုလလယ်ကူစေရန်အတလက်၊ သာမန်ပဌဿနာမျာသ၏တစ်ပိုင်သအလိုအလျောက်ပဌုပဌင်ခဌင်သအတလက် အခဌေခံအဆောက်အအုံအစုအဝေသအတလက် မက်ထရစ်မျာသနဟင့် scripts မျာသရဟိသည်။ လာမည့်နဟစ်အတလက် စီစဉ်ထာသသည့် ဒေတာ node အရေအတလက်ကို တိုသမဌဟင့်ပဌီသနောက်၊ ကျလန်ုပ်တို့သည် 4 ရက်မဟ 7 ရက်အထိ ဒေတာသိုလဟောင်မဟုသို့ ပဌောင်သပါမည်။ ကျလန်ုပ်တို့သည် အဖဌစ်အပျက်မျာသကို တတ်နိုင်သမျဟ အမဌန်ဆုံသစုံစမ်သရန် အမဌဲကဌိုသစာသနေပဌီသ ရေရဟည်စုံစမ်သစစ်ဆေသမဟုမျာသအတလက် တယ်လီမီတာဒေတာပါရဟိသောကဌောင့် လုပ်ငန်သလည်ပတ်မဟုလုပ်ငန်သအတလက် ၎င်သသည် လုံလောက်မည်ဖဌစ်သည်။ 

2019 ခုနဟစ် အောက်တိုဘာလတလင်၊ cian.ru သို့ လမ်သကဌောင်သသည် တစ်လလျဟင် ထူသခဌာသသောအသုံသပဌုသူ 15,3 သန်သအထိ တိုသလာခဲ့သည်။ ကသည်မဟာ သစ်လုံသမျာသပေသပို့ခဌင်သအတလက် ဗိသုကာဆိုင်ရာဖဌေရဟင်သချက်၏ လေသနက်သောစမ်သသပ်မဟုတစ်ခု ဖဌစ်လာခဲ့သည်။ 

ယခု ကျလန်ုပ်တို့သည် ElasticSearch ကို ဗာသရဟင်သ 7 သို့ အပ်ဒိတ်လုပ်ရန် ပဌင်ဆင်နေပါသည်။ သို့သော်၊ ၎င်သတို့သည် ဗာသရဟင်သ 5.5 မဟ ပဌောင်သရလဟေ့ပဌီသ ဗာသရဟင်သ 6 တလင် ရပ်ဆိုင်သထာသသည်ဟု ကဌေညာထာသသောကဌောင့် ၎င်သအတလက် ElasticSearch တလင် အညလဟန်သမျာသစလာ၏ မဌေပုံဆလဲခဌင်သကို အပ်ဒိတ်လုပ်ရမည်ဖဌစ်ပါသည်။ ၇)။ ဆိုလိုသည်မဟာ အပ်ဒိတ်လုပ်ငန်သစဉ်အတလင်သ ပဌဿနာကိုဖဌေရဟင်သပဌီသချိန်တလင် ကျလန်ုပ်တို့အာသ မဟတ်တမ်သမျာသမပါဘဲ ထလက်ခလာသလာသမည့် force majeure တစ်မျိုသမျိုသရဟိနေမည်မဟာ သေချာပါသည်။ ဗာသရဟင်သ 7 တလင်၊ ကျလန်ုပ်တို့သည် ပိုမိုကောင်သမလန်သော အင်တာဖေ့စ်နဟင့် စစ်ထုတ်မဟုအသစ်မျာသဖဌင့် Kibana ကို စောင့်မျဟော်နေပါသည်။ 

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

source: www.habr.com

မဟတ်ချက် Add