cisco လိုဂို

CISCO IOS XR Hosting အပလီကေးရှင်းများ

CISCO IOS XR Hosting အပလီကေးရှင်းများ

IOS XR တွင် အပလီကေးရှင်းများကို လက်ခံဆောင်ရွက်ပေးခြင်း။
ဤကဏ္ဍတွင် မတူညီသော application hosting အမျိုးအစားများကို ရှင်းပြထားပြီး ရိုးရိုးအပလီကေးရှင်းကို မူရင်းအတိုင်း သို့မဟုတ် IOS XR တွင် ပြင်ပကုမ္ပဏီ ကွန်တိန်နာတစ်ခုတွင် မည်သို့လက်ခံနိုင်သည်ကို သရုပ်ပြသည်။

  • Docker ကွန်တိန်နာများကို အသုံးပြု၍ အပလီကေးရှင်း Hosting
  • Docker-Based Container Application Hosting။

Docker ကွန်တိန်နာများကို အသုံးပြု၍ အပလီကေးရှင်း Hosting
IOS XR တွင် အပလီကေးရှင်း hosting သည် docker containers များကို ပံ့ပိုးပေးသည်။ Docker ကို အသုံးပြု၍ IOS XR တွင် သင့်ကိုယ်ပိုင်ကွန်တိန်နာကို ဖန်တီးနိုင်ပြီး ကွန်တိန်နာအတွင်းတွင် လက်ခံဆောင်ရွက်ပေးသည့် အပလီကေးရှင်းများကို ဖန်တီးနိုင်သည်။ အပလီကေးရှင်းများကို မည်သည့် Linux ဖြန့်ဖြူးမှုကိုမဆို အသုံးပြု၍ ဖန်တီးနိုင်သည်။ ၎င်းသည် IOS XR root မှပေးဆောင်သည့်စနစ်နှင့်မတူသော system libraries ကိုအသုံးပြုသည့် application များအတွက်ကောင်းစွာသင့်လျော်သည်။ file စနစ်။ Cisco NCS 540 သည် docker-based application hosting ကိုသာ ပံ့ပိုးပေးသည်။

Docker-Based Container Application Hosting
ဤအပိုင်းသည် container application hosting ၏ သဘောတရားကို မိတ်ဆက်ပြီး ၎င်း၏ အလုပ်အသွားအလာကို ဖော်ပြပါသည်။ ကွန်တိန်နာ အပလီကေးရှင်း hosting သည် Cisco IOS XR ရှိ Linux container အတွင်းရှိ အပလီကေးရှင်းများကို ၎င်းတို့၏ကိုယ်ပိုင်ပတ်ဝန်းကျင်တွင် လက်ခံဆောင်ရွက်ပေးရန်နှင့် လုပ်ငန်းစဉ်နေရာ (namespace) ကို ပြုလုပ်နိုင်စေပါသည်။ အပလီကေးရှင်းဆော့ဖ်ဝဲရေးသားသူသည် အပလီကေးရှင်းဖွံ့ဖြိုးတိုးတက်ရေးပတ်ဝန်းကျင်အပေါ် အပြည့်အဝထိန်းချုပ်ထားပြီး Linux ၏ရွေးချယ်မှုဖြန့်ဝေမှုကို အသုံးပြုနိုင်သည်။ အပလီကေးရှင်းများကို IOS XR ထိန်းချုပ်မှုလေယာဉ်လုပ်ငန်းစဉ်များမှ သီးခြားခွဲထုတ်ထားသည်။ သို့သော်၊ ၎င်းတို့သည် XR GigE အင်တာဖေ့စ်များမှတစ်ဆင့် XR ပြင်ပကွန်ရက်များသို့ ချိတ်ဆက်နိုင်သည်။ အပလီကေးရှင်းများသည်လည်း ပြည်တွင်းသို့ အလွယ်တကူ ဝင်ရောက်နိုင်သည်။ file IOS XR ရှိ စနစ်များ။

Cisco IOS XR တွင် အပလီကေးရှင်းများကို Hosting ပြုလုပ်ရန်အတွက် Docker ကို အသုံးပြုခြင်း။
Docker သည် Cisco IOS XR တွင် အပလီကေးရှင်းများ လက်ခံဆောင်ရွက်ပေးရန် အသုံးပြုသည့် ကွန်တိန်နာတစ်ခုဖြစ်သည်။ Docker သည် Linux network namespaces ကိုအသုံးပြုခြင်းဖြင့် XR ရှိ အရင်းခံ host လုပ်ငန်းစဉ်များမှ အပလီကေးရှင်းလုပ်ငန်းစဉ်များအတွက် သီးခြားခွဲထားပေးပါသည်။

