إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
مجموعة خدمة Azure Kubernetes (AKS) المكونة مع API Server VNet Integration تسقط نقطة نهاية خادم API مباشرة إلى شبكة فرعية مفوضة في VNet حيث يتم نشر AKS. يتيح تكامل الشبكة الظاهرية لخادم API اتصال الشبكة بين خادم API وعقد نظام المجموعة دون الحاجة إلى ارتباط خاص أو نفق. يتوفر خادم API خلف VIP موازن تحميل داخلي في الشبكة الفرعية المفوضة، والتي تم تكوين العقد للاستفادة منها. باستخدام تكامل الشبكة الظاهرية لخادم API، يمكنك ضمان بقاء حركة مرور الشبكة بين خادم واجهة برمجة التطبيقات وتجمعات العقد الخاصة بك على الشبكة الخاصة فقط.
اتصال خادم API
مستوى التحكم أو خادم API موجود في اشتراك Azure مدار من AKS. مجموعة العقد أو مجموعة العقد الخاصة بك موجودة في اشتراك Azure الخاص بك. يمكن للخادم والأجهزة الظاهرية التي تشكل عقد نظام المجموعة الاتصال مع بعضها البعض من خلال خادم API VIP وIPs pod التي يتم إسقاطها في الشبكة الفرعية المفوضة.
يتم دعم تكامل الشبكة الظاهرية لخادم API للمجموعات العامة أو الخاصة. يمكنك إضافة الوصول العام أو إزالته بعد توفير نظام المجموعة. على عكس المجموعات المتكاملة غير VNet، تتواصل عقد العامل دائما مباشرة مع عنوان IP الخاص لعنوان IP لموازن التحميل الداخلي لخادم API (ILB) دون استخدام DNS. يتم الاحتفاظ بجميع العقدة إلى حركة مرور خادم واجهة برمجة التطبيقات على الشبكات الخاصة، ولا يلزم وجود نفق لخادم واجهة برمجة التطبيقات للاتصال بالعقدة. يمكن للعملاء خارج نظام المجموعة الذين يحتاجون إلى الاتصال بخادم API القيام بذلك عادة إذا تم تمكين الوصول إلى الشبكة العامة. إذا تم تعطيل الوصول إلى الشبكة العامة، يجب اتباع نفس منهجية إعداد DNS الخاصة مثل المجموعات الخاصة القياسية.
المتطلبات الأساسية
- يجب أن يكون لديك Azure CLI الإصدار 2.73.0 أو أحدثه مثبتا. يمكنك التحقق من الإصدار الخاص بك باستخدام
az --versionالأمر . - إذا أحضرت شبكتك الافتراضية الخاصة، راجع متطلبات الشبكة الافتراضية.
Limitations
- لا يدعم تكامل VNet في خوادم API Virtual Network Encryption. يسمح بالعناقيد المنشورة على وحدات العقد v3 أو AKS السابقة (التي لا تدعم تشفير VNet) لكن لن يتم تشفير حركة المرور. يتم حظر العناقيد المنشورة على وحدات العقد v4 أو AKS الأحدث (التي تدعم تشفير VNet) لأن شبكات VNet المشفرة غير متوافقة مع تكامل VNet في خادم API (API). راجع وحدات التخزين الافتراضية المدعومة من AKS لمزيد من التفاصيل.
- لاستخدام الشبكات ذات المكدس المزدوج، يحتاج عنقودك إلى إصدار Kubernetes 1.26.3 أو أحدث، وإضافة
azureالشبكة، ووضعoverlayإضافة الشبكة. لمزيد من المعلومات، راجع Azure عنقود CNI مع شبكات مزدوجة المكدس.
Availability
- يتوفر تكامل خادم API VNet في جميع مناطق السحابة العامة العامة باستثناء qatarcentral.
إنشاء نظام مجموعة AKS مع API Server VNet Integration باستخدام VNet المدارة
يمكنك تكوين مجموعات AKS الخاصة بك مع تكامل API Server VNet في VNet المدار أو إحضار وضع VNet الخاص بك. يمكنك إنشاؤها كتجمعات عامة (مع وصول خادم API متاح عبر IP عام) أو مجموعات خاصة (حيث يمكن الوصول إلى خادم API فقط عبر اتصال VNet الخاص). يمكنك أيضا التبديل بين حالة عامة وخاصة دون إعادة توزيع نظام المجموعة.
إنشاء مجموعة موارد
إنشاء مجموعة موارد باستخدام
az group createالأمر .az group create --location westus2 --name <resource-group>
توزيع نظام مجموعة عام
نشر مجموعة AKS عامة مع تكامل API Server VNet للشبكة الظاهرية المدارة
az aks createباستخدام الأمر مع العلامة--enable-apiserver-vnet-integration.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-apiserver-vnet-integration \ --generate-ssh-keys
توزيع نظام مجموعة خاص
انشر مجموعة AKS خاصة مع تكامل API Server VNet للشبكة الظاهرية المدارة
az aks createباستخدام الأمر مع--enable-apiserver-vnet-integrationعلامات و--enable-private-cluster.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-private-cluster \ --enable-apiserver-vnet-integration \ --generate-ssh-keys
إنشاء مجموعة AKS خاصة مع API Server VNet Integration باستخدام إحضار VNet الخاصة بك
عند استخدام VNet الخاص بك، يجب عليك إنشاء وتفويض شبكة فرعية لخادم API إلى Microsoft.ContainerService/managedClusters، مما يمنح خدمة AKS صلاحيات لحقن وحدات خادم API وموازن التحميل الداخلي في تلك الشبكة الفرعية. لا يمكنك استخدام الشبكة الفرعية لأي أحمال عمل أخرى، ولكن يمكنك استخدامها لمجموعات AKS متعددة موجودة في نفس الشبكة الظاهرية. الحد الأدنى لحجم الشبكة الفرعية لخادم API المدعوم هو /28.
تحتاج هوية نظام المجموعة إلى أذونات لكل من الشبكة الفرعية لخادم API والشبكة الفرعية للعقدة. يمكن أن يؤدي عدم وجود أذونات في الشبكة الفرعية لخادم API إلى فشل التزويد.
تحذير
تحتفظ مجموعة AKS ب 9 عناوين IP على الأقل في مساحة عنوان الشبكة الفرعية. قد يمنع نفاد عناوين IP تحجيم خادم API ويتسبب في انقطاع خادم API.
إنشاء مجموعة موارد
- إنشاء مجموعة موارد باستخدام
az group createالأمر .
az group create --location <location> --name <resource-group>
إنشاء شبكة ظاهرية
إنشاء شبكة ظاهرية
az network vnet createباستخدام الأمر .az network vnet create --name <vnet-name> \ --resource-group <resource-group> \ --location <location> \ --address-prefixes 172.19.0.0/16إنشاء شبكة فرعية لخادم API باستخدام
az network vnet subnet createالأمر .az network vnet subnet create --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <apiserver-subnet-name> \ --delegations Microsoft.ContainerService/managedClusters \ --address-prefixes 172.19.0.0/28إنشاء شبكة فرعية
az network vnet subnet createلنظام المجموعة باستخدام الأمر .az network vnet subnet create --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <cluster-subnet-name> \ --address-prefixes 172.19.1.0/24
إنشاء هوية مدارة ومنحها أذونات على الشبكة الظاهرية
إنشاء هوية مدارة
az identity createباستخدام الأمر .az identity create --resource-group <resource-group> --name <managed-identity-name> --location <location>تعيين دور مساهم الشبكة إلى الشبكة الفرعية لخادم API باستخدام
az role assignment createالأمر .az role assignment create --scope <apiserver-subnet-resource-id> \ --role "Network Contributor" \ --assignee <managed-identity-client-id>تعيين دور مساهم الشبكة إلى الشبكة الفرعية لنظام المجموعة باستخدام
az role assignment createالأمر .az role assignment create --scope <cluster-subnet-resource-id> \ --role "Network Contributor" \ --assignee <managed-identity-client-id>
توزيع نظام مجموعة عام
نشر مجموعة AKS عامة مع تكامل API Server VNet باستخدام
az aks createالأمر مع العلامة--enable-apiserver-vnet-integration.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-apiserver-vnet-integration \ --vnet-subnet-id <cluster-subnet-resource-id> \ --apiserver-subnet-id <apiserver-subnet-resource-id> \ --assign-identity <managed-identity-resource-id> \ --generate-ssh-keys
توزيع نظام مجموعة خاص
نشر مجموعة AKS خاصة مع تكامل API Server VNet باستخدام
az aks createالأمر مع--enable-apiserver-vnet-integrationعلامات و--enable-private-cluster.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-private-cluster \ --enable-apiserver-vnet-integration \ --vnet-subnet-id <cluster-subnet-resource-id> \ --apiserver-subnet-id <apiserver-subnet-resource-id> \ --assign-identity <managed-identity-resource-id> \ --generate-ssh-keys
تحويل نظام مجموعة AKS موجود إلى API Server VNet Integration
تحذير
API Server VNet Integration هو ميزة أحادية الاتجاه حساسة للسعة.
إعادة التشغيل اليدوي مطلوب.
بعد تفعيل تكامل خادم API VNet باستخدامaz aks update --enable-apiserver-vnet-integration، وبسبب انتقال الموارد في مستوى التحكم، يجب عليك إعادة تشغيل العنقود فورا ليبدأ التغيير حيز التنفيذ. إعادة التشغيل هذه غير تلقائية. يؤدي تأخير إعادة التشغيل إلى زيادة خطر عدم توفر السعة، مما قد يمنع بدء تشغيل خادم واجهة برمجة التطبيقات. تضمن إعادة تشغيل العنقود أيضا أن جميع العقد تعيد الاتصال بشكل موثوق إلى نقطة نهاية خادم API الجديدة.يتم التحقق من صحة السعة، ولكن ليس محجوزا.
تتحقق AKS من صحة السعة الإقليمية عند تمكين الميزة على مجموعة موجودة، ولكن هذا التحقق من الصحة لا يحجز السعة. إذا تأخرت إعادة التشغيل وأصبحت السعة غير متوفرة في هذه الأثناء، فقد تفشل المجموعة في البدء بعد التوقف أو إعادة التشغيل. لن تخضع المجموعات التي مكنت هذه الميزة قبل التوفر العام (GA) أو التي لم تتم إعادة تشغيلها بعد منذ التمكين، إلى التحقق من صحة السعة.لا يمكن تعطيل الميزة.
بمجرد التمكين، تكون الميزة دائمة. لا يمكنك تعطيل تكامل API Server VNet.
تقوم هذه الترقية بإجراء ترقية إصدار صورة العقدة على جميع تجمعات العقد وإعادة تشغيل جميع أحمال العمل أثناء خضوعها لترقية صورة متجددة.
تحذير
يؤدي تحويل نظام مجموعة إلى تكامل API Server VNet إلى تغيير عنوان IP لخادم API، على الرغم من أن اسم المضيف يظل كما هو. إذا تم تكوين عنوان IP لخادم API في أي جدران حماية أو قواعد مجموعة أمان الشبكة، فقد تحتاج هذه القواعد إلى تحديث.
تحديث نظام المجموعة إلى API Server VNet Integration باستخدام
az aks updateالأمر مع العلامة--enable-apiserver-vnet-integration.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --enable-apiserver-vnet-integration \ --apiserver-subnet-id <apiserver-subnet-resource-id>
تمكين أو تعطيل وضع نظام المجموعة الخاص على نظام مجموعة موجود مع API Server VNet Integration
يمكن أن يكون لدى أنظمة مجموعات AKS التي تم تكوينها باستخدام API Server VNet Integration إمكانية الوصول إلى الشبكة العامة/وضع نظام المجموعة الخاص ممكن أو معطل دون إعادة توزيع نظام المجموعة. لا يتغير اسم مضيف خادم API، ولكن يتم تعديل إدخالات DNS العامة أو إزالتها إذا لزم الأمر.
إشعار
--disable-private-cluster قيد المعاينة حاليًا. لمزيد من المعلومات، راجع مستويات المرجع والدعم.
تمكين وضع نظام المجموعة الخاص
تمكين وضع نظام المجموعة الخاص باستخدام
az aks updateالأمر مع العلامة--enable-private-cluster.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --enable-private-cluster \ --enable-apiserver-vnet-integration \ --apiserver-subnet-id <apiserver-subnet-resource-id>
تعطيل وضع نظام المجموعة الخاص
تعطيل وضع نظام المجموعة الخاص باستخدام
az aks updateالأمر مع العلامة--disable-private-cluster.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --disable-private-cluster
الاتصال بالمجموعة باستخدام kubectl
قم بتكوين
kubectlللاتصال بالمجموعة باستخدامaz aks get-credentialsالأمر .az aks get-credentials --resource-group <resource-group> --name <cluster-name>
كشف خادم واجهة برمجة التطبيقات عبر Private Link
يمكنك كشف نقطة نهاية خادم API في عنقود خاص باستخدام API Server VNet Integration باستخدام Azure Private Link. تظهر الخطوات التالية كيفية إنشاء خدمة Private Link (PLS) في VNet الخاص بالعنقود والاتصال بها من VNet آخر أو اشتراك باستخدام نقطة نهاية خاصة.
إنشاء نظام مجموعة خاصة للتكامل الخاص لخادم API Server VNet
إنشاء نظام مجموعة AKS خاص مع API Server VNet Integration باستخدام
az aks createالأمر مع--enable-apiserver-vnet-integrationعلامات و--enable-private-cluster.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --enable-private-cluster \ --enable-apiserver-vnet-integration
لمزيد من الإرشادات حول كيفية إعداد Private Link مع تكامل خادم API VNet، راجع Private Link مع تكامل VNet في خادم API Integr.
قواعد أمان NSG
يسمح بكافة نسبة استخدام الشبكة داخل الشبكة الظاهرية بشكل افتراضي. ولكن إذا أضفت قواعد NSG لتقييد حركة المرور بين الشبكات الفرعية المختلفة، فتأكد من أن قواعد أمان NSG تسمح بأنواع الاتصال التالية:
| الوجهة | المصدر | البروتوكول | المنفذ | استخدام |
|---|---|---|---|---|
| شبكة APIServer الفرعية CIDR | الشبكة الفرعية لنظام المجموعة | TCP | 443 و4443 | مطلوب لتمكين الاتصال بين العقد وخادم API. |
| شبكة APIServer الفرعية CIDR | موازن تحميل Azure | TCP | 9988 | مطلوب لتمكين التواصل بين موازن تحميل Azure وخادم API. يمكنك أيضا تفعيل جميع الاتصالات بين موازن تحميل Azure وخادم API Subnet CIDR. |
الخطوات التالية
- للاطلاع على أفضل الممارسات ذات الصلة، راجع أفضل ممارسات الاتصال بالشبكة والأمان في AKS.
- للحصول على إرشادات حول كيفية إعداد private link باستخدام تكامل VNet لخادم API، راجع Private Link مع تكامل خادم VNet في واجهة البرمجة (API Server VNet Integration.