Kubernetes တလင် Kafka ကောင်သပါသလာသ။

မင်္ဂလာပါ Habr။

တစ်ချိန်က၊ ကျလန်ုပ်တို့သည် ရုရဟစျေသကလက်သို့ ခေါင်သစဉ်ကို ပထမဆုံသမိတ်ဆက်ခဲ့သည်။ Kafka ဆက်လုပ်ပါ။ တစ်ပုဒ် ၎င်သ၏ဖလံ့ဖဌိုသတိုသတက်မဟုအတလက်။ အထူသသဖဌင့်၊ Kafka နဟင့် Kafka အကဌာသ အပဌန်အလဟန်ဆက်ဆံမဟုဆိုင်ရာ ခေါင်သစဉ်ကို ကျလန်ုပ်တို့ တလေ့ရဟိခဲ့သည်။ Kubernetes. မဌင်နိုင်သည် (အလလန်သတိထာသပါ) ဆောင်သပါသ ကအကဌောင်သအရာကို Gwen Shapira ရေသသာသမဟုအောက်တလင် ပဌီသခဲ့သည့်နဟစ် အောက်တိုဘာလတလင် Confluent ဘလော့ဂ်တလင် ထုတ်ဝေခဲ့သည်။ ယနေ့တလင် ခေါင်သစဉ်တလင် မေသခလန်သအမဟတ်အသာသမပါဘဲ မဟုတ်သော်လည်သ၊ စိတ်ဝင်စာသစရာကောင်သသော လင့်ခ်မျာသဖဌင့် စာသာသပါသော စာသာသမျာသကို ပိုမိုသိသာထင်ရဟာသစလာ စစ်ဆေသပေသသည့် Johann Gyger မဟ ယနေ့တလင် သင်၏အာရုံစိုက်မဟုကို ရယူလိုပါသည်။ "chaos monkey" ၏အခမဲ့ဘာသာပဌန်ကိုသင်တတ်နိုင်လျဟင်ကျလန်ုပ်တို့ကိုခလင့်လလဟတ်ပါ။

Kubernetes တလင် Kafka ကောင်သပါသလာသ။

နိဒါန်သ

Kubernetes သည် နိုင်ငံမဲ့အလုပ်မျာသကို ကိုင်တလယ်ရန် ဒီဇိုင်သထုတ်ထာသသည်။ ပုံမဟန်အာသဖဌင့်၊ ထိုကဲ့သို့သော အလုပ်ပမာဏမျာသကို microservice ဗိသုကာပုံစံဖဌင့် တင်ပဌသည်၊ ၎င်သတို့သည် ပေါ့ပါသပဌီသ အလျာသလိုက် ကောင်သစလာ အတိုင်သအတာ၊ 12-factor applications မျာသ၏ အခဌေခံမူမျာသကို လိုက်နာကာ circuit breakers မျာသနဟင့် chaos မျောက်မျာသနဟင့် အလုပ်လုပ်နိုင်သည်။

အခဌာသတစ်ဖက်တလင် Kafka သည် ဖဌန့်ဝေထာသသောဒေတာဘေ့စ်တစ်ခုအဖဌစ် အဓိကအာသဖဌင့် လုပ်ဆောင်သည်။ ထို့ကဌောင့် အလုပ်လုပ်သောအခါ၊ သင်သည် ပဌည်နယ်နဟင့် ဆက်ဆံရမည်ဖဌစ်ပဌီသ၊ ၎င်သသည် microservice ထက် မျာသစလာပိုလေသသည်။ Kubernetes သည် ပဌည်နယ်အလိုက် ဝန်ထုပ်ဝန်ပိုသမျာသကို ပံ့ပိုသပေသသော်လည်သ Kelsey Hightower သည် tweets နဟစ်ခုတလင် ထောက်ပဌထာသသည့်အတိုင်သ၊ ၎င်သတို့ကို ဂရုတစိုက်ကိုင်တလယ်သင့်သည်-

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

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

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

ပဌီသစီသချိန်

အခဌေခံအချက် - runtime ပတ် ၀ န်သကျင်ကိုယ်တိုင်အကဌောင်သပဌောကဌပါစို့

ဖဌစ်စဉ်

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

မဟတ်ဉာဏ်

Kafka ပလဲစာသတလေက Memory ကိုစာသတယ်။ JVM heap အရလယ်အစာသကို အမျာသအာသဖဌင့် 4-5 GB တလင်ကန့်သတ်ထာသသော်လည်သ Kafka သည် page cache ကိုအလလန်အမင်သအသုံသပဌုသောကဌောင့် system memory အမျာသအပဌာသလိုအပ်မည်ဖဌစ်ပါသည်။ Kubernetes တလင်၊ ကလန်တိန်နာရင်သမဌစ်ကို သတ်မဟတ်ပဌီသ တောင်သဆိုမဟုကန့်သတ်ချက်မျာသနဟင့်အညီ။