Cisco IOS XR တွင် Docker အတွက် လိုအပ်သည်။
Docker သည် virtualization space အတွင်းရှိ applications များအတွက် စက်မှုလုပ်ငန်း-ဦးစားပေး ထုပ်ပိုးမှုပုံစံဖြစ်လာသည်။ Docker သည် အပလီကေးရှင်းဘဝစက်ဝန်းကို အလိုအလျောက်လုပ်ဆောင်ရန် အခြေခံအုတ်မြစ်ကို ပံ့ပိုးပေးပါသည်။ Docker သည် အပေါ်မှ application များ၏ အလွှာများကို ပံ့ပိုးပေးသည့် အောက်ခြေရှိ အခြေခံရုပ်ပုံပါရှိသော အလွှာလိုက်ချဉ်းကပ်နည်းကို လိုက်နာသည်။ အောက်ခြေတွင် သင်ထည့်သွင်းလိုသော အပလီကေးရှင်းအမျိုးအစားပေါ် မူတည်၍ သိုလှောင်ရုံတွင် အခြေခံပုံများကို လူသိရှင်ကြားရနိုင်သည်။ docker အညွှန်းနှင့် registry ကို အသုံးပြု၍ docker ပုံများကို စီမံနိုင်သည်။ Docker သည် ကွန်တိန်နာအပလီကေးရှင်းများ ဖော်ဆောင်ရန်အတွက် git-like workflow ကို ပံ့ပိုးပေးပြီး အရင်းအမြစ်ကုဒ်၏ ခြားနားချက်ကိုသာ အပ်ဒိတ်လုပ်ကာ ပိုမိုမြန်ဆန်သော အဆင့်မြှင့်တင်မှုများ ပြုလုပ်နိုင်သည့် "ပါးလွှာသောအပ်ဒိတ်" ယန္တရားကို ပံ့ပိုးပေးပါသည်။ Docker သည် docker containers အများအပြားကြားတွင် ဘုံအခြေခံ docker အလွှာများကို မျှဝေခြင်းကြောင့် ပိုမိုမြန်ဆန်သော အပလီကေးရှင်းအသစ်များကို ဒေါင်းလုဒ်လုပ်သည့် "ပါးလွှာသောဒေါင်းလုဒ်" ယန္တရားကိုလည်း ပံ့ပိုးပေးပါသည်။ docker containers အများအပြားကြားရှိ docker အလွှာများကို မျှဝေခြင်းသည် XR ရှိ docker containers အတွက် ခြေရာခံ နည်းပါးစေသည်။

Cisco IOS XR တွင် Docker Architecture
အောက်ပါပုံသည် IOS XR ရှိ docker ဗိသုကာကို သရုပ်ဖော်သည်။

CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁

လက်ခံကျင်းပမည့် အပလီကေးရှင်းများအတွက် အပလီကေးရှင်း binaries များကို docker container အတွင်းတွင် ထည့်သွင်းထားသည်။

Docker ကွန်တိန်နာများတွင် အပလီကေးရှင်းများကို လက်ခံဆောင်ရွက်ပေးခြင်း။
အောက်ပါပုံသည် IOS XR ရှိ Docker ကွန်တိန်နာများတွင် အပလီကေးရှင်းများလက်ခံခြင်းအတွက် အလုပ်အသွားအလာကို သရုပ်ဖော်သည်။
CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁

  1. docker file source repository တွင် application binary ကိုတည်ဆောက်ရန်အသုံးပြုသည်။ file သင်၏ (docker engine build) host machine ပေါ်တွင်။
  2. အပ္ပဒွိ file docker image registry ထဲသို့တွန်းပို့သည်။
  3. အပ္ပဒွိ file docker image registry မှ ဆွဲထုတ်ပြီး XR (docker engine target host) ရှိ docker container သို့ ကူးယူသည်။
  4. အပလီကေးရှင်းကို XR ပေါ်ရှိ docker ကွန်တိန်နာတွင် တည်ဆောက်ပြီး လက်ခံထားသည်။

