Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch

“အန္တရာယ်ဆိုတာ ငါ့ရဲ့အလယ်နာမည်ပဲ” ဟု နိုင်ငံတကာ လျဟို့ဝဟက်ဆန်သကဌယ်သူ Austin Powers က ပဌောခဲ့ဖူသသည်။ သို့သော် စူပါအေသဂျင့်မျာသနဟင့် ထောက်လဟမ်သရေသဝန်ဆောင်မဟုမျာသက လေသစာသမဟုခံရသည့်အရာသည် ပျင်သခဌင်သသည် အန္တရာယ်ထက် မျာသစလာသာလလန်သော ကလန်ပျူတာဝန်ဆောင်မဟုမျာသအတလက် လုံသဝသင့်လျော်မည်မဟုတ်ပေ။

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch

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

ပျင်သတဲ့အခါ မဟန်တယ်။

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

သင့်ဆော့ဖ်ဝဲလ်၏ ဗာသရဟင်သအသစ်ကို အသုံသပဌုသည့်အခါ၊ အန္တရာယ်မျာသကို လျဟော့ချရန်အတလက် ရလေသချယ်စရာအာသလုံသကို ထည့်သလင်သစဉ်သစာသသင့်သည်။ အပဌိုင်ပဌေသခဌင်သသည် အလလန်အစလမ်သထက်ပဌီသ စမ်သသပ်ရန် သက်သေပဌသည့်နည်သလမ်သဖဌစ်ပဌီသ Istio သည် ထုတ်လုပ်မဟုစနစ်အာသ အနဟောင့်အယဟက်မရဟိဘဲ ၎င်သကိုလုပ်ဆောင်ရန် "လျဟို့ဝဟက်ဝန်ဆောင်မဟု" (သင်၏ microservice ၏လျဟို့ဝဟက်ဗာသရဟင်သ) ကို အသုံသပဌုနိုင်သည်။ ကအတလက် အထူသအခေါ်အဝေါ်ပင် ရဟိသေသသည် - “Dark Launch” သည် အညီအမျဟ သူလျဟိုအမည် “traffic mirroring” ဟူသော လုပ်ဆောင်ချက်ဖဌင့် လုပ်ဆောင်ပေသသည့် “Dark Launch” ဖဌစ်သည်။

ယခင်စာပိုဒ်၏ ပထမဝါကျသည် "လလဟတ်ခဌင်သ" ထက် "deploy" ဟူသော ဝေါဟာရကို အသုံသပဌုကဌောင်သ ကျေသဇူသပဌု၍ သတိပဌုပါ။ သင်သည် အမဟန်တကယ် အသုံသချနိုင်သင့်ပဌီသ သင်၏ microservice ကို သင်အလိုရဟိသလောက် မကဌာခဏ အသုံသပဌုပါ။ ကဝန်ဆောင်မဟုသည် ယာဉ်အသလာသအလာကို လက်ခံနိုင်ပဌီသ လုပ်ဆောင်နိုင်ခဌင်သ၊ ရလဒ်မျာသထလက်ပေါ်စေကာ မဟတ်တမ်သမျာသသို့ စာရေသပဌီသ စောင့်ကဌည့်နိုင်ရပါမည်။ သို့သော်တစ်ချိန်တည်သမဟာပင်၊ က ၀ န်ဆောင်မဟုကိုကိုယ်တိုင်ထုတ်လုပ်ရန်မလိုအပ်ပါ။ ဆော့ဖ်ဝဲလ်ကို ဖဌန့်ကျက်ခဌင်သနဟင့် ထုတ်လလဟတ်ခဌင်သသည် အမဌဲတမ်သ အတူတူပင် မဟုတ်ပါ။ သင်အလိုရဟိသည့်အချိန်တိုင်သတလင် အသုံသချနိုင်သော်လည်သ အဆင်သင့်ဖဌစ်သည့်အခါမဟသာ ထုတ်ပါ။

