0Pricing
Terraform Infrastructure as Code · درس

إنشاء وحدات قابلة لإعادة الاستخدام

تعلّموا إنشاء وحدات Terraform الخاصة بكم، وتعريف المدخلات والمخرجات والموارد لبناء إعدادات معيارية ومرنة.

إنشاء وحدات قابلة لإعادة الاستخدام درس مجاني في Terraform Infrastructure as Code على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Terraform Infrastructure as Code، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Terraform Infrastructure as Code 4 دروس في المجموع.

إنشاء وحدات Terraform الخاصة بكم

في الدرس السابق، تعلمنا استخدام وحدات Terraform الموجودة. والآن، لنتعمق في إنشاء وحداتكم القابلة لإعادة الاستخدام!

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

تنظيم ملفات الوحدة

وحدة Terraform هي في الأساس مجموعة من ملفات .tf المخزنة في دليل مخصص.

في أبسط صورها، سيحتوي دليل الوحدة على ما يلي:

  • variables.tf: يعرّف متغيرات الإدخال للوحدة.
  • main.tf: يحتوي على تعريفات الموارد الفعلية.
  • outputs.tf: يعرّف قيم الإخراج من الوحدة.

يمكنكم أيضًا تضمين versions.tf لمتطلبات الموفر، وREADME.md للتوثيق.

مدخلات الوحدة: المتغيرات

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

تُعرّف المتغيرات باستخدام كتلة variable، مع تحديد description وtype، واختياريًا قيمة default.

مثال: تعريف متغير لوحدة

إليكم طريقة قد تعرّفون بها متغيرًا لنوع مثيل داخل ملف الوحدة variables.tf:

# variables.tf
variable "instance_type" {
  description = "The EC2 instance type to use."
  type        = string
  default     = "t2.micro"
}

موارد الوحدة: المنطق الأساسي

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

ستضعون كتل الموارد هذه، مثل مثيل AWS EC2 أو حاوية S3، في ملف الوحدة main.tf.

ومن المهم أن الموارد داخل الوحدة ستستخدم غالبًا متغيرات الإدخال التي عرّفتموها.

تعريف الموارد باستخدام المدخلات

لنعرّف مثيل EC2 في main.tf باستخدام متغير instance_type الخاص بنا:

# main.tf
resource "aws_instance" "web_server" {
  ami           = "ami-0abcdef1234567890" # Example AMI ID
  instance_type = var.instance_type
  tags = {
    Name = "MyWebServer"
  }
}

مخرجات الوحدة: مشاركة المعلومات

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

على سبيل المثال، قد ترغبون في إخراج عنوان IP العام لمثيل EC2 أو ARN لحاوية S3.

تُعرّف المخرجات في outputs.tf باستخدام كتلة output.

تعريف قيمة مخرجات الوحدة

إليك كيفية تعريف مخرج لعنوان IP العام لمثيل EC2 الخاص بنا في outputs.tf:

# outputs.tf
output "instance_public_ip" {
  description = "The public IP address of the EC2 instance."
  value       = aws_instance.web_server.public_ip
}

استدعاء وحدتك الجديدة

بعد تعريف وحدتك، يمكنك استخدامها في تكوين الجذر (أو في وحدة أخرى) مثل أي وحدة أخرى.

ستحدد source (مسار دليل وحدتك)، وتمرر قيمًا إلى متغيرات الإدخال الخاصة بها.

# root_config/main.tf
module "my_web_server_module" {
  source        = "../my-ec2-module" # Path to your module
  instance_type = "t3.small"         # Override default
}

output "web_server_ip" {
  value = module.my_web_server_module.instance_public_ip
}

التحقق من مكونات الوحدة

لقد تعلّمت الملفات الأساسية في وحدة Terraform. ما الملف المستخدم بشكل أساسي لتعريف القيم التي يمكن تمريرها إلى الوحدة؟

مراجعة: إنشاء وحدات قابلة لإعادة الاستخدام

أحسنت! لقد أصبحت تعرف الآن كيفية إنشاء وحدات Terraform الخاصة بك.

  • الوحدات هي أدلة تحتوي على ملفات .tf.
  • استخدم variables.tf لقيم الإدخال.
  • ضع تعريفات الموارد في main.tf.
  • عرّف المخرجات في outputs.tf لإتاحة البيانات.

تُعد هذه المهارة ضرورية لبناء بنية أساسية قابلة للتوسع، وسهلة الصيانة، ومتسقة باستخدام التعليمات البرمجية.

الأسئلة الشائعة

هل درس «إنشاء وحدات قابلة لإعادة الاستخدام» مجاني؟

نعم — نص درس «إنشاء وحدات قابلة لإعادة الاستخدام» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Terraform Infrastructure as Code، انتقل إلى CoddyKit PRO. تتضمن دورة Terraform Infrastructure as Code 4 دروس في المجموع.

ماذا ستتعلم في «إنشاء وحدات قابلة لإعادة الاستخدام»؟

تعلّموا إنشاء وحدات Terraform الخاصة بكم، وتعريف المدخلات والمخرجات والموارد لبناء إعدادات معيارية ومرنة. تتمرن على Terraform Infrastructure as Code مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Terraform Infrastructure as Code؟

لا تُشترط خبرة سابقة. Terraform Infrastructure as Code على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «إنشاء وحدات قابلة لإعادة الاستخدام»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Terraform Infrastructure as Code هذا؟

نعم. كل درس في Terraform Infrastructure as Code يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. مقدمة إلى وحدات Terraform
  2. إنشاء وحدات قابلة لإعادة الاستخدام
  3. استخدام مساحات العمل للبيئات
  4. نشر الوحدات في سجل
← العودة إلى Terraform Infrastructure as Code