Docker ကွန်တိန်နာများရှိ အပလီကေးရှင်းများကို အပ်ဒိတ်လုပ်ခြင်း။
အောက်ပါပုံသည် docker containers တွင် လက်ခံထားသော application များကို အပ်ဒိတ်လုပ်ခြင်းအတွက် အလုပ်အသွားအလာကို သရုပ်ဖော်သည်။CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁

  1. အပလီကေးရှင်းအပ်ဒိတ်ကို အခြေခံ libs အပ်ဒိတ်အဖြစ် ထုတ်ပေးသည်။ file (မြစ်ဝကျွန်းပေါ်ဒေသ အပ်ဒိတ် file) နှင့် docker image registry သို့တွန်းပါ။
  2. မြစ်ဝကျွန်းပေါ်ဒေသ မွမ်းမံမှု file (အပလီကေးရှင်းကုဒ်တွင် ကွာခြားချက်သာပါရှိသော) ကို docker image registry မှ ဆွဲထုတ်ပြီး XR (docker engine target host) ရှိ docker containers သို့ ကူးယူပါသည်။
  3. docker containers များကို delta update ဖြင့် ပြန်လည်စတင်ပါသည်။ file.

Application Manager ကို အသုံးပြု၍ TPA ၏ hosting

ဇယား 1- အင်္ဂါရပ်မှတ်တမ်း ဇယား

ထူးခြားချက် နာမည် သတင်းထုတ်ပြန်ချက် ထူးခြားချက် ဖော်ပြချက်
On-Demand Docker Daemon ဝန်ဆောင်မှု 7.5.1 ကို လွှတ်လိုက်ပါ။ ယခုထုတ်ဝေမှုမှစတင်၍ ၊

Docker daemon ဝန်ဆောင်မှုကို သင်အသုံးပြု၍ ပြင်ပမှ hosting အပလီကေးရှင်းကို သတ်မှတ်ချိန်မှသာ router တစ်ခုပေါ်တွင် စတင်သည် appmgr အမိန့်။ ထိုသို့သော လိုအပ်သလောက်ဝန်ဆောင်မှုသည် CPU၊ memory၊ နှင့် power ကဲ့သို့သော operating system အရင်းအမြစ်များကို ပိုကောင်းအောင်လုပ်ပေးသည်။

အစောပိုင်းထွက်ရှိမှုများတွင်၊ Docker daemon ဝန်ဆောင်မှုသည် router စတင်ချိန်တွင် အလိုအလျောက်စတင်ခဲ့သည်။

ယခင်ထုတ်ဝေမှုများတွင်၊ အပလီကေးရှင်းများကို Docker အမိန့်များဖြင့် ထိန်းချုပ်ထားသည်။ ဤ Docker command များကို Cisco IOS XR ဆော့ဖ်ဝဲလ်ကို လက်ခံကျင်းပသည့် Kernel ၏ bash shell တွင် လုပ်ဆောင်ခဲ့သည်။ Application Manager ၏နိဒါန်းနှင့်အတူ၊ ယခု Cisco IOS XR CLIs မှတဆင့် ပြင်ပအပလီကေးရှင်း hosting နှင့် ၎င်းတို့၏ လုပ်ဆောင်ချက်များကို စီမံခန့်ခွဲနိုင်ပါပြီ။ ဤအင်္ဂါရပ်ဖြင့်၊ အသုံးပြုပြီးသော ပြင်ပအပလီကေးရှင်းများအားလုံးသည် Router အား ပြန်လည်စတင်ခြင်း သို့မဟုတ် RP ကူးပြောင်းပြီးနောက် အလိုအလျောက် ပြန်လည်စတင်နိုင်သည်။ ဤအပလီကေးရှင်းများ၏ အလိုအလျောက်ပြန်လည်စတင်ခြင်းသည် လက်ခံထားသည့်အက်ပ်လီကေးရှင်းများ၏ ချောမွေ့စွာလုပ်ဆောင်မှုကို သေချာစေသည်။

Application Manager တွင် ပံ့ပိုးထားသော Commands များ
အပလီကေးရှင်းမန်နေဂျာ ညွှန်ကြားချက် သို့မဟုတ် ဖွဲ့စည်းမှုပုံစံတိုင်းအတွက်၊ အပလီကေးရှင်းမန်နေဂျာသည် Docker daemon နှင့် Docker socket မှတဆင့် တောင်းဆိုထားသောလုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည်။ အောက်ဖော်ပြပါဇယားတွင် Docker ကွန်တိန်နာလုပ်ဆောင်ချက်များ၊ ယခင်ထုတ်ဝေမှုများတွင် အသုံးပြုခဲ့သည့် ယေဘူယျ Docker ညွှန်ကြားချက်များနှင့် ယခုအသုံးပြုနိုင်သည့် ၎င်း၏တူညီသော အပလီကေးရှင်းမန်နေဂျာအမိန့်များကို ဖော်ပြသည်-