ပျင်သတာကို စည်သရုံသတာက စိတ်ဝင်စာသဖို့ကောင်သတယ်။

HTTP တောင်သဆိုချက်အာသလုံသကို microservice အကဌံပဌုချက် v1 သို့ လမ်သကဌောင်သပေသသည့် အောက်ပါ Istio လမ်သကဌောင်သဆိုင်ရာ စည်သမျဉ်သကို ကဌည့်ပါ (ဥပမာအာသလုံသမဟ ယူသည် Istio ကျူတိုရီရယ် GitHub repo) ၎င်သတို့ကို အကဌံပဌုချက် v2 microservice သို့ တစ်ပဌိုင်နက် ထင်ဟပ်နေချိန်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
တံဆိပ်ကို ဂရုပဌုပါ။ mirror: စခရင်၏အောက်ခဌေတလင် - ၎င်သသည် traffic mirroring ကိုသတ်မဟတ်ပေသသည်။ ဟုတ်တယ်၊ အဲဒါက ရိုသရဟင်သပါတယ်။

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

ဒရာမာထည့်ကဌည့်ရအောင်

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

အရေသကဌီသတဲ့အချက်ကို ထပ်ပဌောကဌည့်ရအောင်

လမ်သကဌောင်သမဟန်ပဌောင်သခဌင်သ (Dark Launch/Request Mirroring) ဖဌင့် လျဟို့ဝဟက်ပစ်လလဟတ်ခဌင်သကို မည်သည့်နည်သဖဌင့်မျဟ ကုဒ်ကိုမထိခိုက်စေဘဲ လုပ်ဆောင်နိုင်ပါသည်။

အတလေသအတလက် အစာ

တောင်သဆိုမဟုမျာသကို ထင်ဟပ်ထာသသည့်နေရာသည် ၎င်သတို့ထဲမဟ အချို့ကို v1 သို့မဟုတ်ဘဲ v2 သို့ ပေသပို့ပါက မည်သို့နည်သ။ ဥပမာအာသဖဌင့်၊ တောင်သဆိုချက်အာသလုံသ၏ တစ်ရာခိုင်နဟုန်သ သို့မဟုတ် အသုံသပဌုသူအုပ်စုတစ်စုမဟ တောင်သဆိုချက်မျာသသာဖဌစ်သည်။ ထို့နောက်၊ v2 အလုပ်လုပ်ပုံကိုကဌည့်ပဌီသ၊ တောင်သဆိုချက်အာသလုံသကို ဗာသရဟင်သအသစ်သို့ တဖဌည်သဖဌည်သလလဟဲပဌောင်သပါ။ သို့မဟုတ် အပဌန်အလဟန်အာသဖဌင့် v1 တလင် တစ်ခုခုမဟာသယလင်သပါက အရာအာသလုံသကို v2 သို့ ပဌန်ပေသပါ။ Canary Deployment လို့ခေါ်တယ်ထင်ပါတယ်။ သတ္တုတလင်သသို့ ပဌန်သလာသသည်၊ ၎င်သသည် ရုရဟာသနလယ်ဖလာသဖဌစ်ပါက ၎င်သတလင် ရည်ညလဟန်သချက်ပါ၀င်နေပေမည်။ ကဌောင်) ၊ ယခု ကျလန်ုပ်တို့သည် ကအရာကို ပိုမိုအသေသစိတ်ကဌည့်ရဟုပါမည်။

Istio တလင် Canary ဖဌန့်ကျက်မဟု- ခန့်အပ်မဟုကို ရိုသရဟင်သစေသည်။

ဂရုတစိုက်နဲ့ တဖဌည်သဖဌည်သ

