إنشاء مجموعة Azure Red Hat OpenShift 4

إن Azure Red Hat OpenShift خدمة مُدارة من OpenShift تتيح لك توزيع نظم المجموعات وإدارتها بسرعة. توضح هذه المقالة كيفية نشر مجموعة Azure Red Hat OpenShift باستخدام إما Azure CLI أو مدخل Microsoft Azure.

قبل البدء

إذا اخترت تثبيت CLI واستخدامه محليا، فستحتاج إلى تشغيل الإصدار 2.30.0 من Azure CLI أو أحدث. قم بتشغيل az --version للعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI.

يتطلب Azure Red Hat OpenShift ما لا يقل عن 40 مركز معالجة لإنشاء نظام مجموعة OpenShift وتشغيلها. لا تفي الحصة النسبية الافتراضية لمورد Azure لاشتراك Azure جديد بهذا المطلب. لطلب زيادة في حد المورد، راجع الحصة القياسية: زيادة الحدود حسب سلسلة VM.

  • على سبيل المثال، للتحقق من حصة الاشتراك الحالية لأصغر وحدة SKU لعائلة الجهاز الظاهري المدعومة "DSv3 القياسية":

    LOCATION=eastus
    az vm list-usage -l $LOCATION \
    --query "[?contains(name.value, 'standardDSv3Family')]" \
    -o table
    

تحقق من أذوناتك

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

ستحتاج أيضا إلى أذونات Microsoft Entra كافية (إما مستخدم عضو للمستأجر، أو ضيف معين مع مسؤول تطبيق الدور) للأداات لإنشاء تطبيق وكيان خدمة نيابة عنك لنظام المجموعة. راجع الأعضاء والضيوف وتعيين أدوار المسؤول وغير المسؤول للمستخدمين الذين لديهم معرف Microsoft Entra للحصول على مزيد من التفاصيل.

سجل مزودي الموارد

  1. إذا كان لديك العديد من اشتراكات Azure، فحدد معرف الاشتراك ذا الصلة:

    az account set --subscription <SUBSCRIPTION ID>
    
  2. سجل مزود الموارد Microsoft.RedHatOpenShift:

    az provider register -n Microsoft.RedHatOpenShift --wait
    
  3. سجل مزود الموارد Microsoft.Compute:

    az provider register -n Microsoft.Compute --wait
    
  4. سجل مزود الموارد Microsoft.Storage:

    az provider register -n Microsoft.Storage --wait
    
  5. سجل مزود الموارد Microsoft.Authorization:

    az provider register -n Microsoft.Authorization --wait
    

الحصول على سر السحب لـ Red Hat (اختياري)

إشعار

لا يغير سر سحب ARO تكلفة ترخيص RH OpenShift ل ARO.

يمكن سر سحب Red Hat مجموعتك من الوصول إلى سجلات حاوية Red Hat، جنبا إلى جنب مع محتوى آخر مثل عوامل التشغيل من OperatorHub. هذه الخطوة اختيارية ولكن يوصى بها. إذا قررت إضافة سر السحب لاحقا، فاتبع هذه الإرشادات. تتم إزالة الحقل cloud.openshift.com من بياناتك السرية حتى إذا كان سحب البيانات السرية يحتوي على هذا الحقل. يتيح هذا الحقل ميزة مراقبة إضافية، والتي ترسل البيانات إلى RedHat وبالتالي يتم تعطيلها بشكل افتراضي. لتمكين هذه الميزة، راجع https://docs.openshift.com/container-platform/4.11/support/remote_health_monitoring/enabling-remote-health-reporting.html .

  1. انتقل إلى مدخل إدارة نظام مجموعة Red Hat OpenShift وسجل الدخول.

    ستحتاج إلى تسجيل الدخول إلى حساب Red Hat الخاص بك أو إنشاء حساب Red Hat جديد باستخدام البريد الإلكتروني لأعمالك وقبول الشروط والأحكام.

  2. حدد Download pull secret وقم بتنزيل سر سحب لاستخدامه مع مجموعة ARO الخاصة بك.

    احتفظ بالملف pull-secret.txt المحفوظ في مكان آمن. سيتم استخدام الملف في كل إنشاء نظام المجموعة إذا كنت بحاجة إلى إنشاء نظام مجموعة يتضمن نماذج أو عوامل التشغيل لـ Red Hat أو شركاء معتمدين.

    عند تشغيل الأمر az aro create، يمكنك الرجوع إلى سر السحب باستخدام المعلمة --pull-secret @pull-secret.txt. تنفيذ az aro create من الدليل حيث قمت بتخزين الملف pull-secret.txt. وإلا، استبدل @pull-secret.txt بـ @/path/to/my/pull-secret.txt.

    إذا كنت تنسخ سر السحب الخاص بك أو تشير إليه في برامج نصية أخرى، يجب تنسيق سر السحب الخاص بك كسلسلة JSON صالحة.

