توزيع تطبيقات ASP.Net على Oracle Cloud Infrastructure

ASP.Net هو إطار عمل ويب مفتوح المصدر، تم تكوينه بواسطة Microsoft، لإنشاء تطبيقات وخدمات ويب حديثة باستخدام.Net. يمكنك استخدام إطار العمل هذا لإعداد توجيه توزيع آلي لتطبيقات ASP.Net على Oracle Cloud Infrastructure. تعرض هذه البنية المرجعية تطبيق ASP.Net بسيط وتوفر مجموعة النجوم لإعدادها.

البنية

في هذه البنية، نقوم بنشر تطبيق ASP.Net عبر نطاقات أخطاء متعددة. تستخدم البنية شبكة سحابة افتراضية (VCN) مع شبكة فرعية عامة لطبعات التطبيق وشبكة فرعية خاصة لطبقة قاعدة البيانات. يقوم مراقب التحميل الموجود في الشبكة الفرعية العامة بتوزيع حركة المرور عبر نقاط التوصيل.

يمكنك الاستفادة من ميزان التحميل المرن في Oracle Cloud Infrastructure واختيار الحد الأدنى لعرض النطاق الترددي المخصص والحد الأقصى لعرض النطاق الترددي الاختياري؛ ويجب أن يتراوح كلاهما بين 10 Mbps و8,000 Mbps. يتوفر الحد الأدنى لعرض النطاق الترددي دائمًا ويوفر الجاهزية الفورية لأحمال العمل الخاصة بك. واستنادا إلى أنماط حركة المرور الواردة، سيزداد عرض النطاق الترددي المتاح من الحد الأدنى مع زيادة حركة المرور.

بالنسبة للتطبيقات التي يتم نشرها على الأجهزة الظاهرية، يمكن للعملاء الاستفادة من طبعات VM المرنة. يمكن للأجهزة الظاهرية المرنة زيادة أو تقليل السعة بالدقائق بإضافة وحدات CPU والذاكرة. يمكن تكوين VM مرن باستخدام 1 إلى 64 نواة، وما بين 1 و64 جيجابايت للذاكرة لكل نواة، بحد أقصى 1024 جيجابايت للطبعة.

يتم توزيع قاعدة بيانات Microsoft SQL باستخدام قاعدة بيانات أساسية واستبدالية موزعة على نطاقين معيبين لتوفير إتاحة عالية.

يوضح الشكل التالي هيكل المرجع هذا.

ما يلي هو وصف ha-aspnet-oci-arch.png
وصف الشكل التوضيحي ha-aspnet-oci-arch.png

تشتمل هذه البنية على المكونات التالية:
  • Region (المنطقة)

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

  • نطاقات الإتاحة

    تعتبر نطاقات الإتاحة مراكز بيانات مستقلة ومستقلة داخل المنطقة. ويتم عزل الموارد المادية في كل مجال من مجالات التوفر عن الموارد الموجودة في مجالات التوفر الأخرى، مما يوفر تسامحاً خاطئاً. لا تشترك نطاقات الإتاحة في البنية الأساسية مثل الطاقة أو التبريد أو شبكة نطاق الإتاحة الداخلية. ولذلك، فمن غير المرجح أن يؤثر الفشل في مجال واحد من مجالات التوافر الأخرى في المنطقة.

  • مجالات الخطأ

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

  • تجزئة

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

  • (VCN) والشبكات الفرعية

    VCN شبكة قابلة للتخصيص ومحددة برمجيًا تقوم بإعدادها في منطقة Oracle Cloud Infrastructure. مثل شبكات مراكز البيانات التقليدية، توفر لك شبكات VCN التحكم الكامل في بيئة الشبكة. يمكن أن يحتوي VCN على كتل CIDR متعددة غير متداخلة يمكنك تغييرها بعد تكوين VCN. يمكنك تقسيم VCN إلى شبكات فرعية، يمكن تحديد نطاقها إلى منطقة أو إلى نطاق إتاحة. تتكون كل شبكة فرعية من نطاق متجاور من العناوين لا يتداخل مع الشبكات الفرعية الأخرى في VCN. يمكنك تغيير حجم الشبكة الفرعية بعد التكوين. يمكن أن تكون الشبكة الفرعية عامة أو خاصة.

  • قوائم الأمن

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

  • تحميل موازنات

    توفر خدمة Oracle Cloud Infrastructure Load Balancing توزيع حركة المرور التلقائي من نقطة إدخال واحدة إلى خوادم متعددة في الطرف الخلفي. جيت واي الإنترنت تسمح جيت واي الإنترنت بحركة المرور بين الشبكات الفرعية العامة في VCN والإنترنت العام.

  • حجم الحجز الجماعي

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

  • خادم الويب - IIS

    خدمات معلومات الإنترنت (IIS) لخادم Windows^ هو خادم ويب لاستضافة تطبيقات.Net.

  • إجراءات وعارضات Github

    يتم استخدام إجراءات GitHub لأتمتة إنشاء تطبيق ASP.NET وتوزيعه على خوادم Windows. تساعد إجراءات GitHub على أتمتة المهام ضمن دورة حياة تطوير البرامج، والمشغل هو الجهاز الذي تعمل عليه وظيفة إجراءات GitHub. يستمع المشغل للوظائف المتاحة، ويقوم بتشغيل وظيفة واحدة في المرة الواحدة، ويقوم بالإبلاغ عن التقدم والسجلات والنتائج إلى GitHub.

    يتم عرض المشغلات كخدمة مدارة بواسطة GitHub، أو يمكن إدارتها ذاتيًا إذا كنت بحاجة إلى مزيد من المرونة والتحكم في بيئتك؛ على سبيل المثال، كصورة أو حاوية مسجلة الملكية، أو جهاز أقوى، أو لدعم العديد من الهياكل مثل Arm. يمكن تنفيذ نفس العمليات أو الأوامر من أي نظام إنشاء ونشر للحصول على نتائج مماثلة. في هذا المثال، يتم تشغيل الإنشاء بواسطة تثبيت في المخزن أو طلب سحب. عند تشغيل سير العمل، يتم إنشاء التطبيق. يتم تعبئة الحاويات التي تم بناؤها وبدأ تطبيق terraform لتحديث البنية الأساسية ونشر التطبيق. تتم إدارة مفتاح Oracle Cloud Infrastructure API بواسطة أسرار GitHub.

