تشغيل الجهاز الظاهري Linux على Azure

Azure Backup
Azure Blob Storage
Azure Storage
Azure Virtual Machines

يتطلب توفير جهاز ظاهري (VM) في Azure مكونات إضافية إلى جانب الجهاز الظاهري نفسه، بما في ذلك موارد الشبكات والتخزين. توضح هذه المقالة أفضل الممارسات لتشغيل جهاز Linux ظاهري آمن على Azure.

بناء الأنظمة

رسم تخطيطي يوضح جهاز Linux الظاهري في Azure.

قم بتنزيل ملف Visio لهذه البنية.

‏‏سير العمل‬

مجموعة الموارد

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

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

الجهاز الظاهري

يمكنك توفير جهاز ظاهري من قائمة الصور المنشورة، أو من صورة مُدارة مخصصة أو ملف قرص ثابت ظاهري (VHD) تم تحميله إلى موقع تخزين Azure Blob. يدعم Azure تشغيل توزيعات Linux الشائعة المختلفة، بما في ذلك Debian وRed Hat Enterprise Linux (RHEL) وUbuntu. للمزيد من المعلومات، قم بالنظر في Azure وLinux.

يقدم Azure العديد من أحجام الأجهزة الظاهرية المختلفة. للمزيد من المعلومات، قم بالنظر في أحجام للأجهزة الظاهرية في Azure. إذا كنت تنقل حمل عمل موجودا إلى Azure، فابدأ بحجم الجهاز الظاهري الأقرب إلى الخوادم المحلية. ثم قم بقياس أداء حِمل العمل الفعلي من حيث وحدة المعالجة المركزية والذاكرة وعمليات إدخال / إخراج القرص في الثانية (IOPS)، واضبط الحجم حسب الحاجة.

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

az vm list-sizes --location <location>

إذا كنت تريد الحصول على معلومات حول اختيار صورة جهاز ظاهري (VM) منشورة، فقم بالنظر في البحث عن صور Linux VM.

الأقراص

إذا كنت تريد الحصول على أفضل أداء لقرص الإدخال / الإخراج، نوصيك باستخدام Premium Storage، الذي يخزن البيانات على محركات الأقراص ذو الحالة الصلبة (SSD). تحسب التكلفة على أساس سعة القرص المزود. يعتمد IOPS ومعدل النقل (أي معدل نقل البيانات) أيضاً على حجم القرص، لذلك عند توفير قرص، ضع في اعتبارك جميع العوامل الثلاثة (السعة، IOPS، ومعدل النقل). يتميز التخزين المتميز أيضا باندفاع مجاني، جنبا إلى جنب مع فهم أنماط حمل العمل، ويوفر اختيار SKU فعال واستراتيجية تحسين التكلفة للبنية الأساسية لخدمة تأجير البنية التحتية، ما يتيح أداء عاليا دون الإفراط في التوفير وتقليل تكلفة السعة غير المستخدمة.

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

قرص نظام التشغيل هو VHD مخزّن في Azure Storage، لذا فهو يظل موجوداً حتى عندما يكون الجهاز المضيف معطلاً. يمكن إرفاق VHD محليا NVMe أو أجهزة مماثلة متوفرة على العديد من وحدات SKU للجهاز الظاهري.

توفر الأقراص سريعة الزوال أداء جيدا دون أي تكلفة إضافية، ولكنها تأتي مع عيوب كبيرة لكونها غير دائمة، ذات سعة محدودة، وتقتصر على استخدام نظام التشغيل والقرص المؤقت فقط. بالنسبة لأجهزة Linux VM، يكون قرص نظام التشغيل هو /dev/sda1. نوصي أيضاً بإنشاء واحد أو أكثر من أقراص البيانات، وهي أقراص VHD ثابتة تُستخدم لبيانات التطبيق.

عندما تقوم بإنشاء VHD، فإنه غير مهيأ. سجل الدخول إلى الجهاز الظاهري لتنسيق القرص. في Linux shell، يتم عرض أقراص البيانات كـ /dev/sdc و/dev/sdd وهكذا. يمكنك تشغيل lsblk لسرد أجهزة الحظر، بما في ذلك الأقراص. لاستخدام قرص بيانات، قم بإنشاء قسم ونظام ملفات، وقم بتركيب القرص. على سبيل المثال:

# Create a partition.

sudo fdisk /dev/sdc     # Enter 'n' to partition, 'w' to write the change.