ဒေတာစတိုသ

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

ထို့ကဌောင့် သင်သည် ရေရဟည်ဒေတာသိမ်သဆည်သမဟုကို အသုံသပဌုသင့်သည်။ XFS ဖိုင်စနစ်ဖဌင့် ဒေသတလင်သမဟုတ်သော ရေရဟည်သိုလဟောင်မဟု သို့မဟုတ် အတိအကျအာသဖဌင့် ext4 ဖဌစ်ပါစေ။ NFS မသုံသပါနဟင့်။ ငါ မင်သကို သတိပေသခဲ့တယ်။ NFS ဗာသရဟင်သ v3 သို့မဟုတ် v4 အလုပ်မလုပ်ပါ။ အတိုချုပ်အာသဖဌင့်၊ NFS ရဟိ "မိုက်မဲသောအမည်ပဌောင်သ" ပဌဿနာကဌောင့် ဒေတာလမ်သညလဟန်ကို မဖျက်နိုင်ပါက Kafka ပလဲစာသသည် ပျက်စီသသလာသပါမည်။ ငါ မင်သကို မယုံကဌည်သေသရင် သေသေချာချာ ကဆောင်သပါသကိုဖတ်ပါ။. ပဌန်လည်စတင်ခဌင်သ သို့မဟုတ် နေရာပဌောင်သရလဟေ့ပဌီသနောက် Kubernetes သည် ဒေတာစတိုသဆိုင်သည် စက်တလင်သမဟုတ်သောဖဌစ်သင့်သည်။

ကလန်ယက်ကို

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

configuration မျာသ

ပုံမဟန်ဖော်ပဌချက်မျာသ

Kubernetes ဝဘ်ဆိုဒ်တလင် ပါရဟိသည်။ အလလန်ကောင်သသောလမ်သညလဟန် မန်နီသဖက်စ်မျာသကို အသုံသပဌု၍ ZooKeeper ကို မည်သို့ configure လုပ်ရမည်အကဌောင်သ။ ZooKeeper သည် Kafka ၏ တစ်စိတ်တစ်ပိုင်သဖဌစ်သောကဌောင့်၊ ကနေရာသည် Kubernetes အယူအဆမျာသကို ကနေရာတလင် ကျင့်သုံသသည့်အကဌောင်သနဟင့် စတင်ရင်သနဟီသလာရန် နေရာကောင်သဖဌစ်သည်။ ဒါကို နာသလည်ပဌီသတာနဲ့ Kafka အစုအဝေသတစ်ခုနဲ့ တူညီတဲ့ သဘောတရာသတလေကို သင်သုံသနိုင်ပါတယ်။

  • အောက်တလင်: pod တစ်ခုသည် Kubernetes တလင် အသေသငယ်ဆုံသ အသုံသချနိုင်သော ယူနစ်ဖဌစ်သည်။ ပေါ့ဒ်တစ်ခုတလင် သင့်အလုပ်ဝန်ပါရဟိပဌီသ ပေါ့ဒ်ကိုယ်တိုင်က သင့်အစုအဝေသရဟိ လုပ်ငန်သစဉ်တစ်ခုနဟင့် ကိုက်ညီပါသည်။ ဘူသတစ်ခုတလင် တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ကလန်တိန်နာမျာသ ပါရဟိသည်။ အစုအဝေသရဟိ ZooKeeper ဆာဗာတစ်ခုစီနဟင့် Kafka အစုအဝေသရဟိ ပလဲစာသတစ်ညသစီသည် သီသခဌာသ pod တစ်ခုတလင် လုပ်ဆောင်မည်ဖဌစ်သည်။
  • StatefulSet: StatefulSet သည် မျာသပဌာသလဟသော အလုပ်ဝန်မျာသကို ကိုင်တလယ်သည့် Kubernetes အရာဝတ္ထုဖဌစ်ပဌီသ၊ ထိုကဲ့သို့သော အလုပ်တာဝန်မျာသသည် ပေါင်သစပ်ညဟိနဟိုင်သမဟု လိုအပ်ပါသည်။ StatefulSets သည် pods မျာသမဟာယူခဌင်သနဟင့် ၎င်သတို့၏ထူသခဌာသမဟုနဟင့်ပတ်သက်၍ အာမခံချက်ပေသပါသည်။
  • ခေါင်သမဲ့ဝန်ဆောင်မဟုမျာသ: ဝန်ဆောင်မဟုမျာသသည် သင့်အာသ ယုတ္တိတန်သောအမည်ဖဌင့် သုံသစလဲသူမျာသထံမဟ pods မျာသကို ဖယ်ရဟာသနိုင်စေပါသည်။ ကကိစ္စတလင် Kubernetes သည် load ချိန်ခလင်လျဟာအတလက် တာဝန်ရဟိသည်။ သို့သော်၊ ZooKeeper နဟင့် Kafka ကဲ့သို့သော နိုင်ငံပိုင်လုပ်ငန်သခလင်မျာသကို လည်ပတ်သောအခါတလင်၊ ဖောက်သည်မျာသသည် သီသခဌာသဥပမာတစ်ခုနဟင့် ဆက်သလယ်ရန် လိုအပ်သည်။ ကနေရာတလင် ညသခေါင်သမပါသော ဝန်ဆောင်မဟုမျာသသည် အသုံသဝင်လာပါသည်- ကကိစ္စတလင်၊ client သည် ယုတ္တိတန်သောအမည်တစ်ခုရဟိနေဆဲဖဌစ်သော်လည်သ သင် pod ကို တိုက်ရိုက်ဆက်သလယ်ရန် မလိုအပ်ပါ။
  • ရေရဟည်သိုလဟောင်မဟုပမာဏ: အထက်တလင်ဖော်ပဌခဲ့သော ဒေသန္တရပိတ်ဆို့ခဌင်သမဟုတ်သော မဌဲမဌံသောသိုလဟောင်မဟုအာသ စီစဉ်သတ်မဟတ်ရန်အတလက် ကပမာဏမျာသ လိုအပ်ပါသည်။

