कल, मैंने "एज़्योर कंटेनर ऐप्स पर जावा एज़्योर फ़ंक्शन को तैनात करना" शीर्षक से एक लेख लिखा था।
उस प्रविष्टि में, मैंने Azure की एकीकृत प्रबंधन क्षमताओं का उपयोग करने का उल्लेख किया है और मैं स्पष्ट करना चाहता हूं कि इसका क्या अर्थ है और यह इस लेख में पिछले तरीकों से कैसे भिन्न है।
एज़्योर कंटेनर ऐप्स एज़्योर के कंटेनर निष्पादन वातावरणों में से एक है, जो आपको किसी भी कंटेनरीकृत सेवा को चलाने की अनुमति देता है। पहले, यदि आप Azure कंटेनर ऐप्स में Azure फ़ंक्शंस चलाना चाहते थे, तो आप निम्न कमांड का उपयोग करके एक इंस्टेंस बनाते थे:
az containerapp create \ --name general-container-app \ --resource-group $RESOURCE_GROUP_NAME \ --environment $CONTAINER_ENVIRONMENT \ --registry-server $CONTAINER_REGISTRY_SERVER \ --image $CONTAINER_REGISTRY_SERVER/$C_IMAGE_NAME:$C_IMAGE_TAG \ --target-port 80 \ --ingress external \ --query properties.configuration.ingress.fqdn
कमांड निष्पादित करने के बाद, आपको इस तरह एक संदेश दिखाई देगा:
Container app created. Access your app at https://general-container-app.niceocean-********.eastus.azurecontainerapps.io/
तब आप अपनी Azure फ़ंक्शंस सेवा से कनेक्ट करने के लिए कर्ल कमांड का उपयोग कर सकते हैं:
curl https://general-container-app.niceocean-********.eastus.azurecontainerapps.io/api/httpexample?name=World
एज़्योर कंटेनर ऐप्स एनवायरनमेंट तक पहुंचने पर, आप देखेंगे कि सामान्य-कंटेनर-ऐप एक कंटेनर ऐप के रूप में बनाया गया है, और यह प्रबंधन इंटरफ़ेस किसी भी तैनात कंटेनरीकृत एप्लिकेशन के लिए उपलब्ध है।
https://raw.githubusercontent.com/yoshioterada/Azure-Functions-Deploy-To-Azure-Container-Apps/main/images/ACA-Instance-for-Azure-Functions.png
नई विधि आपको एज़ कंटेनरएप क्रिएट के बजाय एज़ फ़ंक्शनएप क्रिएट कमांड का उपयोग करके एज़्योर कंटेनर ऐप्स में एज़्योर फ़ंक्शंस बनाने की अनुमति देती है।
az functionapp create \ --name $AZURE_FUNCTION_NAME \ --resource-group $RESOURCE_GROUP_NAME \ --environment $CONTAINER_ENVIRONMENT \ --storage-account $STORAGE_NAME \ --workload-profile-name "Consumption" \ --max-replicas 15 \ --min-replicas 1 \ --functions-version 4 \ --runtime java \ --image $CONTAINER_REGISTRY_SERVER/$C_IMAGE_NAME:$C_IMAGE_TAG \ --assign-identity
इस कमांड के साथ, आपका Azure फ़ंक्शंस Azure कंटेनर ऐप्स में बनाया जाएगा, और प्रबंधन इंटरफ़ेस स्पष्ट रूप से दिखाएगा कि यह एक फ़ंक्शन ऐप है।
इसका मतलब है कि Azure फ़ंक्शंस को अब एक समर्पित Azure फ़ंक्शंस प्रबंधन इंटरफ़ेस के माध्यम से प्रबंधित किया जा सकता है, जो इसे अन्य कंटेनर एप्लिकेशन से अलग बनाता है।
हालाँकि, Azure ऐप सेवा में प्रदान की गई प्रबंधन सुविधाओं और कंटेनर ऐप्स पर Azure फ़ंक्शंस के लिए उपलब्ध प्रबंधन सुविधाओं के बीच कुछ अंतर हैं। उदाहरण के लिए, डायग्नोस्टिक टूल, परिनियोजन सुविधाएँ और अन्य जैसी कुछ कार्यक्षमताएँ उपलब्ध नहीं हो सकती हैं।
तुलना के लिए, यहां Azure ऐप सेवा पर तैनात Azure फ़ंक्शंस के लिए प्रबंधन इंटरफ़ेस है।
ऐप सेवा और Azure कंटेनर ऐप्स के बीच प्रबंधन क्षमताओं में अंतर में ये शामिल हो सकते हैं:
- Diagnose and solve problems - Microsoft Defender for Cloud - Events (preview) - Log stream - Deployment - App Service plan - Development Tools - Monitoring - Support troubleshooting
कुछ लोग सोच सकते हैं कि कुछ सुविधाओं की कमी से कार्यक्षमता की कमी का पता चलता है।
हालाँकि, जब Azure कंटेनर ऐप्स पर तैनात किया जाता है, तो ऑपरेटिंग वातावरण कंटेनर-आधारित होता है, जो तैनाती और प्रबंधन के तरीकों को बदल देता है। Azure फ़ंक्शंस प्रबंधन इंटरफ़ेस में शामिल नहीं की गई सुविधाओं को Azure कंटेनर ऐप्स इंटरफ़ेस के माध्यम से अलग से प्रबंधित करने की आवश्यकता होगी।
एज़्योर कंटेनर ऐप्स पर एज़्योर फ़ंक्शंस इंस्टेंस बनाने के लिए az functionapp create कमांड का उपयोग करते समय, एक नया संसाधन समूह स्वचालित रूप से बनाया जाता है जिसमें कंटेनर इंस्टेंस होता है।
मेरे परिवेश में, संसाधन समूह का नाम इस परंपरा का अनुसरण करता है:
$CONTAINER_ENVIRONMENT_FunctionApps_$UUID
आप देखेंगे कि आपके निर्दिष्ट $AZURE_FUNCTION_NAME के नाम पर एक Azure कंटेनर ऐप्स इंस्टेंस तैयार हो गया है।
जब आप इस इंस्टेंस पर क्लिक करते हैं, तो आपको Azure कंटेनर ऐप्स के लिए विशिष्ट प्रबंधन इंटरफ़ेस पर निर्देशित किया जाएगा, जहां Azure फ़ंक्शंस कंटेनर इंस्टेंस के रूप में चलते हैं।
Azure कंटेनर ऐप्स Azure ऐप सेवा की तुलना में भिन्न CI/CD और परिनियोजन विधियाँ प्रदान करता है। यह कंटेनर स्तर पर दी जाने वाली सुविधाओं जैसे डैपर और सर्विस कनेक्टर की भी अनुमति देता है, जिनका उपयोग किया जा सकता है।
पहले, Azure फ़ंक्शंस को कंटेनर निष्पादन वातावरण में कंटेनरीकृत करके चलाना संभव था, लेकिन Azure फ़ंक्शंस के लिए कोई समर्पित प्रबंधन इंटरफ़ेस नहीं था।
इस नई विधि के साथ, Azure फ़ंक्शंस और Azure कंटेनर ऐप्स एकीकृत हो गए हैं, जो संबद्ध Azure फ़ंक्शंस प्रबंधन इंटरफ़ेस के साथ एक कंटेनर वातावरण की पेशकश करते हैं।
मुझे पता है कि कुछ ग्राहक Azure Kubernetes Service (AKS) पर Azure फ़ंक्शंस कंटेनर संचालित करते हैं। पहले, उनके पास एक समर्पित प्रबंधन इंटरफ़ेस का अभाव था। हालाँकि, Azure कंटेनर ऐप्स पर तैनाती करके, वे अब AKS पर परिचालन प्रबंधन की तुलना में Azure कंटेनर ऐप्स को प्रबंधित करने की सरलता का आनंद लेते हुए Azure फ़ंक्शंस प्रबंधन का उपयोग कर सकते हैं।
एज़्योर कंटेनर ऐप्स पर एज़्योर फ़ंक्शंस को तैनात करने की विधियां और विकसित होने की संभावना है। मैं यह देखने के लिए उत्सुक हूं कि यह कैसे विकसित होता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3