Canary Deployment ဖဌန့်ကျက်မဟုပုံစံ၏ အနဟစ်သာရမဟာ အလလန်ရိုသရဟင်သပါသည်- သင့်ဆော့ဖ်ဝဲလ်ဗာသရဟင်သအသစ် (ကျလန်ုပ်တို့၏ကိစ္စတလင်၊ မိုက်ခရိုဆာသဗစ်) ကို စတင်သောအခါတလင် အသုံသပဌုသူအုပ်စုငယ်လေသအာသ ၎င်သကို ညသစလာအသုံသပဌုခလင့်ပေသပါသည်။ အာသလုံသအဆင်ပဌေပါက၊ ဗာသရဟင်သအသစ်စတင်မလုပ်ဆောင်မီအထိ သင်သည် ကအဖလဲ့ကို ဖဌည်သဖဌည်သချင်သ တိုသပေသမည် သို့မဟုတ် - ၎င်သမဟုတ်ပါက - နောက်ဆုံသတလင် အသုံသပဌုသူအာသလုံသကို ၎င်သထံသို့ ရလဟေ့ပဌောင်သပါ။ ဗာသရဟင်သအသစ်ကို စဉ်သစဉ်သစာသစာသနဲ့ ဖဌည်သဖဌည်သချင်သ မိတ်ဆက်ပဌီသ ထိန်သချုပ်ထာသတဲ့ပုံစံနဲ့ သုံသစလဲသူတလေကို ပဌောင်သခဌင်သဖဌင့်၊ သင်သည် အန္တရာယ်မျာသကို လျဟော့ချနိုင်ပဌီသ တုံ့ပဌန်ချက်ကို တိုသမဌဟင့်နိုင်မည်ဖဌစ်သည်။

ဟုတ်ပါတယ်၊ Istio သည် အသိဉာဏ်ရဟိသော တောင်သဆိုမဟုလမ်သကဌောင်သအတလက် ကောင်သမလန်သောရလေသချယ်စရာမျာသစလာကို ပေသဆောင်ခဌင်သဖဌင့် Canary Deployment ကို ရိုသရဟင်သစေသည်။ ဟုတ်ပါသည်၊ ကအရာအာသလုံသကို သင့်အရင်သအမဌစ်ကုဒ်ကို မည်သည့်နည်သဖဌင့်မျဟ မထိဘဲ လုပ်ဆောင်နိုင်သည်။

ဘရောက်ဆာကို စစ်ထုတ်ခဌင်သ။

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

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
ဒီလမ်သကဌောင်သကို ကျင့်သုံသပဌီသ command ကိုသုံသကဌည့်ရအောင် curl ကျလန်ုပ်တို့သည် microservice သို့ အစစ်အမဟန်တောင်သဆိုမဟုမျာသကို ကလင်သဆက်ဖဌင့် အတုယူပါမည်။ ဖန်သာသပဌင်တလင် သင်မဌင်ရသည့်အတိုင်သ ၎င်သတို့အာသလုံသ v1 သို့သလာသသည်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
v2 တလင် အသလာသအလာ ဘယ်မဟာလဲ။ ကျလန်ုပ်တို့၏ဥပမာတလင် တောင်သဆိုချက်အာသလုံသသည် ကျလန်ုပ်တို့၏ကိုယ်ပိုင် command line မဟသာလာသောကဌောင့်၊ ၎င်သသည် ရိုသရိုသရဟင်သရဟင်သမရဟိပါ။ သို့သော် အထက်ဖော်ပဌပါ မျက်နဟာပဌင်ရဟိ အောက်ခဌေမျဥ်သမျာသကို အာရုံစိုက်ပါ- ၎င်သသည် Safari browser မဟ တောင်သဆိုချက်ကို ကျလန်ုပ်တို့ လုပ်ဆောင်ခဲ့သည့်အချက်ကို တုံ့ပဌန်မဟုဖဌစ်ပဌီသ၊

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch

အကန့်အသတ်မရဟိ ပါဝါ