လုပ်ဆောင်နိုင်စွမ်း ယေဘူယျ Docker Commands လျှောက်လွှာ မန်နေဂျာ အမိန့်များ
အပလီကေးရှင်း RPM ကို ထည့်သွင်းပါ။ NA Router#appmgr အထုပ်ကို rpm ထည့်သွင်းပါ။

image_name-0.1.0-XR_7.3.1.x86_64.rpm

အပလီကေးရှင်းကို စီစဉ်သတ်မှတ်ပြီး အသက်သွင်းပါ။ • ပုံအား တင်ပါ – [xr-vm_node0_RP0_CPU0:~]$docker load -i /tmp/image_name.tar

• Router ပေါ်ရှိ ပုံအား အတည်ပြုပါ-

xr-vm_node0_RP0_CPU0:~]$docker ပုံများ ls

• ပုံပေါ်တွင် ကွန်တိန်နာ ဖန်တီးပါ-

[xr-vm_node0_RP0_CPU0:~]$docker ဖန်တီးပါ။ image_name
Router#config

Router(config)#appmgr Router(config-appmgr)#application

app_name

Router(config-application)#activate type docker source image_name docker-run-opts “–net=host” docker-run-cmd “iperf3 -s -d”

  • စတင်သည့် ကွန်တိန်နာ – [xr-vm_node0_RP0_CPU0:~]$docker စတင် my_container_id Router(config-application)#commit
View စာရင်း၊ စာရင်းအင်းများ၊ မှတ်တမ်းများနှင့် လျှောက်လွှာ၏အသေးစိတ်အချက်များ

ကွန်တိန်နာ

• ပုံများစာရင်း

-[xr-vm_node0_RP0_CPU0:~]$docker ပုံများ ls

• ကွန်တိန်နာစာရင်း –

[xr-vm_node0_RP0_CPU0:~]$docker ps

• စာရင်းအင်းများ

-[xr-vm_node0_RP0_CPU0:~]$docker ကိန်းဂဏာန်းများ

Router#show appmgr source-table

Router#show appmgr အပလီကေးရှင်းအမည် app_name အချက်အလက်အကျဉ်းချုပ်

Router#show appmgr အပလီကေးရှင်းအမည် app_name အချက်အလက်အသေးစိတ်

Router#show appmgr အပလီကေးရှင်းအမည် app_name ကိန်းဂဏန်းများ

  • မှတ်တမ်းများ

-[xr-vm_node0_RP0_CPU0:~]$docker မှတ်တမ်းများ

Router#show appmgr အပလီကေးရှင်း-ဇယား

Router#show appmgr အပလီကေးရှင်းအမည် app_name သစ်လုံးများ

လုပ်ဆောင်နိုင်စွမ်း ယေဘူယျ Docker Commands လျှောက်လွှာ မန်နေဂျာ အမိန့်များ
အသစ်တစ်ခု Run လိုက်ပါ။ • Execute – [xr-vm_node0_RP0_CPU0:~]$docker exec -it my_container_id Router#appmgr အပလီကေးရှင်း exec
အမိန့်

အထဲမှာ

နာမည် app_name docker-exec-cmd
ပြေး  
ကွန်တိန်နာ  
လျှောက်လွှာကွန်တိန်နာကို ရပ်ပါ။ • Stop container – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id Router#appmgr အပလီကေးရှင်းအမည်ကို ရပ်ပါ။ app_name
လျှောက်လွှာကွန်တိန်နာကိုသတ်ပါ။ • Kill container – [xr-vm_node0_RP0_CPU0:~]$docker kill my_container_id Router#appmgr အပလီကေးရှင်းအမည်ကိုသတ်ပါ။ app_name
လျှောက်လွှာကွန်တိန်နာကို စတင်ပါ။ • စတင်သည့် ကွန်တိန်နာ – [xr-vm_node0_RP0_CPU0:~]$docker စတင် my_container_id Router#appmgr အပလီကေးရှင်း စတင်အမည် app_name
အပလီကေးရှင်းကို ပိတ်ပါ။ • Stop container – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id Router#configure

Router(config)#appmgr အပလီကေးရှင်းမရှိပါ။ app_name

  • ကွန်တိန်နာကို ဖယ်ရှားပါ – [xr-vm_node0_RP0_CPU0:~]$docker rm my_container_id Router(config)#commit
  • ပုံကို ဖယ်ရှားပါ – [xr-vm_node0_RP0_CPU0:~]$docker rmi image_name  
အပလီကေးရှင်းပုံ/RPM ကို ဖြုတ်ပါ။ • ပုံကို ဖြုတ်ပါ – [xr-vm_node0_RP0_CPU0:~]$docker အက်ပ်ကို ဖြုတ်ပါ image_name Router#appmgr ပက်ကေ့ချ် အထုပ်ကို ဖြုတ်ပါ။