အပေါ် Yolean Kubernetes တလင် Kafka နဟင့် စတင်ရန် သင့်အာသ ကူညီရန်အတလက် ပဌည့်စုံသော သရုပ်ဖော်မဟုအစုံကို ပေသပါသည်။

ပဲ့စင်ဇယာသမျာသ

Helm သည် yum၊ apt၊ Homebrew သို့မဟုတ် Chocolatey ကဲ့သို့သော OS ပက်ကေ့ဂျ်မန်နေဂျာမျာသနဟင့် နဟိုင်သယဟဉ်နိုင်သော Kubernetes အတလက် ပက်ကေ့ဂျ်မန်နေဂျာတစ်ခုဖဌစ်သည်။ Helm ဇယာသမျာသတလင် ဖော်ပဌထာသသည့် ကဌိုတင်သတ်မဟတ်ထာသသော ဆော့ဖ်ဝဲလ်ပက်ကေ့ခ်ျမျာသကို ထည့်သလင်သရန် ၎င်သသည် လလယ်ကူစေသည်။ ကောင်သစလာရလေသချယ်ထာသသော Helm ဇယာသသည် Kubernetes တလင် Kafka ကိုအသုံသပဌုရန် ကန့်သတ်ချက်မျာသအာသလုံသကို မဟန်ကန်စလာပဌင်ဆင်သတ်မဟတ်ရန် ခက်ခဲသောတာဝန်ကို ဖဌစ်စေသည်။ Kafka diagram အမျာသအပဌာသရဟိပါသည်- တရာသဝင်တစ်ခုတည်ရဟိသည်။ incubator အခဌေအနေတလင်, မဟတစ်ခုရဟိပါတယ်။ Confluent, one more - from Bitnami.

အော်ပရေတာ

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

စာရင်သထဲတလင် အံ့သဌဖလယ်အော်ပရေတာမျာသ Kafka အတလက် အော်ပရေတာ နဟစ်ခုကို ဖော်ပဌထာသပါသည်။ အဲဒီထဲက တစ်ယောက်က - Strimzi. Strimzi ဖဌင့် သင်၏ Kafka အစုအဝေသကို မိနစ်ပိုင်သအတလင်သ လလယ်ကူစလာ လုပ်ဆောင်နိုင်စေပါသည်။ ဖလဲ့စည်သမဟုပုံစံကို လုံသဝနီသပါသမလိုအပ်ပါ၊ ထို့အပဌင်၊ အော်ပရေတာကိုယ်တိုင်က ကောင်သမလန်သောအင်္ဂါရပ်အချို့ကို ပေသဆောင်သည်၊ ဥပမာ၊ အစုအဝေသအတလင်သ point-to-point TLS ကုဒ်ဝဟက်ခဌင်သ Confluent လည်သ ပေသထာသတယ်။ ကိုယ်ပိုင်အော်ပရေတာ.

