"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > مقارنة طريقتين لنشر وظائف Azure على تطبيقات Azure Container

مقارنة طريقتين لنشر وظائف Azure على تطبيقات Azure Container

تم النشر بتاريخ 2024-11-07
تصفح:772

بالأمس، كتبت مقالًا بعنوان "نشر وظيفة Java Azure على تطبيقات Azure Container Apps."

في هذا الإدخال، ذكرت استخدام إمكانات الإدارة المتكاملة لـ Azure وأريد توضيح معنى ذلك وكيف يختلف عن الطرق السابقة في هذه المقالة.

الطريقة القديمة: الإنشاء باستخدام az Containerapp create

تعد Azure Container Apps إحدى بيئات تنفيذ الحاويات في Azure، مما يسمح لك بتشغيل أي خدمة داخل حاوية. في السابق، إذا كنت تريد تشغيل Azure Functions في Azure Container Apps، فيمكنك إنشاء مثيل باستخدام الأمر التالي:

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 Functions:

curl https://general-container-app.niceocean-********.eastus.azurecontainerapps.io/api/httpexample?name=World

عند الوصول إلى بيئة تطبيقات Azure Container، سترى أنه تم إنشاء تطبيق الحاوية العامة كتطبيق حاوية، وتتوفر واجهة الإدارة هذه لأي تطبيق منشور في حاوية.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

https://raw.githubusercontent.com/yoshioterada/Azure-Functions-Deploy-To-Azure-Container-Apps/main/images/ACA-Instance-for-Azure-Functions.png

طريقة جديدة: إنشاء باستخدام az functionapp create

تتيح لك الطريقة الجديدة إنشاء وظائف Azure في تطبيقات Azure Container باستخدام أمر إنشاء az functionapp بدلاً من إنشاء az Containerapp.

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 Container Apps، وستظهر واجهة الإدارة بوضوح أنه تطبيق وظيفي.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

وهذا يعني أنه يمكن الآن إدارة وظائف Azure من خلال واجهة إدارة Azure Functions المخصصة، مما يجعلها مختلفة عن تطبيقات الحاويات الأخرى.

ومع ذلك، هناك بعض الاختلافات بين ميزات الإدارة المتوفرة في خدمة تطبيقات Azure وتلك المتوفرة لوظائف Azure في تطبيقات الحاوية. على سبيل المثال، قد لا تتوفر وظائف معينة مثل أدوات التشخيص وميزات النشر وغيرها.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

المرجع: وظائف Azure في خدمة التطبيقات (المدخل)

للمقارنة، إليك واجهة الإدارة لوظائف Azure المنشورة على خدمة تطبيقات Azure.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

يمكن أن تتضمن الاختلافات في إمكانات الإدارة بين خدمة التطبيقات وتطبيقات Azure Container ما يلي:

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

  • يلتقط:
- Diagnose and solve problems
- Microsoft Defender for Cloud
- Events (preview)
- Log stream
- Deployment
- App Service plan
- Development Tools
- Monitoring
- Support   troubleshooting

قد يعتقد البعض أن عدم وجود ميزات معينة يشير إلى فقدان الوظائف.

ومع ذلك، عند النشر إلى Azure Container Apps، فإن بيئة التشغيل تعتمد على الحاوية، مما يؤدي إلى تغيير أساليب النشر والإدارة. ستحتاج الميزات غير المضمنة في واجهة إدارة Azure Functions إلى إدارتها بشكل منفصل من خلال واجهة Azure Container Apps.

إدارة الحاويات في تطبيقات Azure Container

عند استخدام أمر إنشاء az functionapp لإنشاء مثيل Azure Functions على تطبيقات Azure Container Apps، يتم إنشاء مجموعة موارد جديدة تلقائيًا تحتوي على مثيل الحاوية.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

في بيئتي، يتبع اسم مجموعة الموارد هذه الاتفاقية:

$CONTAINER_ENVIRONMENT_FunctionApps_$UUID

سترى أنه تم إنشاء مثيل Azure Container Apps الذي تم تسميته باسم $AZURE_FUNCTION_NAME المحدد.

عند النقر على هذا المثيل، سيتم توجيهك إلى واجهة إدارة خاصة بتطبيقات Azure Container Apps، حيث تعمل وظائف Azure كمثيلات حاوية.

Comparison of Two Methods for Deploying Azure Functions to Azure Container Apps

توفر تطبيقات Azure Container Apps طرق نشر وCI/CD مختلفة عن خدمة Azure App. كما يسمح أيضًا بالميزات المقدمة على مستوى الحاوية، مثل Dapr وService Connector، والتي يمكن الاستفادة منها.

خاتمة

في السابق، كان من الممكن تشغيل وظائف Azure عن طريق وضعها في حاويات في بيئة تنفيذ الحاوية، ولكن لم تكن هناك واجهة إدارة مخصصة لوظائف Azure.

بفضل هذه الطريقة الجديدة، تم دمج Azure Functions وتطبيقات Azure Container Apps، مما يوفر بيئة حاوية مع واجهة إدارة Azure Functions المرتبطة.

أعلم أن بعض العملاء يقومون بتشغيل Azure Functions Container على خدمة Azure Kubernetes (AKS). في السابق، كانوا يفتقرون إلى واجهة إدارة مخصصة. ومع ذلك، من خلال النشر إلى Azure Container Apps، يمكنهم الآن استخدام إدارة Azure Functions مع الاستمتاع ببساطة إدارة Azure Container Apps مقارنة بإدارة العمليات على AKS.

من المرجح أن تتطور طرق نشر وظائف Azure إلى تطبيقات Azure Container Apps بشكل أكبر. وإنني أتطلع إلى رؤية كيف يتطور هذا.

بيان الافراج يتم استنساخ هذه المقالة على: https://dev.to/azure/comparison-of-two-methods-for-deploying-azure-functions-to-azure-container-apps-2o7o؟1 إذا كان هناك أي انتهاك ، يرجى الاتصال [email protected] لحذفه.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3