image_name-0.1.0-XR_7.3.1.x86_64

မှတ်ချက်− Application Manager ကိုအသုံးပြု၍ ကွန်ရက်စွမ်းဆောင်ရည်ကို စောင့်ကြည့်ရန်အတွက် “Docker Containers တွင် iPerf ကို Hosting iPerf တွင် ထည့်သွင်းဖော်ပြထားသည်

VRF အများအပြားဖြင့် Docker တစ်ခုကို ပြင်ဆင်ခြင်း။

Cisco IOS XR တွင် VRF အများအပြားဖြင့် Docker တစ်ခုကို သင်မည်သို့ configure လုပ်နိုင်ကြောင်း ဤကဏ္ဍတွင် ဖော်ပြထားသည်။ VRF အများအပြားကို ပြင်ဆင်သတ်မှတ်ခြင်းဆိုင်ရာ အချက်အလက်အတွက်၊ Application Hosting ခေါင်းစဉ်အတွက် Multiple VRFs များကို ပြင်ဆင်ခြင်းကို ကြည့်ပါ။

ဖွဲ့စည်းမှု
XR တွင် multi-VRF Docker တစ်ခုကို ဖန်တီးရန်နှင့် အသုံးပြုရန် အောက်ပါအဆင့်များကို အသုံးပြုပါ။

  1. NET_ADMIN နှင့် SYS_ADMIN အထူးအခွင့်အရေးများဖြင့် Multi-VRF Docker တစ်ခုကို ဖန်တီးပါ။
    အောက်ပါ example၊ VRF သုံးခု (အဝါ၊ အပြာနှင့် အစိမ်း) ပါရှိသော Docker ကွန်တိန်နာကို စတင်လိုက်ပြီဖြစ်သည်။ ရည်းစားဟောင်းampappmgr package install command ကိုအသုံးပြုပြီးယခင် "multivrfimage" docker image ကို install လုပ်ခဲ့သည်ဟု ယူဆသည်။CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁
    မှတ်ချက် - 
    • /var/run/netns ၏ အကြောင်းအရာ တစ်ခုလုံးကို host မှ Docker သို့ တပ်ဆင်ခြင်းသည် XR နှင့် သက်ဆိုင်သော netns ၏ အကြောင်းအရာနှင့် စနစ်စီမံခန့်ခွဲသူ လေယာဉ်ကို Docker ထဲသို့ ပေါင်းထည့်သောကြောင့် ဖြစ်သည်။
    • Docker တွင်အသုံးပြုသောအခါ Cisco IOS XR မှ VRF ကို မဖျက်သင့်ပါ။ VRF တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော VRF များကို XR မှ ဖျက်ပါက၊ multi-VRF Docker ကို စတင်နိုင်မည်မဟုတ်ပါ။
  2. Multi-VRF Docker ကို အောင်မြင်စွာ တင်ခြင်း ရှိ၊ မရှိ စစ်ဆေးပါ။CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁
  3. အောက်ပါ command ကိုလုပ်ဆောင်ခြင်းဖြင့် multi-VRF Docker ကွန်တိန်နာသို့ ချိတ်ဆက်ပါ။
    Router# appmgr အပလီကေးရှင်း exec အမည် multivrfcontainer1 docker-exec-cmd /bin/bash/
    ပုံမှန်အားဖြင့်၊ Docker ကို Cisco IOS XR ရှိ global-vrf namespace တွင် တင်ထားသည်။
  4. VRF အများအပြားကို Docker မှ အသုံးပြုခွင့်ရှိမရှိ စစ်ဆေးပါ။CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁
    CISCO IOS XR Hosting အပလီကေးရှင်းများ ၁

သင်သည် Cisco IOS XR တွင် multi-VRF Docker ကို အောင်မြင်စွာ စတင်နိုင်ပါပြီ။

စာရွက်စာတမ်းများ / အရင်းအမြစ်များ

CISCO IOS XR Hosting အပလီကေးရှင်းများ [pdf] အသုံးပြုသူလက်စွဲ
IOS XR Hosting Applications၊ IOS XR၊ Hosting Applications၊ Applications

ကိုးကား

မှတ်ချက်တစ်ခုချန်ထားပါ။

သင့်အီးမေးလ်လိပ်စာကို ထုတ်ပြန်မည်မဟုတ်ပါ။ လိုအပ်သောအကွက်များကို အမှတ်အသားပြုထားသည်။ *