ما الذي ستشعرين به ، في يوم صيفي جيد ، سيبدو مركز بيانات به معداتك هكذا؟

مرحبا بالجميع! اسمي ديمتري سامسونوف ، أعمل كمسؤول نظام رائد في
Odnoklassniki . تُظهر الصورة أحد مراكز البيانات الأربعة حيث تم تثبيت المعدات التي تخدم مشروعنا. يوجد خلف هذه الجدران حوالي 4 آلاف وحدة من المعدات: الخوادم ، نظام تخزين البيانات ، معدات الشبكات ، إلخ. - تقريبا all من جميع معداتنا.
معظم الخوادم هي لينكس. هناك العديد من الخوادم على Windows (MS SQL) - إرثنا ، الذي رفضناه بشكل منتظم لسنوات عديدة.
لذلك ، في 5 يونيو 2019 في الساعة 14:35 ، أبلغ مهندسو أحد مراكز البيانات الخاصة بنا عن إنذار الحريق.
إنكار
14:45. تعتبر الحوادث الدخانية البسيطة في مراكز البيانات أكثر شيوعًا مما يبدو. كانت المؤشرات داخل القاعات طبيعية ، لذا كان رد فعلنا الأول هادئًا نسبيًا: لقد فرضنا حظراً على العمل مع الإنتاج ، أي على أي تغييرات على التكوينات ، وطرح إصدارات جديدة ، وما إلى ذلك ، باستثناء العمل المتعلق بإصلاح شيء ما.
غيظ
هل سبق لك أن حاولت أن تجد من رجال الإطفاء بالضبط مكان الحريق الذي وقع على السطح ، أو أن تحصل على سقف محترق بنفسك لتقييم الموقف؟ ما هي درجة الثقة في المعلومات الواردة من خلال خمسة أشخاص؟
14:50.
تم تلقي معلومات تفيد بأن الحريق يقترب من نظام التبريد . لكن هل سيأتي؟ يعرض مسؤول النظام المناوب حركة المرور الخارجية من جبهات مركز البيانات هذا.
في الوقت الحالي ، يتم تكرار جبهات جميع خدماتنا في ثلاثة مراكز بيانات ، ويتم استخدام التوازن على مستوى DNS ، والذي يسمح لك بإزالة عناوين مركز بيانات واحد من DNS ، وبالتالي حماية المستخدمين من المشاكل المحتملة مع الوصول إلى الخدمات. في حالة حدوث مشاكل بالفعل في مركز البيانات ، فإنه يترك التناوب تلقائيًا. يمكن العثور على مزيد من التفاصيل هنا: موازنة التحميل والتسامح مع الخطأ في Odnoklassniki.
لم يؤثر الحريق فينا بأي شكل من الأشكال - لم يتأثر المستخدمون أو المعدات. هل هو حادث؟ يحدد القسم الأول من وثيقة "خطة عمل الحوادث" مفهوم "الحادث" ، وينتهي القسم على النحو التالي:
" إذا كنت في شك ، حادث أم لا ، فهذا حادث! "14:53. تم تعيين منسق الحوادث.
المنسق هو الشخص الذي يتحكم في الاتصال بين جميع المشاركين ، ويقدر حجم الحادث ، ويستخدم "خطة عمل الحوادث" ، ويجذب الموظفين اللازمين ، ويرصد الانتهاء من الإصلاح ، والأهم من ذلك ، يفوض أي مهام. بمعنى آخر ، هذا هو الشخص الذي يدير العملية الكاملة للقضاء على الحادث.
مزاد علني
15:01. نبدأ في قطع اتصال الخوادم غير المرتبطة بالإنتاج.
15:03. قم بإيقاف تشغيل جميع الخدمات المحجوزة بشكل صحيح.
لا يشمل ذلك فقط الجبهات (التي لم يعد المستخدمون يقومون بتسجيل الدخول إليها) والخدمات الإضافية الخاصة بهم (منطق الأعمال ، ذاكرات التخزين المؤقت ، وما إلى ذلك) ، ولكن أيضًا قواعد البيانات المختلفة مع عامل النسخ المتماثل 2 أو أكثر (
كاساندرا ،
تخزين البيانات الثنائية ،
التخزين البارد ،
NewSQL ، وما إلى ذلك).
15:06.
تم تلقي معلومات تفيد بأن حريقًا يهدد إحدى قاعات مركز البيانات. ليس لدينا أجهزة في هذه القاعة ، لكن حقيقة أن الحريق يمكن أن ينتشر من السقف إلى القاعات يغير إلى حد كبير صورة ما يحدث.
(تبين فيما بعد أنه لم يكن هناك تهديد مادي للقاعة ، حيث كانت معزولة بإحكام عن السطح. كان التهديد لنظام التبريد في هذه القاعة فقط).
15:07. نحن نسمح بتنفيذ الأوامر على الخوادم في الوضع المتسارع دون عمليات فحص إضافية (
بدون آلة حاسبة مفضلة لدينا ).
15:08. درجة الحرارة في الغرف داخل الحدود الطبيعية.
15:12.
سجلت زيادة في درجة الحرارة في القاعات.15:13. تم إيقاف تشغيل أكثر من نصف الخوادم في مركز البيانات. نواصل.
15:16. تقرر إيقاف تشغيل جميع المعدات.
3:21 مساءً نبدأ في إيقاف تشغيل الطاقة على خوادم بدون جنسية دون إيقاف تشغيل التطبيق وأنظمة التشغيل بشكل صحيح.
15:23. تم تحديد مجموعة من المسؤولين عن MS SQL (يوجد عدد قليل منهم ، واعتماد الخدمات عليهم ليس رائعًا ، لكن الإجراء لاستعادة الصحة يستغرق وقتًا أطول وأكثر تعقيدًا من كاساندرا ، على سبيل المثال).
كآبة
15:25.
تم تلقي معلومات حول إيقاف الطاقة في أربع من 16 غرفة (رقم 6 و 7 و 8 و 9). في القاعات 7 و 8 هي معداتنا. لا يوجد المزيد من المعلومات حول غرفتنا (رقم 1 و 3).
عادة ، أثناء الحرائق ، يتم إيقاف الطاقة على الفور ، ولكن في هذه الحالة ، بفضل العمل المنسق لرجال الإطفاء والموظفين التقنيين في مركز البيانات ، تم إيقاف تشغيله ليس في كل مكان وليس على الفور ، ولكن إذا لزم الأمر.
(تبين فيما بعد أن الطاقة في القاعتين 8 و 9 لم تنقطع).
15:28. نبدأ في نشر قواعد بيانات MS SQL من النسخ الاحتياطية في مراكز البيانات الأخرى.
كم من الوقت سيستغرق؟ هل هناك نطاق ترددي كاف للشبكة لكامل المسار؟
15:37.
مغلق بعض أجزاء الشبكة.إدارة وشبكة الإنتاج معزولة جسديا عن بعضها البعض. إذا كانت شبكة الإنتاج متوفرة ، فيمكنك الذهاب إلى الخادم وإيقاف التطبيق وإيقاف تشغيل نظام التشغيل. إذا لم يكن متوفرًا ، فيمكنك المرور عبر IPMI وإيقاف التطبيق وإيقاف تشغيل نظام التشغيل. إذا لم تكن هناك شبكة ، فلا يمكنك فعل أي شيء. "شكرا لك قبعة!" سوف تفكر.
"على أي حال ، هناك الكثير من الالتباس" ، قد تعتقد أيضًا.
الشيء هو أن الخوادم حتى بدون حريق تولد كمية هائلة من الحرارة. بتعبير أدق ، عندما يكون هناك تبريد ، فإنها تولد الحرارة ، وعندما لا يكون هناك أي شيء ، فإنها تخلق جهنمًا جهنمًا ، والذي سيؤدي في أحسن الأحوال إلى إذابة جزء من المعدات وإيقاف الجزء الآخر ، وفي أسوأ الأحوال ... سيؤدي ذلك إلى نشوب حريق داخل القاعة ، والذي من شأنه أن يدمر كل شيء تقريبًا.

