نشر OKD في Azure

ينطبق على: ✔️ أجهزة Linux الظاهرية ✔️ مجموعات المقياس المرنة

يمكنك استخدام إحدى الطريقتين لنشر OKD (OpenShift Origin سابقاً) في Azure:

  • يمكنك نشر جميع مكونات البنية الأساسية لـ Azure الضرورية يدوياً، ثم اتباع توثيق OKD.
  • يمكنك أيضاً استخدام قالب إدارة الموارد الموجود والذي يبسط عملية نشر نظام مجموعة OKD.

النشر باستخدام قالب OKD

للنشر باستخدام قالب إدارة الموارد، يمكنك استخدام ملف معلمات لتوفير معلمات الإدخال. لتخصيص النشر بشكلٍ أكبر، قم بتقسيم مستودع GitHub وتغيير العناصر المناسبة.

تتضمن بعض خيارات التخصيص الشائعة، على سبيل المثال لا الحصر:

  • حجم Bastion VM (متغير في azuredeploy.json)
  • اصطلاحات التسمية (المتغيرات في azuredeploy.json)
  • تفاصيل مجموعة OpenShift، تم تعديلها عبر ملف المضيفين (publishOpenShift.sh)

يحتوي قالب OKD على عدة فروع متوفرة لإصدارات مختلفة من OKD. بحسب احتياجاتك، يمكنك النشر مباشرةً من المستودع أو تقسيم المستودع وإجراء تغييرات مخصصة قبل النشر.

استخدم القيمة appId من أساس الخدمة الذي أنشأته مسبقاً للمعلمة aadClientId.

فيما يلي مثال على ملف معلمات يسمى azuredeploy.parameters.json مزود بجميع المدخلات المطلوبة.

{
	"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
	"contentVersion": "1.0.0.0",
	"parameters": {
		"masterVmSize": {
			"value": "Standard_E2s_v3"
		},
		"infraVmSize": {
			"value": "Standard_E2s_v3"
		},
		"nodeVmSize": {
			"value": "Standard_E2s_v3"
		},
		"storageKind": {
			"value": "managed"
		},
		"openshiftClusterPrefix": {
			"value": "mycluster"
		},
		"masterInstanceCount": {
			"value": 3
		},
		"infraInstanceCount": {
			"value": 2
		},
		"nodeInstanceCount": {
			"value": 2
		},
		"dataDiskSize": {
			"value": 128
		},
		"adminUsername": {
			"value": "clusteradmin"
		},
		"openshiftPassword": {
			"value": "{Strong Password}"
		},
		"sshPublicKey": {
			"value": "{SSH Public Key}"
		},
		"enableMetrics": {
			"value": "true"
		},
		"enableLogging": {
			"value": "false"
		},
		"keyVaultResourceGroup": {
			"value": "keyvaultrg"
		},
		"keyVaultName": {
			"value": "keyvault"
		},
		"keyVaultSecret": {
			"value": "keysecret"
		},
		"enableAzure": {
			"value": "true"
		},
		"aadClientId": {
			"value": "11111111-abcd-1234-efgh-111111111111"
		},
		"aadClientSecret": {
			"value": "{Strong Password}"
		},
		"defaultSubDomainType": {
			"value": "nipio"
		}
	}
}

استبدل المعلمات بمعلوماتك المحددة.

قد تحتوي الإصدارات المختلفة على معلمات متنوعة، لذا يُرجى التحقق من المعلمات الضرورية للفرع الذي تستخدمه.

التوزيع باستخدام Azure CLI

ملاحظة

يتطلب الأمر التالي Azure CLI 2.0.8 أو إصدار أحدث. يمكنك التحقق من إصدار CLI باستخدام الأمر az --version. لتحديث إصدار CLI، راجع تثبيت Azure CLI.

يقوم المثال التالي بنشر مجموعة OKD وجميع الموارد ذات الصلة في مجموعة موارد تسمى openshiftrg، مع اسم نشر myOpenShiftCluster. تتم الإشارة إلى القالب مباشرةً من مستودع GitHub أثناء استخدام ملف معلمات محلي يسمى azuredeploy.parameters.json.

az deployment group create -g openshiftrg --name myOpenShiftCluster \
      --template-uri https://raw.githubusercontent.com/Microsoft/openshift-origin/master/azuredeploy.json \
      --parameters @./azuredeploy.parameters.json

يستغرق النشر 30 دقيقة على الأقل للانتهاء، بناءً على العدد الإجمالي للعقد التي تم نشرها. تتم طباعة عنوان URL الخاص بوحدة تحكم OpenShift واسم DNS الخاص ببرنامج OpenShift الرئيسي إلى الوحدة الطرفية عند انتهاء النشر. بدلاً من ذلك، يمكنك عرض قسم المخرجات من النشر من مدخل Azure.

{
  "OpenShift Console Url": "http://openshiftlb.cloudapp.azure.com/console",
  "OpenShift Master SSH": "ssh -p 2200 clusteradmin@myopenshiftmaster.cloudapp.azure.com"
}

إذا كنت لا تريد ربط سطر الأوامر في انتظار اكتمال النشر، فأضف --no-wait كأحد الخيارات لنشر المجموعة. يمكن استرداد المخرجات من النشر من مدخل Azure في قسم النشر لمجموعة الموارد.

الاتصال بنظام مجموعة OKD

عند انتهاء النشر، قم بالاتصال بوحدة تحكم OpenShift باستخدام المستعرض الخاص بك باستخدام OpenShift Console Url. بدلاً من ذلك، يمكنك SSH إلى OKD الرئيسي. فيما يلي مثال يستخدم الإخراج من النشر:

$ ssh -p 2200 clusteradmin@myopenshiftmaster.cloudapp.azure.com

تنظيف الموارد

يمكنك استخدام الأمر az group delete لإزالة مجموعة الموارد ومجموعة OpenShift وجميع الموارد ذات الصلة عندما لا تعد بحاجة إليها.

az group delete --name openshiftrg

الخطوات التالية