सिस्को लोगो

CISCO IOS XR होस्टिंग अनुप्रयोग

CISCO IOS XR होस्टिंग अनुप्रयोग

IOS XR पर एप्लीकेशन होस्ट करना
यह अनुभाग विभिन्न प्रकार के अनुप्रयोग होस्टिंग के बारे में बताता है, तथा यह प्रदर्शित करता है कि कैसे एक सरल अनुप्रयोग को IOS XR पर मूल रूप से या किसी तृतीय-पक्ष कंटेनर में होस्ट किया जा सकता है।

  • डॉकर कंटेनरों का उपयोग करके अनुप्रयोग होस्टिंग.
  • डॉकर-आधारित कंटेनर अनुप्रयोग होस्टिंग.

डॉकर कंटेनरों का उपयोग करके एप्लिकेशन होस्टिंग
IOS XR पर एप्लिकेशन होस्टिंग डॉकर कंटेनर का समर्थन करता है। आप डॉकर का उपयोग करके IOS XR पर अपना कंटेनर बना सकते हैं, और कंटेनर के भीतर एप्लिकेशन होस्ट कर सकते हैं। एप्लिकेशन को किसी भी Linux वितरण का उपयोग करके विकसित किया जा सकता है। यह उन एप्लिकेशन के लिए उपयुक्त है जो सिस्टम लाइब्रेरी का उपयोग करते हैं जो IOS XR रूट द्वारा प्रदान की गई लाइब्रेरी से अलग हैं file सिस्टम. सिस्को एनसीएस 540 केवल डॉकर-आधारित एप्लिकेशन होस्टिंग का समर्थन करता है।

डॉकर-आधारित कंटेनर एप्लिकेशन होस्टिंग
यह खंड कंटेनर एप्लिकेशन होस्टिंग की अवधारणा का परिचय देता है और इसके वर्कफ़्लो का वर्णन करता है। कंटेनर एप्लिकेशन होस्टिंग अनुप्रयोगों को सिस्को आईओएस एक्सआर पर लिनक्स कंटेनर के भीतर अपने स्वयं के वातावरण और प्रक्रिया स्थान (नेमस्पेस) में होस्ट करना संभव बनाता है। एप्लिकेशन डेवलपर के पास एप्लिकेशन डेवलपमेंट वातावरण पर पूरा नियंत्रण होता है, और वह अपनी पसंद का लिनक्स वितरण इस्तेमाल कर सकता है। एप्लिकेशन आईओएस एक्सआर कंट्रोल प्लेन प्रक्रियाओं से अलग होते हैं; फिर भी, वे एक्सआर गिगई इंटरफेस के माध्यम से एक्सआर के बाहर नेटवर्क से जुड़ सकते हैं। एप्लिकेशन आसानी से स्थानीय तक भी पहुँच सकते हैं file आईओएस एक्सआर पर सिस्टम।

सिस्को आईओएस एक्सआर पर एप्लीकेशन होस्टिंग के लिए डॉकर का उपयोग करना
Docker एक कंटेनर है जिसका उपयोग Cisco IOS XR पर एप्लिकेशन होस्ट करने के लिए किया जाता है। Docker Linux नेटवर्क नेमस्पेस का उपयोग करके XR पर अंतर्निहित होस्ट प्रक्रियाओं से एप्लिकेशन प्रक्रियाओं के लिए अलगाव प्रदान करता है।

सिस्को आईओएस एक्सआर पर डॉकर की आवश्यकता
वर्चुअलाइजेशन स्पेस में अनुप्रयोगों के लिए Docker उद्योग-पसंदीदा पैकेजिंग मॉडल बन रहा है। Docker अनुप्रयोग जीवन चक्र प्रबंधन को स्वचालित करने के लिए आधार प्रदान करता है। Docker एक स्तरित दृष्टिकोण का पालन करता है जिसमें नीचे एक आधार छवि होती है जो शीर्ष पर अनुप्रयोगों की परतों का समर्थन करती है। आधार छवियां सार्वजनिक रूप से एक रिपॉजिटरी में उपलब्ध हैं, जो इस बात पर निर्भर करती है कि आप शीर्ष पर किस प्रकार का अनुप्रयोग स्थापित करना चाहते हैं। आप docker इंडेक्स और रजिस्ट्री का उपयोग करके docker छवियों में हेरफेर कर सकते हैं। Docker कंटेनर अनुप्रयोगों को विकसित करने के लिए git-जैसा वर्कफ़्लो प्रदान करता है और "पतली अद्यतन" तंत्र का समर्थन करता है, जहाँ केवल स्रोत कोड में अंतर अपडेट किया जाता है, जिससे तेज़ अपग्रेड होता है। Docker "पतली डाउनलोड" तंत्र भी प्रदान करता है, जहाँ कई docker कंटेनरों के बीच सामान्य आधार docker परतों के साझाकरण के कारण नए अनुप्रयोग तेज़ी से डाउनलोड होते हैं। कई docker कंटेनरों के बीच docker परतों के साझाकरण से XR पर docker कंटेनरों के लिए कम फ़ुटप्रिंट होता है।

