إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يعد نظام مجموعة Kubernetes التي تدعم Azure Arc شرطا أساسيا لنشر عمليات Azure IoT. توضح هذه المقالة كيفية إعداد نظام مجموعة قبل نشر عمليات Azure IoT. تتضمن هذه المقالة إرشادات ل Ubuntu وWindows وAzure Local و Tanzu Kubernetes Grid (TKG).
إذا كنت ترغب في نشر Azure IoT Operations بسرعة وتشغيل نموذج حمل عمل في بيئة اختبار، فراجع التشغيل السريع: تشغيل Azure IoT Operations في GitHub Codespaces باستخدام K3s.
المتطلبات الأساسية
تدعم Microsoft Azure Kubernetes Service (AKS) Edge Essentials للنشر على Windows وK3s للتوزيع على Ubuntu وتوزيع AKS على Azure Local وإصدار Tanzu Kubernetes (TKr) على TKG. إذا كنت ترغب في نشر عمليات Azure IoT إلى حل متعدد العقد، فاستخدم K3s على Ubuntu.
لإعداد مجموعة Kubernetes التي تدعم Azure Arc، تحتاج إلى:
اشتراك Azure مع دور المالك أو مجموعة من أدوار المساهم ومسؤول وصول المستخدم . يمكنك التحقق من مستوى الوصول الخاص بك عن طريق الانتقال إلى اشتراكك، وتحديد التحكم في الوصول (IAM) على الجانب الأيسر من مدخل Microsoft Azure، ثم تحديد عرض وصولي. إذا لم يكن لديك اشتراك Azure، فأنشئ اشتراكاً مجاناً قبل البدء.
مجموعة موارد Azure. يتم دعم مثيل عمليات Azure IoT واحد فقط لكل مجموعة موارد. لإنشاء مجموعة موارد جديدة، استخدم الأمر az group create . للحصول على قائمة بمناطق Azure المدعومة حاليا، راجع المناطق المدعومة.
az group create --location <REGION> --resource-group <RESOURCE_GROUP> --subscription <SUBSCRIPTION_ID>تم تثبيت الإصدار 2.62.0 من Azure CLI أو أحدث على جهاز نظام المجموعة. استخدم
az --versionللتحقق من الإصدار وتحديثهaz upgradeإذا لزم الأمر. لمزيد من المعلومات، راجع كيفية تثبيت Azure CLI.أحدث إصدار من ملحق connectedk8s ل Azure CLI:
az extension add --upgrade --name connectedk8s
الأجهزة التي تفي بمتطلبات النظام:
إذا كنت ستنشر عمليات Azure IoT إلى مجموعة متعددة العقد مع تمكين التسامح مع الخطأ، فراجع متطلبات الأجهزة والتخزين في إعداد Linux لوحدات تخزين Edge.
إنشاء نظام مجموعة وتمكين Arc
يوفر هذا القسم خطوات لإنشاء مجموعات في بيئات تم التحقق من صحتها على Linux وWindows.
لإعداد مجموعة K3s Kubernetes على Ubuntu:
إنشاء مجموعة K3s أحادية العقدة أو متعددة العقد. للحصول على أمثلة، راجع دليل البدء السريع ل K3s أو المشاريع ذات الصلة ب K3s.
تحقق لمعرفة أنه تم تثبيت kubectl كجزء من K3s. إذا لم يكن الأمر كما هو، فاتبع الإرشادات لتثبيت kubectl على Linux.
kubectl version --clientاتبع الإرشادات لتثبيت Helm.
إنشاء ملف yaml لتكوين K3s في
.kube/config:mkdir ~/.kube sudo KUBECONFIG=~/.kube/config:/etc/rancher/k3s/k3s.yaml kubectl config view --flatten > ~/.kube/merged mv ~/.kube/merged ~/.kube/config chmod 0600 ~/.kube/config export KUBECONFIG=~/.kube/config #switch to k3s context kubectl config use-context default sudo chmod 644 /etc/rancher/k3s/k3s.yamlقم بتشغيل الأمر التالي لزيادة حدود مراقبة/مثيل المستخدم.
echo fs.inotify.max_user_instances=8192 | sudo tee -a /etc/sysctl.conf echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf sudo sysctl -pللحصول على أداء أفضل، قم بزيادة حد واصف الملفات:
echo fs.file-max = 100000 | sudo tee -a /etc/sysctl.conf sudo sysctl -p
تمكين نظام المجموعة في Arc
قم بتوصيل مجموعتك ب Azure Arc بحيث يمكن إدارتها عن بعد.
من جهاز لديه
kubectlحق الوصول إلى مجموعتك، سجل الدخول إلى Azure CLI باستخدام حساب مستخدم Microsoft Entra الذي له الدور (الأدوار) المطلوبة لاشتراك Azure:az loginإذا تلقيت رسالة خطأ في أي وقت تفيد بأن جهازك مطلوب لإدارته للوصول إلى موردك، فقم بتشغيله
az loginمرة أخرى وتأكد من تسجيل الدخول بشكل تفاعلي باستخدام مستعرض.بعد تسجيل الدخول، يعرض Azure CLI جميع اشتراكاتك ويشير إلى اشتراكك الافتراضي بعلامة نجمية
*. لمتابعة اشتراكك الافتراضي، حددEnter. وإلا، اكتب عدد اشتراك Azure الذي تريد استخدامه.تسجيل موفري الموارد المطلوبين في اشتراكك.
إشعار
يجب تشغيل هذه الخطوة مرة واحدة فقط لكل اشتراك. لتسجيل موفري الموارد، تحتاج إلى إذن للقيام بالعملية
/register/action، والتي يتم تضمينها في أدوار المساهم والمالك للاشتراك. لمزيد من المعلومات، راجع موفري موارد Azure وأنواعها.az provider register -n "Microsoft.ExtendedLocation" az provider register -n "Microsoft.Kubernetes" az provider register -n "Microsoft.KubernetesConfiguration" az provider register -n "Microsoft.IoTOperations" az provider register -n "Microsoft.DeviceRegistry" az provider register -n "Microsoft.SecretSyncController"استخدم الأمر az connectedk8s connect إلى Arc-enable نظام مجموعة Kubernetes وإدارته كجزء من مجموعة موارد Azure.
az connectedk8s connect --name <CLUSTER_NAME> -l <REGION> --resource-group <RESOURCE_GROUP> --subscription <SUBSCRIPTION_ID> --enable-oidc-issuer --enable-workload-identity --disable-auto-upgradeلمنع التحديثات غير المخطط لها ل Azure Arc وملحقات Arc للنظام التي تستخدمها عمليات Azure IoT كتبعيات، يعطل هذا الأمر الترقية التلقائية. بدلا من ذلك، ترقية العوامل يدويا حسب الحاجة.
هام
إذا كانت بيئتك تستخدم خادم وكيل أو بوابة Azure Arc، فقم بتعديل
az connectedk8s connectالأمر بمعلومات الوكيل:- اتبع الإرشادات الموجودة في الاتصال باستخدام خادم وكيل صادر أو مجموعات Kubernetes على متن Azure Arc باستخدام Azure Arc Gateway.
- أضف
169.254.169.254إلى--proxy-skip-rangeمعلمةaz connectedk8s connectالأمر . يستخدم Azure Device Registry نقطة النهاية المحلية هذه للحصول على رموز الوصول المميزة للتخويل.
لا تدعم عمليات Azure IoT الخوادم الوكيلة التي تتطلب شهادة موثوق بها.
احصل على عنوان URL لمصدر نظام المجموعة.
az connectedk8s show --resource-group <RESOURCE_GROUP> --name <CLUSTER_NAME> --query oidcIssuerProfile.issuerUrl --output tsvاحفظ إخراج هذا الأمر لاستخدامه في الخطوات التالية.
إنشاء ملف تكوين k3s.
sudo nano /etc/rancher/k3s/config.yamlأضف المحتوى التالي إلى
config.yamlالملف، واستبدل<SERVICE_ACCOUNT_ISSUER>العنصر النائب بعنوان URL المصدر لنظام المجموعة.kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hاحفظ الملف واخرج من محرر nano.
استعد لتمكين خدمة Azure Arc، الموقع المخصص، على مجموعة Arc الخاصة بك عن طريق الحصول على معرف عنصر الموقع المخصص وحفظه كمتغير البيئة، OBJECT_ID. يجب تسجيل الدخول إلى Azure CLI باستخدام حساب مستخدم Microsoft Entra لتشغيل الأمر بنجاح، وليس كيان الخدمة. قم بتشغيل الأمر التالي تماما كما هو مكتوب، دون تغيير قيمة GUID.
export OBJECT_ID=$(az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv)إشعار
إذا تلقيت الخطأ: "غير قادر على إحضار oid من تطبيق 'custom-locations'. المتابعة دون تمكين الميزة. امتيازات غير كافية لإكمال العملية،" ثم قد يفتقر كيان الخدمة إلى الأذونات اللازمة لاسترداد معرف الكائن للموقع المخصص. سجل الدخول إلى Azure CLI باستخدام حساب مستخدم Microsoft Entra يلبي المتطلبات الأساسية. لمزيد من المعلومات، راجع إنشاء مواقع مخصصة وإدارتها.
استخدم الأمر az connectedk8s enable-features لتمكين ميزة الموقع المخصص على نظام مجموعة Arc. يستخدم هذا الأمر متغير البيئة OBJECT_ID المحفوظ من الخطوة السابقة لتعيين قيمة المعلمة custom-locations-oid. قم بتشغيل هذا الأمر على الجهاز حيث قمت بنشر مجموعة Kubernetes:
az connectedk8s enable-features -n <CLUSTER_NAME> -g <RESOURCE_GROUP> --custom-locations-oid $OBJECT_ID --features cluster-connect custom-locationsأعد تشغيل K3s.
systemctl restart k3s
تكوين مجموعات متعددة العقد لتخزين حاوية Azure
في مجموعات Ubuntu متعددة العقد مع ثلاث عقد على الأقل، لديك خيار تمكين التسامح مع الخطأ للتخزين مع تمكين Azure Container Storage بواسطة Azure Arc عند نشر عمليات Azure IoT.
إذا كنت ترغب في تمكين التسامح مع الخطأ أثناء النشر، فقم بتكوين مجموعاتك باتباع الخطوات الواردة في إعداد وحدات تخزين Linux ل Edge باستخدام مجموعة Ubuntu متعددة العقد.
إذا كنت تقوم بتشغيل نظام المجموعة الخاص بك على توزيع Kubernetes بخلاف k3s، فراجع الإرشادات لإعداد Linux مع الأنظمة الأساسية الأخرى.
تكوين متقدم
عند هذه النقطة، عندما يكون لديك مجموعة Kubernetes ممكنة في Azure Arc ولكن قبل نشر عمليات Azure IoT إليها، قد تحتاج إلى تكوين نظام المجموعة الخاص بك للسيناريوهات المتقدمة.
- إذا كنت ترغب في تمكين ميزات إمكانية المراقبة على نظام المجموعة، فاتبع الخطوات الواردة في نشر موارد إمكانية المراقبة وإعداد السجلات.
- إذا كنت ترغب في تكوين مصدر الشهادة الخاص بك على نظام المجموعة، فاتبع الخطوات الواردة في إدارة > الشهادات إحضار مصدر الشهادة الخاص بك.
الخطوات التالية
الآن بعد أن أصبح لديك مجموعة Kubernetes الممكنة في Azure Arc، يمكنك اختيار نشر عملية Azure IoT مع إعدادات الاختبار أو مع إعدادات الإنتاج.
- نشر الاختبار: يوصى به للتقييم السريع والنماذج الأولية قبل النشر في الإنتاج. نشر الاختبار غير مناسب للإنتاج ، فهو يفتقر إلى إمكانية المراقبة والأمان القوي.
- نشر الإنتاج: يوصى به لأحمال العمل الجاهزة للإنتاج. يعد نشر الإنتاج مناسبا لعمليات نشر إنترنت الأشياء في العالم الحقيقي مع احتياجات الامتثال والأمان.