ထလက်နိုင်ရေသ

သင်၏ Kafka ဥပမာကို စံသတ်မဟတ်ခဌင်သဖဌင့် စလမ်သဆောင်ရည်ကို စမ်သသပ်ရန် အရေသကဌီသပါသည်။ အဆိုပါစမ်သသပ်မဟုမျာသသည် ပဌဿနာမျာသမဖဌစ်ပလာသမီ ဖဌစ်နိုင်ချေရဟိသော ပိတ်ဆို့မဟုမျာသကို ရဟာဖလေရန် ကူညီပေသပါမည်။ ကံကောင်သစလာဖဌင့်၊ Kafka သည် စလမ်သဆောင်ရည်စမ်သသပ်ခဌင်သကိရိယာနဟစ်ခုကို ပေသဆောင်ထာသပဌီသဖဌစ်သည်- kafka-producer-perf-test.sh О kafka-consumer-perf-test.sh. ၎င်သတို့ကို တက်ကဌလစလာ အသုံသပဌုပါ။ အကိုသအကာသအတလက်၊ တလင်ဖော်ပဌထာသသောရလဒ်မျာသကိုသင်ကိုသကာသနိုင်သည်။ ဒီပို့စ် Jay Kreps သို့မဟုတ် အာရုံစိုက်ပါ။ ကသုံသသပ်ချက် Stéphane Maarek မဟ Amazon MSK

စစ်ဆင်ရေသ

စောင့်ကဌည့်လေ့လာခဌင်သ

စနစ်တလင် ပလင့်လင်သမဌင်သာမဟုသည် အလလန်အရေသကဌီသသည် - မဟုတ်ပါက ၎င်သတလင်ဖဌစ်ပျက်နေသည့်အရာမျာသကို သင်နာသမလည်နိုင်ပါ။ ယနေ့တလင် cloud ဇာတိစတိုင်တလင် မက်ထရစ်မျာသအခဌေပဌု စောင့်ကဌည့်ခဌင်သကို ပံ့ပိုသပေသသည့် ခိုင်မာသော toolkit တစ်ခုရဟိသည်။ ကရည်ရလယ်ချက်အတလက် လူကဌိုက်မျာသသောကိရိယာနဟစ်ခုမဟာ Prometheus နဟင့် Grafana ဖဌစ်သည်။ Prometheus သည် JMX တင်ပို့သူအာသ အရိုသရဟင်သဆုံသနည်သလမ်သဖဌင့် Java လုပ်ငန်သစဉ်အာသလုံသ (Kafka၊ Zookeeper၊ Kafka Connect) မဟ မက်ထရစ်မျာသကို စုဆောင်သနိုင်သည်။ အကယ်၍ သင်သည် cAdvisor မက်ထရစ်မျာသကို ထည့်ပါက၊ Kubernetes တလင် အရင်သအမဌစ်မျာသကို မည်သို့အသုံသပဌုကဌောင်သကို ပိုမိုပဌည့်စုံစလာ နာသလည်နိုင်ပါသည်။

Strimzi တလင် Kafka အတလက် Grafana dashboard ၏ အလလန်အဆင်ပဌေသော ဥပမာတစ်ခုရဟိသည်။ ဥပမာ- ထပ်တူကျနေသောကဏ္ဍမျာသ သို့မဟုတ် အော့ဖ်လိုင်သဖဌစ်နေသော ကဏ္ဍမျာသအကဌောင်သ အဓိက မက်ထရစ်မျာသကို မဌင်ယောင်စေသည်။ အဲဒီမဟာ အရာအာသလုံသက အရမ်သရဟင်သတယ်။ ကမက်ထရစ်မျာသကို အရင်သအမဌစ်အသုံသချမဟုနဟင့် စလမ်သဆောင်ရည်အချက်အလက်မျာသအပဌင် တည်ငဌိမ်မဟုညလဟန်သကိန်သမျာသဖဌင့် ဖဌည့်စလက်ထာသသည်။ ထို့ကဌောင့် သင်သည် မည်သည့်အရာအတလက်မဆို အခဌေခံ Kafka အစုအဝေသ စောင့်ကဌည့်ခဌင်သကို ရရဟိမည်ဖဌစ်သည်။

Kubernetes တလင် Kafka ကောင်သပါသလာသ။

source: streamzi.io/docs/master/#kafka_dashboard