إعداد مجال مخصص لنظام المجموعة (اختياري)

عند تشغيل الأمر az aro create، يمكنك تحديد مجال مخصص لنظام المجموعة باستخدام المعلمة --domain foo.example.com.

إشعار

على الرغم من أن إضافة اسم مجال اختيارية عند إنشاء نظام مجموعة من خلال Azure CLI، فإن هناك حاجة إلى اسم مجال (أو بادئة تستخدم كجزء من اسم DNS الذي تم إنشاؤه تلقائيا لوحدة تحكم OpenShift وخوادم API) عند إضافة مجموعة من خلال المدخل. راجع التشغيل السريع: نشر مجموعة Azure Red Hat OpenShift باستخدام مدخل Microsoft Azure لمزيد من المعلومات.

إذا قمت بتوفير مجال مخصص لنظام المجموعة الخاص بك، فلاحظ النقاط التالية:

  • بعد إنشاء نظام المجموعة، يجب إنشاء سجلي DNS A في خادم DNS الخاص بك للمحدد --domain :

    • api - للإشارة إلى عنوان IP لخادم api
    • *.apps - الإشارة إلى عنوان IP للدخول
    • استرداد هذه القيم بتنفيذ الأمر التالي بعد إنشاء نظام المجموعة: az aro show -n -g --query '{api:apiserverProfile.ip, ingress:ingressProfiles[0].ip}'.
  • ستكون وحدة التحكم OpenShift متوفرة في عنوان URL مثل https://console-openshift-console.apps.example.com، بدلاً من المجال https://console-openshift-console.apps.<random>.<location>.aroapp.io المضمن.

  • بشكل افتراضي، يستخدم OpenShift الشهادات الموقعة ذاتياً لجميع التوجيهات التي تم إنشاؤها على المجالات المخصصة *.apps.example.com. إذا اخترت استخدام DNS مخصص بعد الاتصال إلى نظام المجموعة، فستحتاج إلى اتباع وثائق OpenShift لتكوين مرجع مصدق مخصص لوحدة تحكم الدخول ومرجع مصدق مخصص لخادم API الخاص بك.