सिस्को आईओएस एक्सआर पर डॉकर आर्किटेक्चर
निम्नलिखित चित्र IOS XR पर डॉकर आर्किटेक्चर को दर्शाता है।

CISCO IOS XR होस्टिंग अनुप्रयोग 1

होस्ट किए जाने वाले अनुप्रयोगों के लिए अनुप्रयोग बाइनरी को डॉकर कंटेनर के अंदर स्थापित किया जाता है।

डॉकर कंटेनरों में एप्लीकेशन होस्ट करना
निम्नलिखित चित्र IOS XR पर Docker कंटेनरों में अनुप्रयोगों की मेजबानी के लिए कार्यप्रवाह को दर्शाता है।
CISCO IOS XR होस्टिंग अनुप्रयोग 2

  1. डॉकर file स्रोत रिपॉजिटरी में एप्लिकेशन बाइनरी बनाने के लिए उपयोग किया जाता है file आपके (डॉकर इंजन बिल्ड) होस्ट मशीन पर.
  2. अनुप्रयोग बाइनरी file को डॉकर छवि रजिस्ट्री में धकेल दिया जाता है।
  3. अनुप्रयोग बाइनरी file डॉकर छवि रजिस्ट्री से खींचा जाता है और एक्सआर (डॉकर इंजन लक्ष्य होस्ट) पर डॉकर कंटेनर में कॉपी किया जाता है।
  4. यह एप्लीकेशन XR पर डॉकर कंटेनर में बनाया और होस्ट किया गया है।

डॉकर कंटेनरों में एप्लिकेशन अपडेट करना
निम्नलिखित चित्र डॉकर कंटेनरों में होस्ट किए गए अनुप्रयोगों को अद्यतन करने के लिए कार्यप्रवाह को दर्शाता है।CISCO IOS XR होस्टिंग अनुप्रयोग 3

  1. अनुप्रयोग अद्यतन एक आधार libs अद्यतन के रूप में उत्पन्न होता है file (डेल्टा अपडेट file) और डॉकर इमेज रजिस्ट्री में धकेल दिया गया।
  2. डेल्टा अद्यतन file (जिसमें केवल अनुप्रयोग कोड का अंतर होता है) को डॉकर छवि रजिस्ट्री से खींचा जाता है और XR (डॉकर इंजन लक्ष्य होस्ट) पर डॉकर कंटेनरों में कॉपी किया जाता है।
  3. डेल्टा अपडेट के साथ डॉकर कंटेनर पुनः प्रारंभ हो जाते हैं file.

एप्लीकेशन मैनेजर का उपयोग करके TPA की होस्टिंग

तालिका 1: फ़ीचर इतिहास तालिका

विशेषता नाम रिलीज सूचना विशेषता विवरण
ऑन-डिमांड डॉकर डेमन सेवा रिलीज़ 7.5.1 इस रिलीज के बाद से,

डॉकर डेमॉन सेवा राउटर पर तभी शुरू होती है जब आप किसी तृतीय-पक्ष होस्टिंग एप्लिकेशन को कॉन्फ़िगर करते हैं ऐपएमजीआर इस तरह की ऑन-डिमांड सेवा ऑपरेटिंग सिस्टम संसाधनों जैसे सीपीयू, मेमोरी और पावर को अनुकूलित करती है।

पहले के संस्करणों में, डॉकर डेमॉन सेवा राउटर बूट अप के दौरान स्वचालित रूप से शुरू हो जाती थी।

पिछले रिलीज़ में, एप्लिकेशन को Docker कमांड द्वारा होस्ट और नियंत्रित किया जाता था। इन Docker कमांड को कर्नेल के बैश शेल में निष्पादित किया गया था जो Cisco IOS XR सॉफ़्टवेयर को भी होस्ट करता था। एप्लिकेशन मैनेजर की शुरुआत के साथ, अब Cisco IOS XR CLI के माध्यम से थर्ड-पार्टी एप्लिकेशन होस्टिंग और उनके कामकाज को प्रबंधित करना संभव है। इस सुविधा के साथ, राउटर रीलोड या RP स्विचओवर के बाद सभी सक्रिय थर्ड पार्टी एप्लिकेशन स्वचालित रूप से पुनरारंभ हो सकते हैं। एप्लिकेशन का यह स्वचालित पुनरारंभ होस्ट किए गए एप्लिकेशन के निर्बाध कामकाज को सुनिश्चित करता है।