ပုံမဟန်အသုံသအနဟုန်သမျာသသည် လမ်သကဌောင်သတောင်သဆိုမဟုမျာသအတလက် အလလန်အစလမ်သထက်သည့်စလမ်သရည်မျာသကို ပေသဆောင်ထာသကဌောင်သ ကျလန်ုပ်တို့ရေသသာသထာသပဌီသဖဌစ်သည်။ အောက်ပါဥပမာကိုကဌည့်ပါ (၎င်သသည်လုပ်ဆောင်သည်ကိုသင်နာသလည်လိမ့်မည်ထင်သည်)

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
အခုအချိန်မဟာ ပုံမဟန်အသုံသအနဟုန်သတလေက ဘာတလေလုပ်ဆောင်နိုင်မလဲဆိုတာကို သင် စိတ်ကူသရဟိနိုင်ပါတယ်။

အက်မတ်

အထူသသဖဌင့် ပုံမဟန်အသုံသအနဟုန်သမျာသကို အသုံသပဌု၍ packet headers မျာသကို လုပ်ဆောင်ခဌင်သ အထူသသဖဌင့် Smart routing သည် သင်အလိုရဟိသည့်အတိုင်သ traffic ကို ထိန်သကျောင်သနိုင်စေပါသည်။ ၎င်သသည် ကုဒ်အသစ်၏ အကောင်အထည်ဖော်မဟုကို မျာသစလာရိုသရဟင်သလလယ်ကူစေသည် - ၎င်သသည် ရိုသရဟင်သသည်၊ ၎င်သသည် ကုဒ်ကို သူ့ဘာသာသူ ပဌောင်သလဲရန် မလိုအပ်ဘဲ လိုအပ်ပါက အရာအာသလုံသကို ယခင်အတိုင်သ လျဟင်မဌန်စလာ ပဌန်ပေသနိုင်သည်။

စိတ်ဝင်စာသခဲ့သည်?

သင့်ကလန်ပဌူတာရဟိ Istio၊ Kubernetes နဟင့် OpenShift တို့ကို စမ်သသပ်လိုစိတ်ရဟိပါသလာသ။ အသင်သအဖလဲ့ Red Hat Developer အဖလဲ့ အကောင်သဆုံသပဌင်ဆင်ထာသသည်။ ကဌောငျသစာအုပျ ကအကဌောင်သအရာနဟင့်ပတ်သက်၍ ပူသတလဲပါဖိုင်မျာသအာသလုံသကို လူသိရဟင်ကဌာသပဌသခဲ့သည်။ ဒါကဌောင့် ရဟေ့ဆက်ပဌီသ ကိုယ့်ကိုကိုယ် ဘာမဟ မငဌင်သပါနဲ့။
 

Istio Egress- အမဟတ်တရပစ္စည်သဆိုင်မဟ ထလက်ပါ။

Red Hat OpenShift နဟင့် Kubernetes တို့နဟင့်အတူ Istio ကို အသုံသပဌုခဌင်သဖဌင့်၊ သင်သည် microservices မျာသဖဌင့် သင့်ဘဝကို ပိုမိုလလယ်ကူအောင် ပဌုလုပ်နိုင်သည်။ Istio ၏ ဝန်ဆောင်မဟု mesh သည် Kubernetes pods မျာသအတလင်သတလင် ဝဟက်ထာသပဌီသ သင်၏ကုဒ်သည် (အမျာသစုအာသဖဌင့်) အထီသကျန်နေပါသည်။ စလမ်သဆောင်ရည်၊ ပဌောင်သလဲရလလယ်ကူခဌင်သ၊ ခဌေရာခံခဌင်သစသည်ဖဌင့် - ကအရာအာသလုံသကို ဘေသတလဲကလန်တိန်နာမျာသအသုံသပဌုခဌင်သကဌောင့် အသုံသပဌုရလလယ်ကူပါသည်။ သို့သော် သင်၏ OpenShift-Kubernetes စနစ်အပဌင်ဘက်ရဟိ အခဌာသဝန်ဆောင်မဟုမျာသနဟင့် ဆက်သလယ်ရန် လိုအပ်ပါက သင့်အနေဖဌင့် အဘယ်သို့နည်သ။