15:39. نحن إصلاح المشاكل مع قاعدة بيانات أسيوط.
قاعدة بيانات conf هي الواجهة الخلفية للخدمة التي تحمل الاسم نفسه ، والتي تستخدمها جميع تطبيقات الإنتاج لتغيير الإعدادات بسرعة. بدون هذه القاعدة ، لا يمكننا التحكم في البوابة ، ولكن يمكن أن تعمل البوابة نفسها.
15:41. تستشعر مستشعرات درجة الحرارة في أجهزة شبكة Core قراءات قريبة من الحد الأقصى المسموح. هذا هو الصندوق الذي يشغل حامل كامل ويضمن تشغيل جميع الشبكات داخل مركز البيانات.

15:42. تعقب المشكلة ويكي غير متوفرة ، قم بالتبديل إلى وضع الاستعداد.
هذا ليس إنتاجًا ، ولكن في حالة وقوع حادث ، قد يكون توفر أي قاعدة معرفة أمرًا بالغ الأهمية.
15:50. تم قطع اتصال أحد أنظمة المراقبة.
هناك العديد منهم ، وهم مسؤولون عن مختلف جوانب عمل الخدمات. يتم تكوين بعضها للعمل بشكل مستقل داخل كل مركز بيانات (أي أنها تراقب فقط مركز البيانات الخاص بها) ، في حين أن البعض الآخر يتكون من مكونات موزعة تتعايش بشفافية مع فقدان أي مركز بيانات.
في هذه الحالة ، توقف
نظام اكتشاف الحالات الشاذة في مؤشرات منطق العمل الذي يعمل في وضع الاستعداد الرئيسي عن العمل. التبديل إلى الاستعداد.
قبول
15:51. من خلال IPMI ، تم إيقاف تشغيل كافة الخوادم باستثناء MS SQL دون إيقاف تشغيل صحيح.
هل أنت مستعد لإدارة الخادم الشامل من خلال IPMI إذا لزم الأمر؟
لحظة اكتمال إنقاذ المعدات في مركز البيانات في هذه المرحلة. كل ما يمكن القيام به قد تم القيام به. يمكن لبعض الزملاء الاسترخاء.
16:13.
كانت هناك معلومات تفيد بأن أنابيب الفريون من مكيفات الهواء تنفجر على السطح - وهذا سوف يؤخر إطلاق مركز البيانات بعد القضاء على الحريق.16:19. وفقًا للبيانات الواردة من الكادر الفني لمركز البيانات ، توقفت زيادة درجة الحرارة في القاعات.
17:10. استعادة عمل قاعدة بيانات conf. الآن يمكننا تغيير إعدادات التطبيق.
لماذا هو مهم للغاية إذا كان كل شيء متسامح مع الأخطاء ويعمل حتى بدون مركز بيانات واحد؟
أولاً ، ليس كل شيء متسامح مع الخطأ. هناك العديد من الخدمات الثانوية التي لا تنجو من فشل مركز البيانات بشكل جيد ، وهناك قواعد في وضع الاستعداد الرئيسي. تتيح لك القدرة على إدارة الإعدادات القيام بكل ما هو ضروري لتقليل تأثير عواقب الحادث على المستخدمين حتى في الظروف الصعبة.
ثانياً ، أصبح من الواضح أن مركز البيانات في الساعات القليلة المقبلة لن يتعافى تمامًا ، لذلك كان من الضروري اتخاذ تدابير حتى لا يؤدي عدم توفر النسخ المتماثلة على المدى الطويل إلى مشكلات إضافية مثل تجاوز سعة القرص في مراكز البيانات المتبقية.
17:29. وقت البيتزا! لدينا أشخاص يعملون ، وليس روبوتات.