एप्लिकेशन मैनेजर पर समर्थित कमांड
निष्पादित किए गए प्रत्येक एप्लिकेशन मैनेजर कमांड या कॉन्फ़िगरेशन के लिए, एप्लिकेशन मैनेजर Docker सॉकेट के माध्यम से Docker डेमॉन के साथ इंटरफेस करके अनुरोधित कार्रवाई करता है। निम्न तालिका में Docker कंटेनर कार्यक्षमताएँ, पिछले रिलीज़ में उपयोग किए गए जेनेरिक Docker कमांड और इसके समकक्ष एप्लिकेशन मैनेजर कमांड सूचीबद्ध हैं जिनका अब उपयोग किया जा सकता है:

कार्यक्षमता सामान्य Docker कमांड आवेदन प्रबंधक आदेश
RPM एप्लीकेशन इंस्टॉल करें NA राउटर#appmgr पैकेज इंस्टॉल rpm

छवि_नाम-0.1.0-XR_7.3.1.x86_64.rpm

एप्लिकेशन को कॉन्फ़िगर और सक्रिय करें • छवि लोड करें – [xr-vm_node0_RP0_CPU0:~]$docker load -i /tmp/छवि_नाम.टार

• राउटर पर छवि सत्यापित करें –

xr-vm_node0_RP0_CPU0:~]$docker छवियाँ ls

• छवि पर कंटेनर बनाएं –

[xr-vm_node0_RP0_CPU0:~]$docker क्रिएट छवि_नाम
राउटर#कॉन्फ़िगरेशन

राउटर(config)#appmgr राउटर(config-appmgr)#application

ऐप_नाम

राउटर(config-application)#activate प्रकार docker स्रोत छवि_नाम docker-run-opts “–net=host” docker-run-cmd “iperf3 -s -d”

  • कंटेनर प्रारंभ करें – [xr-vm_node0_RP0_CPU0:~]$docker start मेरा_कंटेनर_आईडी राउटर(config-application)#commit
View आवेदन की सूची, आंकड़े, लॉग और विवरण

CONTAINER

• छवियों की सूची बनाएं

-[xr-vm_node0_RP0_CPU0:~]$docker छवियाँ ls

• कंटेनरों की सूची बनाएं –

[xr-vm_node0_RP0_CPU0:~]$docker पीएस

• सांख्यिकी

-[xr-vm_node0_RP0_CPU0:~]$docker आँकड़े

राउटर#शो ऐपएमजीआर सोर्स-टेबल

राउटर#शो ऐपएमजीआर एप्लीकेशन का नाम ऐप_नाम जानकारी सारांश

राउटर#शो ऐपएमजीआर एप्लीकेशन का नाम ऐप_नाम जानकारी विवरण

राउटर#शो ऐपएमजीआर एप्लीकेशन का नाम ऐप_नाम आँकड़े

  • लॉग्स

-[xr-vm_node0_RP0_CPU0:~]$docker लॉग

राउटर#शो ऐपएमजीआर एप्लीकेशन-टेबल

राउटर#शो ऐपएमजीआर एप्लीकेशन का नाम ऐप_नाम लॉग

कार्यक्षमता सामान्य Docker कमांड आवेदन प्रबंधक आदेश
एक नया चलाएँ • निष्पादित करें – [xr-vm_node0_RP0_CPU0:~]$docker exec -it मेरा_कंटेनर_आईडी राउटर#appmgr एप्लीकेशन एक्जीक्यूटिव
आज्ञा

अंदर एक

नाम ऐप_नाम डॉकर-exec-cmd
दौड़ना  
CONTAINER  
अनुप्रयोग कंटेनर बंद करें • कंटेनर रोकें – [xr-vm_node0_RP0_CPU0:~]$docker stop मेरा_कंटेनर_आईडी राउटर#appmgr एप्लीकेशन स्टॉप नाम ऐप_नाम
एप्लिकेशन कंटेनर को समाप्त करें • कंटेनर को मारें – [xr-vm_node0_RP0_CPU0:~]$docker kill मेरा_कंटेनर_आईडी राउटर#appmgr एप्लीकेशन किल नाम ऐप_नाम
अनुप्रयोग कंटेनर प्रारंभ करें • कंटेनर प्रारंभ करें – [xr-vm_node0_RP0_CPU0:~]$docker start मेरा_कंटेनर_आईडी राउटर#appmgr एप्लिकेशन आरंभ नाम ऐप_नाम
एप्लिकेशन को निष्क्रिय करें • कंटेनर रोकें – [xr-vm_node0_RP0_CPU0:~]$docker stop मेरा_कंटेनर_आईडी राउटर#कॉन्फ़िगर