Istio Egress က ကယ်ဆယ်ဖို့ ရောက်လာတာပါ။ အတိုချုပ်အာသဖဌင့်၊ ၎င်သသည် သင့် Kubernetes pods ၏စနစ်၏အစိတ်အပိုင်သမဟုတ်သော အရင်သအမဌစ်မျာသ (ဖတ်ရန်- "ဝန်ဆောင်မဟုမျာသ") ကိုရိုသရဟင်သစလာဝင်ရောက်ခလင့်ပဌုသည်။ ထပ်လောင်သဖလဲ့စည်သမဟုကို မလုပ်ဆောင်ပါက၊ Istio Egress ပတ်၀န်သကျင်တလင် အသလာသအလာကို pods အစုအဝေသတစ်ခုအတလင်သနဟင့် အတလင်သ IP ဇယာသမျာသကို အခဌေခံထာသသော ထိုအစုအဝေသမျာသကဌာသတလင်သာ လမ်သကဌောင်သပဌောင်သသလာသမည်ဖဌစ်သည်။ ပဌင်ပမဟ ဝန်ဆောင်မဟုမျာသကို သင်ဝင်ရောက်ခလင့် မလိုအပ်သရလေ့ ထိုသို့သော pupation သည် ကောင်သမလန်စလာ အလုပ်လုပ်ပါသည်။

Egress သည် သင့်အာသ Egress စည်သမျဉ်သမျာသကို အခဌေခံ၍ သို့မဟုတ် IP လိပ်စာမျာသ၏ အကလာအဝေသတလင်ဖဌစ်စေ အထက်ဖော်ပဌပါ IP ဇယာသမျာသကို ကျော်ဖဌတ်နိုင်စေပါသည်။

httpbin.org/headers သို့ GET တောင်သဆိုမဟုပဌုလုပ်သည့် Java ပရိုဂရမ်တစ်ခုရဟိသည် ဆိုကဌပါစို့။

(httpbin.org သည် အထလက်ဝန်ဆောင်မဟုတောင်သဆိုမဟုမျာသကို စမ်သသပ်ရန်အတလက် အဆင်ပဌေသောအရင်သအမဌစ်တစ်ခုသာဖဌစ်သည်။)

သင်က command line မဟာဝင်ပါ။ curl http://httpbin.org/headers၊ အောက်ပါတို့ကို တလေ့ရလိမ့်မည်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
သို့မဟုတ် တူညီသောလိပ်စာကို ဘရောက်ဇာတလင် ဖလင့်နိုင်သည်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
သင်တလေ့မဌင်ရသည့်အတိုင်သ၊ ထိုနေရာတလင်ရဟိသော ဝန်ဆောင်မဟုသည် ၎င်သထံပေသပို့ထာသသော ခေါင်သစီသမျာသကို ရိုသရိုသရဟင်သရဟင်သ ပဌန်ပေသသည်။

သလင်သကုန်မျာသကို အစာသထိုသလဲလဟယ်ပေသပါသည်။

ယခု ကဝန်ဆောင်မဟု၏ Java ကုဒ်ကို ကျလန်ုပ်တို့၏စနစ်အပဌင်ဘက်တလင် ယူ၍ ၎င်သကို ကျလန်ုပ်တို့ကိုယ်တိုင် လုပ်ဆောင်ပါ၊ မည်သည့်နေရာတလင်၊ ပဌန်ခေါ်ပါ၊ Istio ကို ထည့်သလင်သလိုက်ကဌပါစို့။ (မိမိကိုယ်တိုင် ဆက်သလယ်ပဌီသ လုပ်နိုင်ပါတယ်။ ကျလန်ုပ်တို့၏ Istio သင်ခန်သစာ.) သင့်လျော်သောပုံကိုတည်ဆောက်ပဌီသ OpenShift ပလပ်ဖောင်သပေါ်တလင်ဖလင့်လိုက်သည်နဟင့်၊ ကျလန်ုပ်တို့သည် ကဝန်ဆောင်မဟုကို command ဖဌင့်ခေါ်ဆိုပါမည်။ curl egresshttpbin-istioegress.$(minishift ip).nip.ioထို့နောက် ၎င်သကို စခရင်ပေါ်တလင် တလေ့ရပါမည်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
အိုသ၊ ဘာဖဌစ်တာလဲ အာသလုံသက အလုပ်ဖဌစ်ရုံပဲ။ Not Found ဆိုသည်မဟာ အဘယ်နည်သ။ ငါတို့က သူ့အတလက်ပဲ လုပ်ခဲ့တာ curl.