# Create a file system.

sudo mkfs -t ext3 /dev/sdc1

# Mount the drive.

sudo mkdir /data1
sudo mount /dev/sdc1 /data1

عند إضافة قرص بيانات، يتم تعيين معرّف رقم الوحدة المنطقية (LUN) إلى القرص. اختيارياً، يمكنك تحديد معرف LUN - على سبيل المثال، إذا كنت تقوم باستبدال قرص وترغب في الاحتفاظ بنفس معرف LUN، أو كان لديك تطبيق يبحث عن معرف LUN محدد. ومع ذلك، تذكر أن معرفات LUN يجب أن تكون فريدة لكل قرص.

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

يتم إنشاء الجهاز الظاهري باستخدام قرص مؤقت. يتم تخزين هذا القرص على محرك أقراص فعلي على الجهاز المضيف. لم يتم حفظه في Azure Storage وقد يتم حذفه أثناء عمليات إعادة التمهيد وأحداث دورة حياة الجهاز الظاهري الأخرى. استخدم هذا القرص فقط للبيانات المؤقتة، مثل ملفات الصفحة أو ملفات المبادلة. بالنسبة لأجهزة Linux VM، يكون القرص المؤقت /dev/disk/azure/resource-part1 ومثبتاً في /mnt/resource أو /mnt.

الشبكة

تشتمل مكونات الشبكات على الموارد التالية:

  • شبكة ظاهرية. يتم نشر كل جهاز ظاهري في شبكة ظاهرية يتم تقسيمها إلى شبكات فرعية.

  • واجهة الشبكة (NIC). يمكّن NIC الجهاز الظاهري من الاتصال بالشبكة الظاهرية. إذا كنت بحاجة إلى عدة بطاقات NIC للجهاز الظاهري الخاص بك، يتم تعريف الحد الأقصى لعدد بطاقات NIC لكل حجم جهاز ظاهري.

  • عنوان IP العام. مطلوب عنوان IP عام للاتصال بالجهاز الظاهري — على سبيل المثال، عبر بروتوكول سطح المكتب البعيد (RDP). يمكن أن يكون عنوان IP العام ديناميكياً أو ثابتاً. الافتراضي هو ديناميكي.

    • احجز عنوان IP ثابتا إذا كنت بحاجة إلى عنوان IP ثابت لا يتغير — على سبيل المثال، إذا كنت بحاجة إلى إنشاء سجل DNS 'A' أو إضافة عنوان IP إلى قائمة آمنة.
    • يمكنك أيضاً إنشاء اسم مجال مؤهل بالكامل (FQDN) لعنوان IP. يمكنك بعد ذلك تسجيل سجل CNAME في DNS يشير إلى FQDN. لمزيد من المعلومات، راجع إنشاء اسم مجال مؤهل بالكامل في مدخل Microsoft Azure.
  • مجموعة أمان الشبكة (NSG). مجموعات أمان الشبكة تستخدم للسماح بحركة مرور الشبكة إلى الأجهزة الظاهرية أو رفضها. يمكن ربط مجموعات موردي المواد النووية إما بشبكات فرعية أو بمثيلات VM الفردية.

    • تحتوي جميع مجموعات موردي المواد النووية على مجموعة من القواعد الافتراضية، بما في ذلك قاعدة تحظر جميع حركات المرور الواردة على الإنترنت. لا يمكن حذف القواعد الافتراضية، لكن يمكن للقواعد الأخرى تجاوزها. لتمكين نسبة استخدام الشبكة على الإنترنت، أنشئ قواعد تسمح بنسبة استخدام الشبكة الواردة إلى منافذ محددة - على سبيل المثال، المنفذ 80 لـ HTTP. لتمكين Secure Shell (SSH)، أضف قاعدة NSG التي تسمح بنسبة استخدام الشبكة الواردة إلى منفذ TCP 22.
  • بوابة Azure NAT. تسمح بوابات ترجمة عناوين الشبكة (NAT) لجميع المثيلات في شبكة فرعية خاصة بالاتصال الصادر بالإنترنت مع البقاء خاصا بالكامل. يمكن فقط للحزم التي تصل كحزم استجابة إلى اتصال صادر تمرير عبر بوابة NAT. لا يسمح بالاتصالات الواردة غير المرغوب فيها من الإنترنت.

  • Azure Bastion. Azure Bastion هو نظام أساسي مدار بالكامل كحل خدمة يوفر وصولا آمنا إلى الأجهزة الظاهرية عبر عناوين IP الخاصة. مع هذا التكوين، لا تحتاج الأجهزة الظاهرية إلى عنوان IP عام يعرضها للإنترنت، ما يزيد من وضعها الأمني. يوفر Azure Bastion اتصال RDP أو SSH آمن بالأجهزة الظاهرية الخاصة بك مباشرة عبر بروتوكول أمان طبقة النقل (TLS) من خلال أساليب مختلفة، بما في ذلك مدخل Microsoft Azure أو عملاء SSH أو RDP الأصليين.

