البحث في الموقع
المحتوى عن 'chef'.
-
مقدّمةChef هو عبارة عن أداة مفتوحة المصدر مكتوبة بلغة Ruby، يُستخدم كإطار عمل يسمح لك بأتمتة مهام إدارة خواديم الوب الخاصة بك، كما يسمح لك بنشر خواديم افتراضية خاصة (VPS) مُعدّة مسبقًا دون الحاجة إلى تذكّر كيفية ضبطها بالضبط. هذا الأمر مهم للغاية وتزداد أهميته تدريجيًا خاصةً أنه من الشائع امتلاك خواديم خاصة للاختبار، التطوير وإدارة قواعد البيانات بالإضافة لخواديم بيئة العمل الإنتاجية. كل واحدٍ منها له موارده وإعداداته الخاصة. إنّ عملية تثبيت وإعداد وتحديث وصيانة خادوم افتراضي خاص (VPS) منفرد تُعتبر عملية مُستهلكة جدًا للوقت. Chef يسمح لك أن تقوم بسهولة بأتمتة هذه المهام وتعديلها بحيث تناسب كل خادومٍ على حدى أوتوماتيكيًا. باختصار، Chef يسمح لك أن توفر الوقت والمال عن طريق توفير نظام يسهُل إعادة استخدامه لاحقًا. مطوروا Chef قاموا بتوفير سكربت (Script) سهل الاستخدام لتثبيته على توزيعة Ubuntu، ولكن المشكلة هي أن السكربت الذي قاموا بصناعته ليس قابلًا للاستخدام جيدًا مع إطار عمل Ruby on Rails، هذا الدليل سيرشدك إلى طريقة تثبيت بيئة Ruby حقيقية كاملة. ربما تتوقع أن نقوم بتثبيت Ruby عن طريق هذا الأمر: sudo apt-get install rubyولكن هذه الطريقة ليست مُستحسنة في الواقع، لأنه حتّى وإن كنتَ لا تستخدم أكثر من إصدار Ruby على نفس الخادوم الافتراضي الخاص (VPS)، فستواجه مشاكل بالتعامل مع تعارض أحجار روبي (Ruby gems) أو بعض المشاكل بالتعامل مع المشاريع التي تتطلب إصدارًا معينًا من حجر روبي (gem). مدير إصدارات روبي (RVM) يستطيع أن يحلّ هذه المشاكل بسهولة. ملاحظة: يمكنك استخدام rbenv عوضًا عن RVM أيضًا. اُختيرَ RVM لهذا الدليل لأنهما يتساويان بكل الأشياء التي نحتاجها حاليًا، من الأفضل أن تمتلك قوة إضافية ولا تحتاجها بدلًا من أنّ تكتشف أنك بحاجتها ولكن لا تستطيع الحصول عليها. الخطوة الأولى - كيفية تثبيت روبي مع مدير إصدارات روبي (RVM)يعتمد RVM على ثلاث أمور: Bash, Curl و Git. صدفة Bash مثبّتة افتراضيًا على توزيعة أوبونتو، لذا فإنه يتوجب عليك تثبيت كلٍ من Git و Curl فقط حاليًا عن طريق تطبيق الأمر التالي في الطرفية (Terminal): sudo apt-get install git-core curl الآن يمكنك تثبيت مدير إصدارات روبي (RVM) عن طريق الأمر: sudo \curl -L https://get.rvm.io | bash -s stable --ruby=1.9.3ستستغرق هذه العملية حوالي 5 إلى 10 دقائق تقريبًا (اعتمادًا على سرعة اتصالك بالوب بالإضافة إلى الوقت المُستَغرَق ريثما يتم بناء الشفرة المصدرية لروبي). ملاحظة: Chef يتعارض مع روبي 1.9، ولهذا فإننا نقوم بتثبيت روبي 1.9.3. يجب أن ترى الرسالة التالية عندما تكتمل العملية: * To start using RVM you need to run `source /usr/local/rvm/scripts/rvm` in all your open shell windows, in rare cases you need to reopen all shell windows. افعل ما يطلبه منك، فقط طبّق الأمر: source /usr/local/rvm/scripts/rvmالآن، تأكد من أن روبي تم تثبيتها بشكلٍ صحيح عن طريق الأمر: ruby -vإذا كانت توزيعتك من معمارية 32 بت فيجب أن ترى: ruby 1.9.3p448 (2013-06-27 revision 41675) [i686-linux]إمّا إذا كانت من معمارية 64 بت، فيجب أن ترى شيئًا مثل: ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux]الآن، تأكد من أنّ أحجار روبي (Ruby gems) مثبّتة بشكل صحيح عن طريق الأمر: gem -vيجب أن يتم عرض رقم الإصدار المثبّت مثل: 1.8.25إذا لم تكن مطور روبي أو إطار عمل Rails، فحينها قد ترغب بجعل الإصدار 1.9.3 من روبي هو الافتراضي حاليًا عن طريق الأمر: rvm use 1.9.3 --defaultملاحظة: هذا الأمر سيقوم بتجاهل أي إصدار مثبّت من قبل من روبي. الخطوة الثانية - كيفية تثبيت Chefتثبيت Chef الآن أصبح بالإمكان تنفيذه بسهولة وسرعة عن طريق الأمر: gem install chef --no-ri --no-rdoc وللتأكد من أنّ Chef مثبّت بالفعل طبّق: chef-solo -vوهو ما سيقوم بطباعة رقم الإصدار الحالي من Chef: Chef: 11.4.4 سنقوم أيضًا بتثبيت بعض الإضافات المفيدة ألا وهي: Knife-Solo, Berkshelf و Foodcritic. Knife-Solo هي مُلحق (plug-in) لأداة Knife الخاصة بـChef تجعل عملية إعداد الخواديم المفردة ممكنة باستخدام chef-solo. حيث أنّها تجعل عملية نشر الخواديم الصغيرة سهلة لأنها توفر عليك عناء تشغيل عميل Chef (يدعى chef-client) والذي بدوره يتطلب خادوم chef (يدعى chef-server). لتثبيته، طبّق الأمر التالي: gem install knife-solo --no-ri --no-rdoc Berkshelf هو مُلحَق يساعدك على كتابة وتحزيم كتب الطبخ (cookbooks وهي ملفات الإعداد الخاصة بإعدادات الخواديم) أو تحميلها باستخدام ملفاتٍ محلية أو مستودع Git أو خادوم Chef. عليكَ أولًا تثبيت بعض الاعتماديات التي يحتاجها Berkshelf ليتمكن من العمل: sudo apt-get install libxslt-dev libxml2-dev الآن لتثبيت Berkshelf، طبّق الأمر: gem install berkshelf --no-ri --no-rdoc وللتأكد من أنّ عملية التثبيت تمت بشكل صحيح، طبّق الأمر: berks -v وهو ما يجب أن يعطيك رقم الإصدار المثبّت مثل: Berkshelf (2.0.7) مُلحق Foodcritic يساعدك عن الكشف عن المشكلات في كتب الطهي الخاصة بـChef (تُدعى Chef Cookbooks). لتثبيته، طبّق الأمر: gem install foodcritic --no-ri --no-rdoc وكالمعتاد، للتأكد من عملية التثبيت: foodcritic -V ستحصل على: foodcritic 2.2.0ملاحظة: في حال كنتَ تتساءل، الخيارات --no-ri –no-rdoc هي ليتم تجنّب إنشاء الوثائق الخاصة بالمُلحقات. الخطوة التاليةهذا الدّرس شرحَ لك كيفية تثبيت Chef على بيئة روبي حقيقية لتكون مناسبة لعملية تطوير البرمجيات. كل شيء تقريبًا أصبحَ جاهزًا للبدء بعملية الأتمتة عن طريق إنشاء وصفاتِكَ الخاصة (recipes) أو باستخدام وصفاتٍ من طرفٍ ثالث (3rd party). ترجمة -وبتصرّف- للمقال: How To Install Chef and Ruby with RVM on a Ubuntu VPS