إعادة تأهيل
18:02. في الغرف رقم 8 (لدينا) ، 9 و 10 و 11 ، استقرت درجة الحرارة. في أحد الأجهزة التي لا تزال غير متصلة (رقم 7) ، توجد أجهزتنا ، وتستمر درجة الحرارة في الارتفاع.
18:31. أعطوا الضوء الأخضر لإطلاق المعدات في القاعات رقم 1 و 3 - النار لم تؤثر على هذه القاعات.
حاليا ، يتم إطلاق الخوادم في القاعات رقم 1 و 3 و 8 ، بدءا من الأكثر أهمية. يتحقق العملية الصحيحة لجميع الخدمات قيد التشغيل. لا تزال هناك مشاكل في الغرفة 7.
18:44. وجد الموظفون الفنيون في مركز البيانات أنه في القاعة رقم 7 (حيث توجد معداتنا فقط) ، لا يتم إيقاف تشغيل العديد من الخوادم. وفقًا لبياناتنا ، لا يزال هناك 26 خادمًا. بعد إعادة التدقيق ، نجد 58 خادمًا.
20:18. يقوم الموظفون الفنيون بمركز البيانات بنفخ الهواء في الغرفة دون تكييف الهواء عبر القنوات المتنقلة الموضوعة عبر الممرات.
23:08. سمحوا للمشرف الأول بالعودة إلى المنزل. يحتاج شخص ما إلى النوم ليلاً من أجل مواصلة العمل غدًا. بعد ذلك ، نصدر جزءًا آخر من المسؤولين والمطورين.
02:56. أطلقنا كل ما يمكن إطلاقه. نحن نفعل فحص كبير لجميع الخدمات مع autotests.

