مختبر : تحليل وتصميم بنية EC2
أهداف المختبر
هذا المختبر هو تمرين على التصميم والتحليل. سوف تقوم بـ:
- ✅ تحليل البنى الحالية لـ EC2
- ✅ تحديد الممارسات الجيدة والأخطاء
- ✅ تصميم بنية خاصة بك
- ✅ تبرير اختياراتك التقنية
هذا المختبر لا يتطلب الوصول إلى AWS. ستعمل على الورق/المستند مع الرسوم البيانية والتحليلات.
المدة المقدرة
ساعتان
الجزء 1 : تحليل بنية موجودة
السيناريو : موقع تجارة إلكترونية
إليك البنية الحالية لموقع تجارة إلكترونية:
┌─────────────────────────────────────────────────────────────┐
│ RÉGION : us-east-1 │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ AZ : us-east-1a │ │
│ │ │ │
│ │ ┌─────────────────────────────────────────────┐ │ │
│ │ │ Instance EC2 : i-web001 │ │ │
│ │ │ Type : t2.micro │ │ │
│ │ │ AMI : Amazon Linux 2 │ │ │
│ │ │ IP Publique : 52.1.2.3 │ │ │
│ │ │ │ │ │
│ │ │ Applications : │ │ │
│ │ │ - Apache (port 80) │ │ │
│ │ │ - MySQL (port 3306) │ │ │
│ │ │ - Application PHP │ │ │
│ │ │ │ │ │
│ │ │ Security Group : sg-default │ │ │
│ │ │ Règles : │ │ │
│ │ │ - Inbound: SSH (22) - 0.0.0.0/0 │ │ │
│ │ │ - Inbound: HTTP (80) - 0.0.0.0/0 │ │ │
│ │ │ - Inbound: MySQL (3306) - 0.0.0.0/0 │ │ │
│ │ │ │ │ │
│ │ │ Stockage : 8 GB EBS (gp2) │ │ │
│ │ └─────────────────────────────────────────────┘ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
أسئلة التحليل
السؤال 1 : مشاكل الأمان
حدد على الأقل 3 مشاكل أمان في هذه البنية.
💡 تلميح
انظر إلى:
- قواعد Security Group
- موقع MySQL
- البنية ذات المثيل الواحد
السؤال 2 : مشاكل التوافر
حدد مخاطر التوافر في هذه البنية.
💡 تلميح
فكر في:
- عدد مناطق التوافر
- نقطة فشل واحدة (SPOF)
- قدرة التوسع
السؤال 3 : مشاكل الأداء
يصبح الموقع بطيئًا أثناء التخفيضات. ما هي الأسباب المحتملة؟
💡 تلميح
حلل:
- نوع المثيل
- فصل المكونات
- التخزين
الجزء 2 : تصحيح البنية
تمرين : اقتراح بنية أفضل
أعد تصميم البنية بتصحيح المشاكل المحددة.
قيود:
- ميزانية معتدلة (لا مثيلات عملاقة)
- يجب أن يكون الموقع متاحًا بنسبة 99.9%
- يجب أن تكون قاعدة البيانات آمنة
- يجب أن يدعم ذروة حركة المرور (التخفيضات)
قالب الإجابة
املأ هذا القالب:
نموذج البنية المقترحة
==============================
المنطقة : _____________
مناطق التوافر المستخدمة : ____________
المكون 1 : الخادم(ات) الويب
----------------------------
- عدد المثيلات : _____
- نوع المثيل : _____
- AMI : _____
- الموقع : _____
- Security Group :
- Inbound : _____
- Outbound : _____
المكون 2 : قاعدة البيانات
-----------------------------
- الخدمة/المثيل : _____
- النوع : _____
- الموقع : _____
- Security Group :
- Inbound : _____
المكون 3 : (اختياري)
-------------------------
- _____
التبريرات
--------------
1. لماذا هذا النوع من المثيل؟ _____
2. لماذا هذا التكوين الشبكي؟ _____
3. كيف تدير التوافر العالي؟ _____
الجزء 3 : مخطط البنية
تمرين : رسم البنية
أنشئ مخطط بنية احترافي يتضمن:
عناصر إلزامية:
- منطقة AWS
- على الأقل 2 مناطق توافر
- مثيلات EC2 (ويب)
- قاعدة البيانات (منفصلة)
- Security Groups مع قواعدها
- الاتصالات الشبكية
الأدوات المقترحة:
- Draw.io (مجاني) : https://app.diagrams.net/
- Lucidchart (مجاني محدود)
- PowerPoint/Google Slides
- ورقة وقلم (صورة مرفقة)
مثال على الهيكل
┌─────────────────────────────────────────────────────────────┐
│ RÉGION : __________ │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────────────────────────────┐ │
│ │ [Votre composant] │ │
│ └──────────────────────────────────────┘ │
│ │
│ ┌───────────────────┐ ┌───────────────────┐ │
│ │ AZ : ____ │ │ AZ : ____ │ │
│ │ │ │ │ │
│ │ [Instances] │ │ [Instances] │ │
│ │ │ │ │ │
│ └───────────────────┘ └───────────────────┘ │
│ │
│ ┌──────────────────────────────────────┐ │
│ │ [Base de données] │ │
│ └──────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
الجزء 4 : دراسة حالة - اختيار المثيلات
السيناريو أ : شركة ناشئة - MVP
السياق :
- تطبيق ويب بسيط (مدونة + نموذج اتصال)
- 100 زائر/يوم متوقع
- ميزانية محدودة جدًا (< $20/شهر)
- فريق من 2 مطورين
الأسئلة :
1. ما نوع المثيل الذي توصي به؟
2. أي منطقة؟
3. ما التنازلات التي تقوم بها؟
السيناريو ب : شركة متوسطة - تطبيق أعمال
السياق :
- ERP/CRM لـ 50 موظف
- قاعدة بيانات PostgreSQL (20 GB)
- الاستخدام من 8 صباحًا إلى 6 مساءً، الاثنين-الجمعة
- الحاجة إلى أداء ثابت
الأسئلة :
1. ما نوع المثيل للتطبيق؟
2. ما نوع المثيل لقاعدة البيانات؟
3. هل تحتاج إلى مثيلات Reserved؟
السيناريو ج : تجارة إلكترونية - الجمعة السوداء
السياق :
- موقع تجارة إلكترونية قائم
- حركة مرور عادية : 1000 زائر/ساعة
- الجمعة السوداء : 50000 زائر/ساعة (ذروة)
- كتالوج من 10000 منتج
الأسئلة :
1. كيف تدير ذروة حركة المرور؟
2. ما استراتيجية التوسع؟
3. ما أنواع المثيلات لكل مستوى من الحمل؟
الجزء 5 : جدول تلخيصي للاختيارات
أكمل هذا الجدول لكل سيناريو:
| المعيار | السيناريو أ | السيناريو ب | السيناريو ج |
|---|---|---|---|
| مثيل الويب | |||
| مثيل قاعدة البيانات | |||
| نموذج التسعير | |||
| عدد AZ | |||
| التكلفة المقدرة/شهر | |||
| التبرير الرئيسي |
تسليمات المختبر
المستند المطلوب
أنشئ مستندًا (Word، PDF أو Markdown) يحتوي على:
1. صفحة العنوان
- الاسم، التاريخ، عنوان المختبر
2. الجزء 1 : التحليل (20%)
- قائمة بـ 3+ مشاكل أمان
- قائمة بمخاطر التوافر
- تحليل مشاكل الأداء
3. الجزء 2 : التصحيح (25%)
- قالب مكتمل مع البنية الجديدة
- تبريرات مفصلة
4. الجزء 3 : المخطط (25%)
- مخطط بنية واضح وقابل للقراءة
- أسطورة المكونات
- Security Groups موثقة
5. الجزء 4 : دراسات الحالة (20%)
- إجابات للسيناريوهات الثلاثة
- تبريرات الاختيارات
6. الجزء 5 : الجدول (10%)
- جدول تلخيصي مكتمل
جدول التقييم
| المعيار | النقاط |
|---|---|
| تحديد المشاكل بشكل صحيح | 4 |
| بنية مصححة متماسكة | 5 |
| مخطط واضح وكامل | 5 |
| اختيارات المثيلات مبررة | 4 |
| جدول تلخيصي كامل | 2 |
| المجموع | 20 |
التصحيح - الجزء 1 (للاطلاع بعد إكمال التمرين)
📋 عرض التصحيح
مشاكل الأمان
-
SSH مفتوح للجميع (0.0.0.0/0)
- الخطر: هجمات القوة الغاشمة
- الحل: تقييد إلى IP المسؤول
-
MySQL مكشوف للعامة (0.0.0.0/0)
- الخطر: وصول غير مصرح به إلى قاعدة البيانات
- الحل: إغلاق المنفذ، وصول داخلي فقط
-
كل شيء على نفس المثيل
- الخطر: إذا تم اختراق المثيل، يتم اختراق كل شيء
- الحل: فصل الويب وقاعدة البيانات
-
استخدام SG الافتراضي
- الخطر: قواعد غير مدققة
- الحل: إنشاء SG محددة
مشاكل التوافر
-
منطقة توافر واحدة فقط
- الخطر: تعطل المنطقة = تعطل الموقع
- الحل: Multi-AZ
-
مثيل واحد (SPOF)
- الخطر: تعطل المثيل = تعطل الموقع
- الحل: مثيلات متعددة + موازن تحميل
-
لا يوجد نسخ احتياطي مرئي
- الخطر: فقدان البيانات
- الحل: لقطات EBS، RDS Multi-AZ
مشاكل الأداء
-
t2.micro صغير جدًا
- استنفاد أرصدة الاندفاع بسرعة
- الحل: t3.small كحد أدنى للإنتاج
-
MySQL على نفس المثيل
- تنافس على الموارد
- الحل: مثيل مخصص أو RDS
-
8 GB من التخزين غير كافٍ
- الحل: EBS gp3، أكبر
موارد للمختبر
أيقونات AWS
الوثائق
حاسبة الأسعار
تهانينا! لقد أكملت مختبر بنية EC2. هذه المهارات في التصميم أساسية لأي مهندس سحابي.