राउटर(config)#no appmgr एप्लीकेशन ऐप_नाम

  • कंटेनर निकालें – [xr-vm_node0_RP0_CPU0:~]$docker rm मेरा_कंटेनर_आईडी राउटर(config)#commit
  • छवि हटाएँ – [xr-vm_node0_RP0_CPU0:~]$docker rmi छवि_नाम  
एप्लिकेशन छवि/RPM को अनइंस्टॉल करें • छवि अनइंस्टॉल करें – [xr-vm_node0_RP0_CPU0:~]$docker app uninstall छवि_नाम राउटर#appmgr पैकेज अनइंस्टॉल पैकेज

छवि_नाम-0.1.0-XR_7.3.1.x86_64

टिप्पणीएप्लिकेशन मैनेजर कमांड के उपयोग को “एप्लिकेशन मैनेजर का उपयोग करके नेटवर्क प्रदर्शन की निगरानी करने के लिए डॉकर कंटेनरों में iPerf होस्ट करना” अनुभाग में समझाया गया है।

एकाधिक VRFs के साथ Docker को कॉन्फ़िगर करना

यह अनुभाग बताता है कि आप Cisco IOS XR पर एकाधिक VRFs के साथ Docker को कैसे कॉन्फ़िगर कर सकते हैं। एकाधिक VRFs कॉन्फ़िगर करने की जानकारी के लिए, एप्लिकेशन होस्टिंग के लिए एकाधिक VRFs कॉन्फ़िगर करना विषय देखें।

विन्यास
XR पर मल्टी-VRF Docker बनाने और तैनात करने के लिए निम्नलिखित चरणों का उपयोग करें।

  1. NET_ADMIN और SYS_ADMIN विशेषाधिकारों के साथ एक बहु-VRF Docker बनाएँ।
    निम्नलिखित उदाहरण मेंampले, तीन वीआरएफ (पीला, नीला और हरा) युक्त एक डॉकर कंटेनर लॉन्च किया गया है।ample मानता है कि एक पिछली “multivrfimage” डॉकर छवि appmgr पैकेज इंस्टॉल कमांड का उपयोग करके स्थापित की गई थी।CISCO IOS XR होस्टिंग अनुप्रयोग 4
    टिप्पणी: 
    • /var/run/netns की संपूर्ण सामग्री को होस्ट से Docker में माउंट करना अनुशंसित नहीं है, क्योंकि यह XR और सिस्टम एडमिन प्लेन के अनुरूप netns की सामग्री को Docker में माउंट करता है।
    • जब आप किसी Docker में इस्तेमाल किए जा रहे हों, तो आपको Cisco IOS XR से VRF को नहीं हटाना चाहिए। अगर XR से एक या उससे ज़्यादा VRF हटा दिए जाते हैं, तो मल्टी-VRF Docker लॉन्च नहीं किया जा सकता
  2. सत्यापित करें कि क्या मल्टी-वीआरएफ डॉकर सफलतापूर्वक लोड हो गया है।CISCO IOS XR होस्टिंग अनुप्रयोग 5
  3. निम्नलिखित कमांड निष्पादित करके मल्टी-वीआरएफ डॉकर कंटेनर से कनेक्ट करें।
    राउटर# appmgr एप्लीकेशन एग्जीक्यूटिव नाम multivrfcontainer1 docker-exec-cmd /bin/bash/
    डिफ़ॉल्ट रूप से, Docker को Cisco IOS XR पर global-vrf नामस्थान में लोड किया जाता है।
  4. सत्यापित करें कि क्या एकाधिक VRFs Docker से सुलभ हैं।CISCO IOS XR होस्टिंग अनुप्रयोग 7
    CISCO IOS XR होस्टिंग अनुप्रयोग 8

आपने Cisco IOS XR पर मल्टी-VRF Docker सफलतापूर्वक लॉन्च किया है।

दस्तावेज़ / संसाधन

CISCO IOS XR होस्टिंग अनुप्रयोग [पीडीएफ] उपयोगकर्ता पुस्तिका
आईओएस एक्सआर होस्टिंग अनुप्रयोग, आईओएस एक्सआर, होस्टिंग अनुप्रयोग, अनुप्रयोग

संदर्भ

एक टिप्पणी छोड़ें

आपकी ईमेल आईडी प्रकाशित नहीं की जाएगी। आवश्यक फ़ील्ड चिह्नित हैं *