03:02 صباحًا تكييف الهواء في الماضي ، 7 استعادة القاعة.
03:36. جلبوا الجبهات في مركز البيانات بالتناوب في DNS. من هذه اللحظة ، تبدأ حركة مرور المستخدم في الوصول.
نحل معظم فريق المسؤولين المنزليين. لكننا نترك عدد قليل من الناس.
أسئلة وأجوبة صغيرة:
س: ماذا حدث من الساعة 18:31 إلى 02:56؟
ج: بعد "خطة عمل الحوادث" ، نطلق جميع الخدمات ، بدءًا من أهمها. في الوقت نفسه ، يقدم المنسق في الدردشة خدمة لمسؤول مجاني ، والذي يتحقق مما إذا كان نظام التشغيل والتطبيق قد بدأ ، أو إذا كان هناك أي أخطاء ، أو إذا كانت المؤشرات طبيعية. بعد اكتمال الإطلاق ، يبلغ الدردشة بأنه مجاني ويتلقى خدمة جديدة من المنسق.
بالإضافة إلى ذلك تم إعاقة العملية بسبب فشل الحديد. حتى إذا كان إيقاف تشغيل نظام التشغيل وإيقاف تشغيل الخوادم صحيحًا ، فإن بعض الخوادم لا تُرجع نظرًا لفشلها في التشغيل بشكل مفاجئ في محركات الأقراص أو الذاكرة أو الهيكل. مع فقدان الطاقة ، يزيد معدل الفشل.
س: لماذا لا يمكنك فقط بدء تشغيل كل شيء مرة واحدة ، ثم إصلاح ما يخرج عن المراقبة؟
ج: كل شيء يجب القيام به تدريجياً ، لأن هناك تبعية بين الخدمات. ويجب فحص كل شيء على الفور ، دون انتظار المراقبة - لأنه من الأفضل التعامل مع المشكلات على الفور ، وليس انتظار تفاقمها.
7:40 صباحًا ذهب آخر مسؤول (منسق) إلى الفراش. اكتمال عمل اليوم الأول.
8:09 صباحًا بدأ أول مطورين ومهندسين في مراكز البيانات والمسؤولين (بما في ذلك المنسق الجديد) أعمال الترميم.
09:37. بدأنا في رفع القاعة رقم 7 (الأخيرة).
في الوقت نفسه ، نستمر في استعادة ما لم ننته في غرف أخرى: استبدال الأقراص / الذاكرة / الخوادم ، وإصلاح كل ما يحترق في المراقبة ، والتبديل العكسي للأدوار في دوائر الاستعداد الرئيسية ، وأشياء صغيرة أخرى ، مع ذلك فهي كثيرة جدًا.
17:08. السماح لجميع العمل المنتظم مع الإنتاج.
21:45. اكتمال عمل اليوم الثاني.
09:45. اليوم هو الجمعة. لا تزال هناك بعض المسائل البسيطة في المراقبة. قبل نهاية الأسبوع ، الجميع يريد الاسترخاء. نواصل إصلاح كل ما هو ممكن على نطاق واسع. يتم تأجيل مهام المسؤول العادية التي يمكن تأجيلها. المنسق جديد.
15:40. فجأة ، تم إعادة تشغيل نصف مكدس Core من معدات الشبكة في مركز بيانات آخر. إزالة الجبهات من التناوب لتقليل المخاطر. لا يوجد أي تأثير للمستخدمين. في وقت لاحق اتضح أنه كان هيكل سيء. يعمل المنسق مع إصلاح عطلتين في وقت واحد.
17:17. تتم استعادة الشبكة في مركز بيانات آخر ، يتم فحص كل شيء. مركز البيانات في الدوران.
18:29. اكتمال عمل اليوم الثالث ، وبشكل عام ، التعافي من الحادث.
خاتمة
04/04/2013 ،
في يوم الخطأ 404 ،
نجت Odnoklassniki
من حادث كبير - لمدة ثلاثة أيام كانت البوابة غير متوفرة كليًا أو جزئيًا. طوال هذا الوقت ، قام أكثر من 100 شخص من مدن مختلفة ومن شركات مختلفة (شكرًا جزيلاً مرة أخرى!) عن بُعد ومباشرة في مراكز البيانات ، بإصلاح آلاف الخوادم يدويًا وتلقائيًا.
لقد استخلصنا الاستنتاجات. لمنع هذا من الحدوث مرة أخرى ، لقد قمنا ونواصل القيام بعمل مكثف حتى يومنا هذا.
ما هي الاختلافات الرئيسية بين الحادث الحالي و 404؟
- لدينا "خطة عمل طارئة". مرة واحدة كل ثلاثة أشهر ، نجري تمارين - نلعب حالة طوارئ ، يجب على مجموعة من المسؤولين (كلهم بدورها) القضاء عليها باستخدام "خطة عمل الطوارئ". كبار مسؤولي النظام يتناوبون العمل خارج دور المنسق.
- كل ثلاثة أشهر في وضع الاختبار ، قم بعزل مراكز البيانات (كلها بدورها) عبر LAN و WAN ، مما يسمح لك بتحديد الاختناقات في الوقت المناسب.
- عدد أقل من محركات الأقراص السيئة ، لأننا قمنا بتشديد المعايير: ساعات تشغيل أقل ، عتبات أكثر صرامة لـ SMART ،
- تم التخلي عنه بالكامل BerkeleyDB - قاعدة بيانات قديمة وغير مستقرة تتطلب الكثير من الوقت للتعافي من إعادة تشغيل الخادم.
- تقليل عدد الخوادم مع MS SQL وتقليل الاعتماد على ما تبقى.
- لدينا سحابة خاصة بنا - سحابة واحدة ، حيث نقوم بنشاط بترحيل جميع الخدمات خلال العامين الماضيين. تعمل السحابة على تبسيط دورة العمل بالكامل مع التطبيق ، وفي حالة وقوع حادث ، تقدم أدوات فريدة مثل:
- وقف الصحيح لجميع التطبيقات في نقرة واحدة.
- ترحيل تطبيق بسيط من خوادم فاشلة ؛
- الترتيب التلقائي (حسب أولوية الخدمات) لإطلاق مركز بيانات كامل.
أصبح الحادث الموصوف في هذه المقالة هو الأكبر منذ يوم 404. بالطبع ، ليس كل شيء بسلاسة. على سبيل المثال ، أثناء عدم إمكانية الوصول إلى أداة نسخ مركز البيانات في مركز بيانات آخر ، تعطل أحد الأقراص على أحد الخوادم ، أي أن واحدة فقط من النسخ المتماثلة الثلاثة في مجموعة كاساندرا كانت متاحة ، بسبب عدم تمكن 4.2٪ من مستخدمي تطبيقات الهاتف المحمول من تسجيل الدخول . في الوقت نفسه ، واصل المستخدمون المتصلون بالفعل العمل. في المجموع ، تم تحديد أكثر من 30 مشكلة وفقًا لنتائج الحادث - من الأخطاء الشائعة إلى عيوب بنية الخدمة.
لكن الفارق الرئيسي بين الحادث الحالي والحدث 404 هو أنه في الوقت الذي أزلنا فيه عواقب الحريق ، ما زال المستخدمون يقومون بإجراء المراسلات وإجراء مكالمات الفيديو في
Tamtam ولعب الألعاب والاستماع إلى الموسيقى وتقديم الهدايا لبعضهم البعض ومشاهدة مقاطع الفيديو والبرامج التلفزيونية والقنوات التلفزيونية في
حسنا ، وتدفق أيضا على
موافق لايف .
كيف تسير حوادثك؟