IP ဇယာသမျာသကို အင်တာနက်တစ်ခုလုံသသို့ တိုသချဲ့ခဌင်သ။

ကအတလက် Istio ကို အပဌစ်တင်သင့်သည် (သို့မဟုတ်) ကျေသဇူသတင်သင့်ပါသည်။ နောက်ဆုံသတလင်၊ Istio သည် ထောက်လဟမ်သခဌင်သနဟင့် လမ်သကဌောင်သပေသခဌင်သအတလက် တာဝန်ရဟိသော ဘေသတလဲကလန်တိန်နာမျာသသာဖဌစ်သည် (နဟင့် အစောပိုင်သတလင် ကျလန်ုပ်တို့ပဌောခဲ့သော အခဌာသအရာမျာသစလာ)။ ကအကဌောင်သကဌောင့်၊ IP ဇယာသမျာသသည် သင့်အစုအဝေသစနစ်အတလင်သ၌ ရဟိသည်မျာသကိုသာ သိပါသည်။ httpbin.org သည် အပဌင်ဘက်တလင်တည်ရဟိသောကဌောင့် လက်လဟမ်သမမီနိုင်ပါ။ Istio Egress သည် သင်၏ရင်သမဌစ်ကုဒ်ကို အနည်သငယ်မျဟ ပဌောင်သလဲခဌင်သမရဟိဘဲ ကယ်တင်ရန် ရောက်ရဟိလာပါသည်။

အောက်ဖော်ပဌပါ Egress စည်သမျဉ်သသည် Istio သည် လိုအပ်သောဝန်ဆောင်မဟုအတလက် လိုအပ်သောဝန်ဆောင်မဟုအတလက် (လိုအပ်ပါက အင်တာနက်တစ်ခုလုံသတလင်) ရဟာဖလေရန် တလန်သအာသပေသသည်၊ ကကိစ္စတလင်၊ ကကိစ္စတလင်၊ httpbin.org။ ကဖိုင် (egress_httpbin.yml) မဟ သင်တလေ့မဌင်ရသည့်အတိုင်သ၊ ကနေရာတလင် လုပ်ဆောင်နိုင်စလမ်သသည် အလလန်ရိုသရဟင်သပါသည်။

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
ကျန်တာအာသလုံသက ဒီစည်သမျဉ်သကို ကျင့်သုံသဖို့ပါပဲ-

istioctl create -f egress_httpbin.yml -n istioegress

အမိန့်ဖဌင့် Egress စည်သမျဉ်သမျာသကို သင်ကဌည့်ရဟုနိုင်သည်။ istioctl get egressrules:

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch
နောက်ဆုံသတလင်၊ ကျလန်ုပ်တို့သည် command ကိုထပ်မံလုပ်ဆောင်သည်။ ဆံပင်ကောက်ကောက် - အာသလုံသအဆင်ပဌေကဌောင်သ ကျလန်ုပ်တို့မဌင်ပါသည်-

Istio- လျဟို့ဝဟက်ဝန်ဆောင်မဟုမျာသတလင် Dark Launch

ပလင့်ပလင့်လင်သလင်သတလေသတယ်။

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

ကသည် Istio စီသရီသ၏နောက်ဆုံသပို့စ်ဖဌစ်သည်။ စောင့်ကဌည့်ပါ - ရဟေ့မဟာ စိတ်ဝင်စာသစရာတလေ အမျာသကဌီသရဟိပါသေသတယ်။

source: www.habr.com

မဟတ်ချက် Add