لماذا نُعيد تشغيل الخوادم
سؤال يُطرح بانتظام إلى حد ما هو ما إذا كان ينبغي إعادة تشغيل الخوادم بشكل روتيني، مثل مرة كل أسبوع، أم ينبغي السماح لها بالعمل لأطول فترة ممكنة لتحقيق أقصى قدر من "وقت التشغيل". بالنسبة لي الإجابة بسيطة - مع استثناءات نادرة، إعادة التشغيل المنتظمة هي الخيار الأنسب للخوادم.
كأي قاعدة، ثمة حالات لا تنطبق عليها. على سبيل المثال، بعض المؤسسات التي تشغّل أنظمة حيوية لا تملك هامشًا للتوقف ويجب أن تكون متاحة على مدار الساعة طوال الأسبوع. من الواضح أن مثل هذه الأنظمة لا يمكن إعادة تشغيلها بطريقة روتينية ببساطة. غير أن كون النظام بالغ الأهمية لدرجة أنه لا يمكن إيقافه أبدًا ينبغي أن يُطلق إنذارًا بأن هذا النظام هو نقطة فشل محتملة وربما ينبغي التفكير في كيفية التعامل مع فترات التوقف سواء كانت مخططة أم غير مخططة.
استثناء آخر هو أن بعض أنظمة AIX تحتاج إلى وقت تشغيل طويل، أكثر من بضعة أسابيع، للوصول إلى أقصى كفاءة لها إذ إن النظام يضبط نفسه ذاتيًا ويحتاج إلى وقت للحصول على معلومات الاستخدام وضبط نفسه وفقًا لذلك. يميل هذا إلى الاقتصار على خوادم قواعد البيانات الكبيرة نادرة التغيير وسيناريوهات الاستخدام المشابهة الأقل شيوعًا من المنصات الأخرى.
في تقنية المعلومات نتعبّد كثيرًا مفهوم "وقت التشغيل" - المدة التي يمكن للنظام العمل فيها دون الحاجة إلى إعادة تشغيل. لكن "وقت التشغيل" ليس مفهومًا يُضيف قيمة للعمل وتقنية المعلومات يجب أن تضع احتياجات العمل في الاعتبار دائمًا بدلًا من التركيز على مقاييس اصطناعية. المؤسسة لا تهتم بالمدة التي استطاع فيها الخادم الاستمرار دون إعادة تشغيل - فهي تهتم فقط بأن يكون الخادم متاحًا وجاهزًا حين يُحتاج إليه للمعالجة التجارية. هذان مفهومان مختلفان تمامًا.
بالنسبة لأي خادم تجاري عادي، هناك نافذة زمنية يحتاج فيها الخادم إلى التوافر لأغراض العمل ونافذة أخرى لا يُحتاج فيه إليه. قد تكون هذه النوافذ يومية أو أسبوعية أو شهرية، لكن نادرًا ما يكون الخادم قيد الاستخدام الفعلي على مدار الساعة دون استثناء.
كثيرًا ما أسمع أناسًا يقولون إن تشغيل نظام تشغيل X بدلًا من Y يُغنيهم عن إعادة التشغيل، لكن هذا ببساطة غير صحيح. ثمة سببان رئيسيان لإعادة التشغيل المنتظمة: التحقق من قدرة الخادم على إعادة التشغيل بنجاح وتطبيق التحديثات التي لا يمكن تطبيقها دون إعادة التشغيل.
تطبيق التحديثات هو السبب الذي تُعيد معظم المؤسسات التشغيل من أجله. تتلقى معظم أنظمة التشغيل تحديثات منتظمة تستلزم إعادة التشغيل لتصبح سارية المفعول. نظرًا لأن معظم التحديثات تصدر لأغراض الأمان والاستقرار، لا سيما تلك التي تستلزم إعادة التشغيل، فإن أهمية تطبيقها عالية إلى حد ما. ترك الخادم عرضة للخطر دون مسوّغ فقط للحفاظ على وقت التشغيل ليس أمرًا حكيمًا.
اختبار قدرة الخادم على إعادة التشغيل بنجاح هو ما يُغفَل كثيرًا. معظم الخوادم يُطبَّق عليها تغييرات بانتظام. قد تكون هذه التغييرات تحديثات أو تطبيقات جديدة أو تغييرات في الإعدادات أو تحديثات أو ما شابه ذلك. أي تغيير ينطوي على مخاطرة. مجرد كون الخادم سليمًا فور تطبيق التغيير لا يعني أن الخادم ولا التطبيقات التي تعمل عليه ستبدأ كما هو متوقع عند إعادة التشغيل.
إذا لم يُعَد تشغيل الخادم أبدًا فلن نعرف أبدًا ما إذا كان قادرًا على إعادة التشغيل بنجاح. بمرور الوقت سيزيد عدد التغييرات المُطبَّقة منذ آخر إعادة تشغيل. هذا بالغ الخطورة. ما نخشاه هو تراكم عدد كبير من التغييرات ربما كثير منها غير موثق ثم فشل إعادة التشغيل. عند تلك النقطة قد يكون تحديد التغيير المتسبب في فشل النظام عملية لا يمكن التغلب عليها. لا تغيير واحد للتراجع عنه ولا مسار معروف للاسترداد. هذا حين تبدأ الفوضى. بالطبع الخادم الذي لا يُعاد تشغيله عمدًا أكثر ترجيحًا لإعادة التشغيل بصورة غير مقصودة - مما يعني أن احتمال إعادة تشغيل فاشلة أكثر ترجيحًا وأكثر احتمالًا للحدوث أثناء الاستخدام الفعلي.
في حين أن إعادة التشغيل المنتظمة لا تستهدف تقليل وتيرة إعادات التشغيل الفاشلة - بل في الواقع تزيد من وقوع الحالات الفاشلة - فإن الغرض هو جعل هذه الحالات الفاشلة سهلة الإدارة من منظور "التغيير المعروف" والأهم من ذلك التحكم في وقت وقوع إعادات التشغيل للتأكد من حدوثها في الوقت الذي يكون فيه الخادم مخصصًا للصيانة ومصممًا للاختبار المكثف حتى تُكتشف المشكلات في الوقت الذي يمكن فيه معالجتها دون تأثير على العمل.
سمعت كثيرًا من مديري الأنظمة يقولون إنهم يتجنبون إعادات التشغيل في عطلة نهاية الأسبوع لأنهم لا يريدون الاضطرار للعمل في أيام الأحد بسبب فشل الخوادم في الرجوع إلى العمل بعد إعادة التشغيل. تلقيت كثيرًا من المكالمات التنبيهية صباح الأحد بسبب إعادة تشغيل فاشلة، لكن في كل مرة أتلقى فيها تلك المكالمة أشعر بالارتياح. أعرف أننا اكتشفنا المشكلة في وقت لا يتأثر فيه العمل ماليًا. لو لم يُعَد تشغيل ذلك الخادم خارج ساعات العمل، ربما لم يُكتشف أنه "غير قادر على الإقلاع" إلا حين يتعطل أثناء ساعات العمل الفعلية ويتسبب في خسارة إيرادات.
بفضل إعادات التشغيل المنتظمة في عطلات نهاية الأسبوع يمكننا اكتشاف الكوارث الوشيكة بأمان، وبفضل معرفتنا أن لدينا أسبوعًا واحدًا فقط من التغييرات للتحقيق فيها نستطيع بانتظام إصلاح المشكلات بجهد محدود في العموم وبثقة كبيرة بأننا نفهم التغييرات التي أُجريت قبل الحالة الفاشلة.
إعادات التشغيل المنتظمة تتعلق بحماية المؤسسة من الأعطال والتوقف الذي يمكن تخفيفه من خلال عمليات بسيطة وموثوقة للغاية.

