أخبار العالمألعابتقنيةسياحة و سفرصحة و جمالمال و أعمالمنوعات

Terraform vs Ansible

يُستخدم Terraform بشكل أساسي لتوفير البنية التحتية مثل إنشاء الموارد السحابية وتحديثها وإدارتها، بينما يتم استخدام Ansible لإدارة التكوين ونشر البرامج على البنية التحتية الحالية. هل يمكن استخدام Terraform مثل Ansible؟ نعم! يمكن لـ Terraform إجراء توفير البرامج ونشرها باستخدام موفري الخدمة “remote-exec”، ومع ذلك، من المهم ملاحظة أنه على الرغم من أن Terraform يمكنه القيام بذلك، إلا أنه ليس محور اهتمامه الأساسي ولا يوصى به عادةً لإدارة التكوين المستمر أو مهام نشر البرامج المعقدة. يعتبر Ansible أو Chef أو Puppet أكثر ملاءمة لتوفير البرامج ونشرها لمعالجة حالات التكوين ومعالجة الأخطاء. الاختلافات الرئيسية هي، تم تصميم Ansible ليكون عاجزًا، مما يعني أنه يمكن تشغيله عدة مرات دون تغيير النظام إذا تم تحقيق الحالة المطلوبة بالفعل. على سبيل المثال، تخيل أنك تريد تثبيت Nginx على خادم يستخدم Ansible. التشغيل الأول: يتحقق Ansible من تثبيت Nginx. إذا لم يكن الأمر كذلك، فإنه يقوم بتثبيته. التشغيل الثاني: الشيكات Ansible مرة أخرى. بما أن Nginx مثبت بالفعل، فإن Ansible لا يفعل شيئًا. وهذا يعني أنه يمكنك تشغيل قواعد اللعبة بأمان عدة مرات كما تريد، ولن تتغير حالة الخادم بعد أول تشغيل ناجح. ———————— في Terraform، لا يكون مقدمو الخدمة عاجزين حسب التصميم. إذا فشل الموفر، فقد تحتاج إلى معالجة المشكلة يدويًا أو إعادة إنشاء البنية الأساسية. على سبيل المثال، تخيل أنك تستخدم Terraform لإنشاء مثيل EC2 ثم تشغيل مزود تنفيذي عن بعد لتثبيت Nginx: التشغيل الأول: يقوم Terraform بإنشاء مثيل EC2 وتثبيت Nginx عبر الموفر. التشغيل الثاني: يرى Terraform أن مثيل EC2 قد تم إنشاؤه بالفعل، لذا فهو لا يفعل شيئًا لهذا الجزء. ومع ذلك، فهو لا يعرف ما إذا كان Nginx لا يزال مثبتًا لأنه لا يتتبع حالة البرنامج. سيتم تشغيل موفر exec عن بعد مرة أخرى، ومن المحتمل أن يتم إعادة تثبيت Nginx أو إعادة تكوينه، مما قد يسبب مشكلات أو سلوكًا غير متوقع. أيضًا عندما يتعلق الأمر بمعالجة الأخطاء واستعادتها، يفتقر Terraform إلى آليات مدمجة للتعامل مع أخطاء نشر البرامج بأمان من خلال توفير البنية التحتية. بينما يوفر Ansible آليات واضحة لمعالجة الأخطاء واستردادها لعمليات نشر البرامج.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى