تخطَّ إلى المحتوى

🏗️ شرح Terraform والبنية التحتية كرمز

فهم الوحدات (Modules) في Terraform

الدرس 5 من 15· ⏱ 1 دقائق قراءة

مع نموّ بنيتك، يصبح تكرار الكود مشكلة. الوحدات (Modules) هي حلّ Terraform لإعادة الاستخدام والتنظيم. تبني هذه الصفحة على المزوّدين.

ما هي الوحدة؟

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

كل إعداد Terraform هو في الحقيقة وحدة جذر (Root Module)، ويمكن أن يستدعي وحدات فرعية (Child Modules).

استدعاء وحدة

module "network" {
  source = "./modules/network"
  cidr   = "10.0.0.0/16"
}
  • source: مكان الوحدة (مجلّد محلّي، أو سجلّ، أو مستودع Git).
  • المعاملات الأخرى (مثل cidr) هي مدخلات تخصّص سلوك الوحدة.

المدخلات والمخرجات

الوحدة الجيّدة كصندوق واضح الواجهة:

  • المدخلات (Input Variables): قيم تمرّرها لتخصيص الوحدة (المنطقة، الحجم، النطاق).
  • المخرجات (Outputs): قيم تعيدها الوحدة لتستخدمها بقيّة إعدادك (مثل معرّف الشبكة المُنشأة).

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

سجلّ الوحدات (Module Registry)

لا حاجة لكتابة كل شيء من الصفر؛ يوفّر سجلّ Terraform العامّ وحدات جاهزة ومُختبَرة لأنماط شائعة (شبكات، قواعد بيانات...)، فتستفيد من خبرة المجتمع.

لماذا الوحدات؟

  • DRY (لا تكرّر نفسك): عرّف النمط مرّة واستخدمه مرارًا.
  • الاتّساق: بنية موحّدة عبر البيئات والمشاريع.
  • التنظيم: تقسيم بنية كبيرة إلى أجزاء مفهومة.

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

تعلّم تمرير القيم عبر المتغيّرات والمخرجات، وابدأ عمليًا في أوّل إعداد.

شرح فهم الوحدات (Modules) في Terraform — Terraform والبنية التحتية كرمز بالعربي
فهم الوحدات (Modules) في TerraformTerraform والبنية التحتية كرمز بالعربي · The Code Fix

هل كان هذا الدرس مفيدًا؟