إنشاء شبكة ظاهرية تحتوي على شبكتين فرعيتين فارغتين

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

  1. تعيين المتغيرات التالية في بيئة shell حيث سيتم تنفيذaz الأوامر.

    LOCATION=eastus                 # the location of your cluster
    RESOURCEGROUP=aro-rg            # the name of the resource group where you want to create your cluster
    CLUSTER=cluster                 # the name of your cluster
    
  2. إنشاء مجموعة موارد.

    مجموعة الموارد عبارة عن حاوية منطقية يتم فيها توزيع موارد Azure وإدارتها. عند إنشاء مجموعة موارد، سيُطلب منك تحديد موقع. هذا الموقع هو مكان تخزين بيانات التعريف لمجموعة الموارد، وهو أيضاً مكان تشغيل الموارد في Azure إذا لم تحدد منطقة إقليمية أخرى أثناء إنشاء الموارد. أنشئ مجموعة موارد مستخدماً الأمر az group create.

    إشعار

    لا يتوفر Azure Red Hat OpenShift في جميع المناطق الإقليمية حيث يمكن إنشاء مجموعة موارد Azure. راجع المناطق الإقليمية المتاحة للحصول على معلومات حول أماكن دعم Azure Red Hat OpenShift.

    az group create \
      --name $RESOURCEGROUP \
      --location $LOCATION
    

    يظهر إخراج المثال التالي مجموعة الموارد التي تم إنشاؤها بنجاح:

    {
      "id": "/subscriptions/<guid>/resourceGroups/aro-rg",
      "location": "eastus",
      "name": "aro-rg",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "type": "Microsoft.Resources/resourceGroups"
    }
    
  3. إنشاء شبكة ظاهرية.

    تتطلب مجموعات Azure Red Hat OpenShift التي تقوم بتشغيل OpenShift 4 شبكة ظاهرية مع شبكتين فرعيتين فارغتين للعقد الرئيسية والعقد العاملة. يمكنك إما إنشاء شبكة ظاهرية جديدة لهذا الغرض، أو استخدام شبكة ظاهرية موجودة.

    أنشئ شبكة ظاهرية جديدة في نفس مجموعة الموارد التي أنشأتها سابقاً:

    az network vnet create \
       --resource-group $RESOURCEGROUP \
       --name aro-vnet \
       --address-prefixes 10.0.0.0/22
    

    يظهر إخراج المثال التالي الشبكة الظاهرية التي تم إنشاؤها بنجاح:

    {
      "newVNet": {
        "addressSpace": {
          "addressPrefixes": [
            "10.0.0.0/22"
          ]
        },
        "dhcpOptions": {
          "dnsServers": []
        },
        "id": "/subscriptions/<guid>/resourceGroups/aro-rg/providers/Microsoft.Network/virtualNetworks/aro-vnet",
        "location": "eastus",
        "name": "aro-vnet",
        "provisioningState": "Succeeded",
        "resourceGroup": "aro-rg",
        "type": "Microsoft.Network/virtualNetworks"
      }
    }
    
  4. إضافة شبكة فرعية فارغة للعقد الرئيسية.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name master-subnet \
      --address-prefixes 10.0.0.0/23
    
  5. إضافة شبكة فرعية فارغة للعقد العاملة.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name worker-subnet \
      --address-prefixes 10.0.2.0/23
    

إنشاء المجموعة

قم بتشغيل الأمر التالي لإنشاء نظام المجموعة. إذا اخترت استخدام أيٍّ من الخيارات التالية، فقم بتعديل الأمر وفقا لذلك:

  • اختياريا، يمكنك تمرير سر سحب Red Hat الخاص بك، والذي يمكن مجموعتك من الوصول إلى سجلات حاوية Red Hat جنبا إلى جنب مع محتوى آخر. إضافة الوسيطة --pull-secret @pull-secret.txt إلى الأمر الخاص بك.
  • اختيارياً، يمكنك استخدام مجال مخصص. إضافة الوسيطة --domain foo.example.com إلى الأمر الخاص بك، واستبدال foo.example.com بالمجال المخصص.

إشعار

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

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet

بعد تنفيذ الأمر az aro create، عادة ما يستغرق إنشاء نظام المجموعة حوالي 35 دقيقة.

تحديد إصدار ARO مختلف

يمكنك تحديد لاستخدام إصدار معين من ARO عند إنشاء نظام المجموعة. أولا، استخدم CLI للاستعلام عن إصدارات ARO المتوفرة:

az aro get-versions --location <region>

بمجرد اختيار الإصدار، حدده باستخدام المعلمة --version في az aro create الأمر:

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet \
  --version <x.y.z>