التوصيات

استخدم التوصيات التالية كنقطة بداية. لاحظ أن متطلباتك قد تختلف عن البنية الموضحة هنا.
  • حارس السحابة

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

    تطبيق Cloud Guard على مستوى الاستئجار لتغطية النطاق الأوسع ولتخفيف العبء الإداري لصيانة التكوينات المتعددة.

    يمكنك أيضًا استخدام ميزة القائمة المدارة لتطبيق تكوينات معينة على أجهزة الكشف.

  • مناطق السرية

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

  • VCN

    عند تكوين VCN، حدد عدد كتل CIDR المطلوبة وحجم كل قطعة استنادًا إلى عدد الموارد التي تخطط لإرفاقها بالشبكات الفرعية في VCN. استخدم كتل CIDR الموجودة داخل مساحة عنوان IP الخاصة القياسية.

    حدد كتل CIDR التي لا تتداخل مع أي شبكة أخرى (في Oracle Cloud Infrastructure أو مركز البيانات المحلي أو موفر سحابة آخر) تنوي إعداد اتصالات خاصة بها.

    بعد تكوين VCN، يمكنك تغيير مجموعات CIDR الخاصة بها وإضافتها وإزالتها.

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

    استخدام الشبكات الفرعية الإقليمية.

  • قوائم الأمن

    استخدم قوائم التأمين لتعريف قواعد الإخراج والإفراج التي تنطبق على الشبكة الفرعية بأكملها.

الاعتبارات

ضع في اعتبارك النقاط التالية عند توزيع هيكل المرجع هذا.

  • أمان

    فكر في إضافة جدار حماية تطبيق الويب لتأمين التطبيق ضد الهجمات الضارة.

  • إتاحة التطبيق

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

  • التكلفة

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

  • CI/CD

    يمكنك توزيع برامج تشغيل إجراء Github ذاتية الاستضافة على OCI وإضافتها إلى مخزن Github أو المؤسسة أو المؤسسة. لمزيد من التفاصيل حول برامج التشغيل ذاتية الاستضافة لـ GitHub Action والأنظمة الأساسية والبنى المدعومة، يرجى الاطلاع على "استضافة برامج التشغيل الخاصة بك" في وثائق GitHub (راجع موضوع استكشاف المزيد للاطلاع على ارتباط بهذا المستند).

توزيع

تتوفر تعليمات Terraform البرمجية الخاصة بهيكل المرجع هذا كتمكدس عينة في Oracle Cloud Infrastructure Resource Manager. يمكنك أيضًا تنزيل التعليمات البرمجية من GitHub، وتخصيصها لتتناسب مع متطلباتك المحددة.

  • النشر باستخدام عينة المكدس في Oracle Cloud Infrastructure Resource Manager:
    1. انقرتوزيع على Oracle Cloud

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

    2. حدد المنطقة التي تريد توزيع المكدس بها.
    3. اتبع الموجهات والتعليمات على الشاشة لتكوين المكدس.
    4. بعد تكوين المكدس، انقر على إجراءات Terraform، وحدد خطة.
    5. انتظر حتى إتمام الوظيفة، وراجع الخطة.

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

    6. إذا لم تكن هناك حاجة إلى أية تغييرات أخرى، ارجع إلى صفحة تفاصيل المكدس وانقر على إجراءات Terraform وحدد تطبيق.
  • النشر باستخدام تعليمات Terraform البرمجية في GitHub:
    1. انتقل إلى GitHub.
    2. استنساخ المستودع أو تنزيله إلى الكمبيوتر المحلي.
    3. اتبع التعليمات الواردة في مستند README.