أساسيات إدارة الحالة
استوعبوا مفهوم حالة Terraform، وأهميتها في تتبّع الموارد المنشورة، وكيفية إدارة ملف الحالة المحلي.
أساسيات إدارة الحالة درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ما هي حالة Terraform؟
تُشبه حالة Terraform ذاكرةً للبنية الأساسية لديك. فهي لقطة للموارد التي يديرها Terraform.
فكّر فيها على أنها قاعدة بيانات بالغة الأهمية تتتبع ما أنشأه Terraform وما أعدّه في العالم الفعلي، أي لدى موفر السحابة لديك.
أهمية الحالة
الحالة مهمة لأنها تتيح لـ Terraform ما يلي:
- ربط الموارد: معرفة أي مورد سحابي فعلي يقابل كل كتلة مورد في إعداداتك.
- تتبع البيانات الوصفية: تخزين سمات الموارد غير الموجودة في إعداداتك، مثل المعرّفات أو عناوين IP.
- التخطيط للتغييرات: مقارنة الحالة المطلوبة، أي إعداداتك، بالحالة الحالية، أي ملف الحالة، لتحديد ما يجب إنشاؤه أو تحديثه أو إتلافه.
دور الحالة في سير العمل
عند تشغيل terraform apply، يطّلع Terraform أولًا على ملفات .tf لفهم ما تريده. ثم يستشير ملف الحالة لمعرفة ما هو موجود حاليًا.
ومن خلال مقارنة هذين الأمرين، ينشئ "خطة" للوصول إلى إعداد البنية الأساسية المطلوب. وبعد تطبيقها، يُحدّث ملف الحالة ليعكس الواقع الجديد.
التعرّف على `terraform.tfstate`
يخزّن Terraform حالته محليًا افتراضيًا في ملف باسم terraform.tfstate داخل دليل العمل.
هذا الملف مستند JSON يتضمن ربطًا شاملًا بين إعداداتك والموارد الفعلية.
موردنا الأول
لنستخدم null_resource بسيطًا لمعرفة كيفية إنشاء الحالة. لا ينشئ هذا المورد أي شيء في السحابة، لكن Terraform يواصل تتبعه.
احفظه باسم main.tf:
resource "null_resource" "my_example" {
triggers = {
always_run = timestamp()
}
}إنشاء ملف الحالة
أولًا، هيّئ Terraform، ثم طبّق الإعدادات لإنشاء المورد وملف terraform.tfstate.
شغّل هذه الأوامر في الطرفية:
terraform init
terraform apply --auto-approveسرد موارد الحالة
بعد اكتمال apply، سيصبح لديك ملف terraform.tfstate. ويمكنك فحص محتوياته باستخدام أوامر Terraform CLI.
استخدم terraform state list لعرض جميع الموارد التي تتتبعها الحالة:
terraform state listعرض تفاصيل المورد
للحصول على معلومات تفصيلية حول مورد محدد من ملف الحالة، استخدم terraform state show متبوعًا بعنوان المورد.
جرّب ذلك باستخدام null_resource لدينا:
terraform state show null_resource.my_exampleلا تعدّل الحالة يدويًا!
ملف terraform.tfstate مهم ومعقد. لا تعدّله يدويًا مطلقًا.
قد تؤدي التعديلات اليدوية إلى إفساد حالتك، مما يسبب:
- بنية أساسية غير متسقة.
- فقدان Terraform القدرة على تتبع الموارد.
- إتلاف الموارد أو إنشائها بصورة غير متوقعة.
استخدم دائمًا أوامر Terraform CLI، مثل terraform state mv، لمعالجة الحالة.
تحقق من إدارة الحالة
أي العبارات التالية حول حالة Terraform صحيحة؟
مراجعة إدارة الحالة
استكشفنا في هذا الدرس حالة Terraform، وهي مكوّن مهم لتتبع البنية الأساسية لديك.
- تعلمنا أن الحالة تربط إعداداتك بالموارد الفعلية.
- يُسمّى ملف الحالة المحلي
terraform.tfstate. - تساعد أوامر مثل
terraform state listوterraform state showعلى فحص الحالة. - لا تعدّل ملف الحالة يدويًا مطلقًا لتجنب إفساده.
يُعد فهم الحالة أمرًا أساسيًا لاستخدام Terraform بفعالية!
الأسئلة الشائعة
هل درس «أساسيات إدارة الحالة» مجاني؟
نعم — نص درس «أساسيات إدارة الحالة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «أساسيات إدارة الحالة»؟
استوعبوا مفهوم حالة Terraform، وأهميتها في تتبّع الموارد المنشورة، وكيفية إدارة ملف الحالة المحلي. تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «أساسيات إدارة الحالة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الموفّرون والموارد
- المتغيرات والمخرجات
- أساسيات إدارة الحالة
- الوحدات وإعادة استخدام التعليمات البرمجية