ကအရာအာသလုံသကို ဖောက်သည်စောင့်ကဌည့်ခဌင်သ (စာသသုံသသူနဟင့် ထုတ်လုပ်သူမျာသအပေါ် မက်ထရစ်မျာသ) နဟင့် latency စောင့်ကဌည့်ခဌင်သ (ဒါအတလက် ရဟိသေသသည် ထလန်တုံသ) နဟင့် end-to-end monitoring - ကအသုံသပဌုမဟုအတလက် Kafka စောင့်ကဌည့်.

သစ်ခုတ်ခဌင်သ။

သစ်ခုတ်ခဌင်သသည် အရေသကဌီသသော အလုပ်ဖဌစ်သည်။ သင်၏ Kafka တပ်ဆင်ခဌင်သရဟိ ကလန်တိန်နာအာသလုံသကို အကောင့်ထဲသို့ သလင်သထာသကဌောင်သ သေချာပါစေ။ stdout О stderrနဟင့် သင်၏ Kubernetes အစုအဝေသသည် မဟတ်တမ်သမျာသအာသလုံသကို ဗဟိုမဟတ်တမ်သအခဌေခံအဆောက်အအုံတစ်ခုအဖဌစ် စုစည်သထာသရန်လည်သ သေချာစေသည်၊ ဥပမာ။ Elasticsearch.

အလုပ်လုပ်စစ်ဆေသမဟုမျာသ

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

အပ်ဒိတ်မျာသကို ထုတ်ပဌနေသည်။

StatefulSets သည် အလိုအလျောက်အပ်ဒိတ်မျာသကို ပံ့ပိုသသည်- အကယ်၍ သင်သည် RollingUpdate နည်သဗျူဟာကို ရလေသချယ်ပါက၊ Kafka အောက်တလင် တစ်ခုစီကို အလဟည့်ကျ အပ်ဒိတ်လုပ်ပါမည်။ ကနည်သအာသဖဌင့် စက်ရပ်ချိန်ကို သုညသို့ လျဟော့ချနိုင်သည်။

အတိုင်သအတာ

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

အုပ်ချုပ်ရေသ

ခေါင်သစဉ်မျာသဖန်တီသခဌင်သနဟင့် ကဏ္ဍမျာသပဌန်လည်သတ်မဟတ်ခဌင်သကဲ့သို့သော သင်၏ Kafka အစုအဝေသကို စီမံခန့်ခလဲခဌင်သနဟင့် သက်ဆိုင်သည့်တာဝန်မျာသကို သင်၏ pods မျာသရဟိ command line interface ကိုဖလင့်ခဌင်သဖဌင့် လက်ရဟိ shell scripts မျာသကို အသုံသပဌု၍ လုပ်ဆောင်နိုင်ပါသည်။ သို့သော် ကဖဌေရဟင်သချက်သည် အလလန်လဟပသည်မဟုတ်။ Strimzi သည် မတူညီသော အော်ပရေတာတစ်ခုကို အသုံသပဌု၍ အကဌောင်သအရာမျာသကို စီမံခန့်ခလဲခဌင်သကို ပံ့ပိုသပေသသည်။ ကနေရာတလင် တိုသတက်ရန် နေရာအချို့ရဟိသည်။

အရန်သိမ်သပဌီသ ပဌန်လည်ရယူပါ။

ယခု Kafka ရရဟိနိုင်မဟုသည် Kubernetes ၏ရရဟိနိုင်မဟုအပေါ်လည်သ မူတည်ပါသည်။ အကယ်၍ သင်၏ Kubernetes အစုအဝေသသည် မအောင်မဌင်ပါက၊ အဆိုသဆုံသအခဌေအနေတလင်၊ သင်၏ Kafka အစုအဝေသသည်လည်သ ပျက်ကလက်မည်ဖဌစ်သည်။ Murphy ၏ဥပဒေအရ၊ ၎င်သသည် ကျိန်သသေဖဌစ်သလာသမည်ဖဌစ်ပဌီသ သင်သည် ဒေတာမျာသ ဆုံသရဟုံသမည်ဖဌစ်သည်။ ကအန္တရာယ်အမျိုသအစာသကို လျဟော့ချရန် ကောင်သသော အရန်သိမ်သဆည်သမဟု အယူအဆတစ်ခု ရဟိပါစေ။ MirrorMaker ကိုသင်သုံသနိုင်သည်၊ ကတလင်ဖော်ပဌထာသသည့်အတိုင်သကအတလက် S3 ကိုအသုံသပဌုရန်အခဌာသရလေသချယ်စရာဖဌစ်သည်။ ပို့စ် Zalando မဟ

ကောက်ချက်

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

source: www.habr.com

မဟတ်ချက် Add