العمليات

ssh. قبل إنشاء Linux VM، قم بإنشاء زوج مفاتيح RSA عام-خاص 2048 بت. استخدم ملف المفتاح العام عند إنشاء VM. لمزيد من المعلومات، راجع كيفية استخدام SSH مع Linux وMac على Azure.

التشخيصات. تمكين المراقبة والتشخيصات، بما في ذلك قياسات الحالة الأساسية وسجلات البنية الأساسية للتشخيص وتشخيصات التمهيد. يمكن أن تساعدك تشخيصات التمهيد في تشخيص فشل التمهيد إذا دخل الجهاز الظاهري في حال غير قابلة للتمهيد. أنشئ حساب Azure Storage لتخزين السجلات. يعد حساب التخزين المتكرر محلياً (LRS) كافياً لسجلات التشخيص. لمزيد من المعلومات، راجع تمكين المراقبة والتشخيصات.

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

النسخ الاحتياطية للحماية من فقدان البيانات العرضي، استخدم خدمة Azure Backup لعمل نسخة احتياطية من أجهزة VM الخاصة بك على مساحة تخزين زائدة عن الحاجة جغرافياً. يوفر "Azure Backup" نسخًا احتياطية متناسقة للتطبيق.

إيقاف VM. يميز Azure بين الحالات "المتوقفة" و"غير المخصصة". تتم محاسبتك عند إيقاف حالة الجهاز الظاهري، ولكن ليس عند إلغاء تخصيص الجهاز الظاهري. في مدخل Microsoft Azure، يعمل الزر Stop على إلغاء تخصيص الجهاز الظاهري. إذا أغلقت نظام التشغيل من خلال نظام التشغيل أثناء تسجيل الدخول، فسيتم إيقاف الجهاز الظاهري ولكن لم يتم إلغاء تخصيصه، لذلك سيستمر تحصيل الرسوم منك.

حذف جهاز ظاهري. إذا قمت بحذف جهاز ظاهري، فلديك خيار حذف أقراصه أو الاحتفاظ بها. هذا يعني أنه يمكنك حذف الجهاز الظاهري بأمان دون فقد البيانات. ومع ذلك، سيتم تحصيل رسوم منك مقابل الأقراص. يمكنك حذف الأقراص المدارة تماما مثل أي مورد Azure آخر. لمنع الحذف غير المقصود، استخدم قفل الموارد لتأمين مجموعة الموارد بأكملها أو قفل الموارد الفردية، مثل VM.

الاعتبارات

تنفذ هذه الاعتبارات ركائز Azure Well-Architected Framework، وهو عبارة عن مجموعة من المبادئ التوجيهية التي يمكن استخدامها لتحسين جودة حمل العمل. لمزيد من المعلومات، يرجى مراجعةMicrosoft Azure Well-Architected Framework.

تحسين التكلفة

يركز تحسين التكلفة على البحث عن طرق للحد من النفقات غير الضرورية وتحسين الكفاءة التشغيلية. لمزيد من المعلومات، راجع نظرة عامة على ركيزة تحسين التكلفة.

هناك العديد من الخيارات لأحجام الأجهزة الظاهرية حسب الاستخدام وحمل العمل. يتضمن النطاق الخيار الأكثر اقتصادا من السلسلة Bs إلى أحدث GPU الظاهرية (VM) المُحسَّنة للتعلم الآلي. للحصول على معلومات حول الخيارات المتاحة، راجع أسعار Azure Linux VM.

بالنسبة لأحمال العمل التي يمكن التنبؤ بها، استخدم Azure Reservations وخطة توفير Azure للحوسبة بعقد مدته سنة واحدة أو ثلاث سنوات والحصول على وفورات كبيرة مقابل أسعار الدفع أولا بأول. بالنسبة لأحمال العمل التي ليس لها وقت يمكن التنبؤ به للاكتمال أو استهلاك الموارد، ضع في اعتبارك خيار الدفع الفوري.

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

  • سيناريوهات الحوسبة عالية الأداء أو مهام المعالجة المجمعة أو تطبيقات العرض المرئي.
  • بيئات الاختبار، بما في ذلك التكامل المستمر وأحمال عمل التسليم المستمر.
  • طلبات واسعة النطاق وعديمة الحالة.

استخدم حاسبة أسعار Azure لتقدير التكاليف.

لمزيد من المعلومات، راجع قسم التكلفة في Microsoft Azure Well-Architected Framework.

الأمان

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

استخدم Microsoft Defender for Cloud للحصول على عرض مركزي للحالة الأمنية لموارد Azure. يراقب Defender for Cloud مشكلات الأمان المحتملة ويوفر صورة شاملة عن الحالة الأمنية للتوزيع. تم تكوين Defender for Cloud لكل اشتراك Azure. قم بتمكين جمع بيانات الأمان كما هو موضح في على متن اشتراكك في Azure في Defender for Cloud Standard. عند تمكين جمع البيانات، يقوم Defender for Cloud تلقائياً بمسح أي أجهزة ظاهرية تم إنشاؤها بموجب هذا الاشتراك.

إدارة التصحيح. في حال التمكين، يتحقق Defender for Cloud مما إذا كانت هناك أي تحديثات أمنية وتحديثات مهمة مفقودة.

مكافحة البرامج الضارة. في حال التمكين، يتحقق Defender for Cloud من تثبيت برنامج مكافحة البرامج الضارة. يمكنك أيضاً استخدام Defender for Cloud لتثبيت برنامج مكافحة البرامج الضارة من داخل مدخل Microsoft Azure.

التحكم بالوصول. استخدم التحكم في الوصول المستند إلى الدور Azure (Azure RBAC) للتحكم في الوصول إلى موارد Azure. يتيح لك Azure RBAC تعيين أدوار التخويل لأعضاء فريق DevOps الخاص بك. على سبيل المثال، يمكن لدور القارئ عرض موارد Azure ولكن لا يمكنه إنشاؤها أو إدارتها أو حذفها. بعض الأذونات خاصة بنوع مورد Azure. على سبيل المثال، يمكن لدور Virtual Machine Contributor إعادة تشغيل جهاز افتراضي أو إلغاء تخصيصه وإعادة تعيين كلمة مرور المسؤول وإنشاء جهاز ظاهري جديد وما إلى ذلك. تتضمن الأدوار المضمنة الأخرى التي قد تكون مفيدة لهذه البنية مستخدم DevTest Labs ومساهم الشبكة.

إشعار

لا يحد Azure RBAC من الإجراءات التي يمكن أن يقوم بها المستخدم الذي قام بتسجيل الدخول إلى جهاز ظاهري. يتم تحديد هذه الأذونات حسب نوع الحساب في نظام التشغيل الضيف.

سجلات التدقيق. استخدم سجلات التدقيق لمشاهدة إجراءات إدارة الحسابات وأحداث VM الأخرى.

تشفير البيانات. استخدم تشفير قرص Azure إذا كنت بحاجة إلى تشفير نظام التشغيل وأقراص البيانات.

التميز التشغيلي

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

استخدم قالب Azure Resource Manager واحد لتوفير موارد Azure وتبعياتها. نظرا لأن جميع الموارد موجودة في نفس الشبكة الظاهرية، يتم عزلها في نفس حمل العمل الأساسي. يسهل ربط الموارد المحددة لحمل العمل بفريق DevOps، بحيث يمكن للفريق إدارة جميع جوانب هذه الموارد بشكل مستقل. يتيح هذا العزل لفريق DevOps إمكانية التكامل المستمر والتسليم المستمر (CI / CD).

أيضاً، يمكنك استخدام قوالب Azure Resource Manager المختلفة وتكاملها مع خدمات Azure DevOps لتوفير بيئات مختلفة في دقائق، على سبيل المثال لنسخ الإنتاج بشكل متماثل مثل السيناريوهات أو بيئات اختبار التحميل فقط عند الحاجة، مما يوفر التكلفة.

للحصول على بنية توفر أعلى، راجع تطبيق Linux N-tier في Azure مع Apache Cassandra، تشتمل البنية المرجعية على أكثر من جهاز افتراضي واحد ويتم تضمين كل جهاز ظاهري في مجموعة الإتاحة.

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

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