بينما كان الجميع يحتفل بعيد ميلادي ، قمت بإصلاح الكتلة حتى الصباح - وركب المطورون أخطائهم علي





إليكم قصة غيرت منهجي في عمل Devops إلى الأبد. مرة أخرى في أوقات ترسانات بناء السفن ، قبل وقت طويل ، قبلهم بوقت طويل ، عندما كنت أنا والرجال أفكر في عملنا والعمل الحر على أوامر عشوائية ، وقع عرض واحد في عربتي.



كانت الشركة التي كتبت في تحليلات البيانات. لقد عالجت آلاف الطلبات كل يوم. جاؤوا إلينا بالكلمات: رفاق ، لدينا ClickHouse ونريد أتمتة تكوينه وتثبيته. نريد تخزين Ansible و Terraform و Docker وكل هذا في gita. نريد مجموعة من أربع عقد مع نسختين متماثلتين في كل منهما.



طلب قياسي ، هناك العشرات منهم ، وتحتاج إلى نفس الحل القياسي الجيد. قلنا "حسنًا" وفي غضون 2-3 أسابيع أصبح كل شيء جاهزًا. قبلوا الوظيفة وبدأوا في الانتقال إلى مجموعة Klickhaus الجديدة باستخدام فائدتنا.



لم يكن أحد معهم يريد أو يعرف كيف يتلاعب بـ Klickhaus. ثم اعتقدنا أن هذه كانت مشكلتهم الرئيسية ، وبالتالي أعطت محطة خدمة الشركة الضوء الأخضر لفريقي لأتمتة العمل قدر الإمكان حتى لا نذهب إلى هناك مرة أخرى.



رافقنا هذه الخطوة ، ظهرت مهام أخرى - لإعداد النسخ الاحتياطية والمراقبة. في نفس الوقت ، اندمجت محطة خدمة هذه الشركة في مشروع آخر ، تاركًا لنا قائد واحد منا - ليونيد. لم تكن لينيا رجلاً موهوبًا جدًا. مطور بسيط تم تعيينه فجأة مسؤولاً عن Klickhaus. يبدو أن هذه كانت مهمته الأولى لقيادة شيء ما ، ومن الشرف المتراكم كان يعاني من حمى النجوم.



معا بدأنا النسخ الاحتياطية. عرضت نسخ البيانات الأصلية احتياطيًا على الفور. فقط خذ واضغط وألق بأناقة في بعض c3. البيانات الخام هي الذهب. كان هناك خيار آخر - لعمل نسخة احتياطية من الجداول نفسها في Klickhaus ، باستخدام إفريز ونسخ. لكن لينيا توصل إلى حل خاص به.



أعلن أننا بحاجة إلى مجموعة Klickhaus ثانية. ومن الآن فصاعدًا ، سنكتب البيانات إلى مجموعتين - الرئيسية والنسخة الاحتياطية. أخبرته ، كما يقولون ، ليون ، لن يكون نسخة احتياطية ، بل نسخة متماثلة نشطة. وإذا بدأت البيانات في الضياع أثناء الإنتاج ، فستكون النسخة الاحتياطية كما هي.



لكن ليونيا أمسكت العجلة بحزم ورفضت الاستماع إلى حججي. لقد أمضينا وقتًا طويلاً معه في غرفة الدردشة ، لكن لم يكن هناك شيء نفعله - كانت لينيا تقود المشروع ، وكنا فقط موظفين من الشارع.



راقبنا حالة الكتلة وفرضنا رسومًا على عمل المسؤولين فقط. إدارة نظيفة لـ Klickhaus دون الدخول في البيانات. كانت المجموعة متاحة ، وكانت الأقراص على ما يرام ، وكانت العقد على ما يرام.



ما زلنا لا نعرف أننا تلقينا هذا الأمر بسبب سوء فهم مروع داخل فريقهم.



كان المدير غير سعيد لأن Klickhaus كان بطيئًا وأحيانًا ضاعت البيانات. قام بتعيين مهمة STO الخاصة به لمعرفة ذلك. لقد اكتشفها بأفضل ما في وسعه ، وخلص إلى أنك تحتاج فقط إلى أتمتة Klickhaus - وهذا كل شيء. ولكن بمجرد أن أصبح واضحًا ، لم يكونوا بحاجة إلى فريق من المطورين على الإطلاق.



كل هذا كان مؤلمًا جدًا جدًا. والأكثر هجومًا ، كان يوم عيد ميلادي.






مساء الجمعة. حجزت طاولة في بار النبيذ المفضل لدي واتصلت بأصدقائي.



قبل المغادرة تقريبًا ، نحصل على مهمة لإجراء تغيير ، نقوم بذلك ، كل شيء على ما يرام. وأكد كليكهاوس ، تعديل مرت. لقد اجتمعنا بالفعل في حانة ، وكتبوا لنا أنه لا توجد بيانات كافية. كانوا يحسبون - يبدو أن كل شيء كافٍ. وانطلقوا للاحتفال.



كان المطعم صاخبًا ليلة الجمعة. بعد طلب المشروبات والطعام ، استرخوا على الأرائك. طوال هذا الوقت ، امتلأ فترتي ببطء بالرسائل. لقد كتبوا شيئًا عن نقص البيانات. ظننت - الصباح أحكم من المساء. خاصة اليوم.



أقرب إلى الحادي عشر ، بدأوا في الاتصال. كان رئيس الشركة ... "على الأرجح ، قرر أن يهنئني ،" - فكرت بتردد شديد ، التقطت الهاتف.



وسمعت شيئًا مثل: "لقد أفسدت بياناتنا! أنا أدفع لك ، لكن لا شيء يعمل! لقد كنت مسؤولاً عن النسخ الاحتياطية ، ولم تفعل شيئًا! دعونا نصلحها! " - فقط أكثر خشونة.



- أنت تعرف ماذا ، اذهب اللعنة! إنه عيد ميلادي اليوم ، وسأشرب الآن ، لا تفعل الهراء والعصي محلية الصنع في يونيو!



هذا ما لم أقله. بدلاً من ذلك ، أخرج الكمبيوتر المحمول الخاص به وشرع في العمل.



لا ، لقد قصفت ، قصفت كالجحيم صببت مادة كاوية "قلت لك ذلك" في الدردشة - لأن النسخ الاحتياطي ، الذي لم يكن نسخة احتياطية ، بالطبع ، لم يحفظ أي شيء.



لقد توصلت أنا والرجال إلى كيفية إيقاف التسجيل يدويًا والتحقق من كل شيء. تأكد حقًا من عدم كتابة بعض البيانات.



توقفنا عن التسجيل وأحصينا عدد الأحداث التي كانت موجودة في اليوم. لقد ألقوا المزيد من البيانات ، لم يتم تسجيل سوى ثلثها. ثلاث شظايا من نسختين متماثلة. قمت بإدخال 100،000 سطر - 33،000 غير مكتوبة.



كان هناك ارتباك تام. أرسل الجميع بعضهم البعض ليمارس الجنس مع بعضهم البعض بدورهم: ذهبت لينيا إلى هناك أولاً ، وتبعتها أنا ومؤسس الشركة. فقط SRT المنضمين حاولوا جلب مكالماتنا بالصراخ والمراسلات في اتجاه إيجاد حل للمشكلة.



ما كان يحدث بالفعل - لم يفهم أحد



لقد شعرت أنا والرجال بالذعر عندما أدركنا أن ثلث البيانات لم يتم تسجيلها فحسب - بل ضاعت! اتضح أن الترتيب في الشركة كان على النحو التالي: بعد الإدراج ، تم حذف البيانات نهائيًا ، وتم تقطيع الأحداث على دفعات. تخيلت كيف يحول سيرجي كل هذا إلى روبل ضائع.



عيد ميلادي كان أيضًا ذاهبًا إلى كومة القمامة. جلسنا في البار وتوصلنا إلى أفكار ، في محاولة لحل اللغز الذي تم طرحه. لم يكن سبب سقوط Klickhaus واضحًا. ربما تكون شبكة ، ربما تتعلق بإعدادات Linux. نعم ، أي شيء ، بدت الفرضيات كافية.



لم أقسم قسم التطوير ، ولكن كان من غير الصدق ترك اللاعبين على الطرف الآخر من الخط - حتى لو ألقوا باللوم علينا في كل شيء. كنت متأكدًا بنسبة 99٪ أن المشكلة لم تكن في قراراتنا وليست من جانبنا. لا تزال فرصة 1٪ التي أخفقنا فيها محترقة من القلق. ولكن بغض النظر عن الجانب الذي كانت المشكلة فيه ، كان لا بد من إصلاحها. ترك العملاء بمثل هذا التسريب الرهيب للبيانات أمر قاسي للغاية.



حتى الثالثة صباحًا كنا نعمل على طاولة مطعم. رمي الأحداث ، إدراج حدد - وقاد لملء الفراغات. عندما تقوم بإفساد البيانات ، يتم ذلك على النحو التالي - تأخذ متوسط ​​البيانات للأيام السابقة وتدرجها في البيانات التي تم استغلالها.



بعد الثالثة صباحًا ، ذهبت أنا وصديقي إلى منزلي ، وأمرنا بيفاسك من سوق الكحول. كنت أجلس مع جهاز كمبيوتر محمول ومشاكل Klickhaus ، كان أحد الأصدقاء يخبرني بشيء. نتيجة لذلك ، بعد ساعة شعر بالإهانة لأنني كنت أعمل ، ولم أشرب الجعة معه ، وغادر. كلاسيكي - كان صديقًا لـ Devops.



بحلول الساعة 6 صباحًا ، أعدت إنشاء الجدول وبدأت البيانات تمتلئ. كل شيء يعمل دون خسارة.






ثم كان الأمر صعبًا. ألقى الجميع باللوم على بعضهم البعض لفقدان البيانات. إذا كان هناك خطأ جديد ، فأنا متأكد من أن تبادل إطلاق النار سيبدأ



في هذه المواقف ، بدأنا أخيرًا في فهم أن الشركة اعتقدت أننا الأشخاص الذين يعملون مع البيانات ويراقبون هيكل الجداول. لقد خلطوا بين المديرين و dibieys. وقد جاؤوا ليسألونا ليس مثل المسؤولين.



شكواهم الرئيسية هي - ما اللعنة ، لقد كنت مسؤولاً عن النسخ الاحتياطية ولم تقم بعملها بشكل طبيعي ، لقد تابعت البيانات. وكل هذا مع إعادة لف كش ملك.



أردت العدالة. بحثت عن المراسلات وأرفقتها جميعًا بلقطات شاشة ، حيث قام ليونيد بكل قوته بعمل النسخة الاحتياطية التي تم إجراؤها. أخذ STO جانبنا بعد مكالمتي الهاتفية. بعد ذلك ، اعترف لينيا بذنبه.



من ناحية أخرى ، لم يرغب رئيس الشركة في إلقاء اللوم على شعبه. الشاشات والكلمات لم تعمل عليه. كان يعتقد أنه نظرًا لأننا كنا خبراء هنا ، كان علينا إقناع الجميع والإصرار على قرارنا. على ما يبدو ، كانت مهمتنا هي تعليم لينيا ، علاوة على ذلك ، تجاوزه ، المعين من قبل مدير المشروع ، للوصول إلى النقطة الرئيسية وإخراج كل شكوكنا شخصيًا حول مفهوم النسخ الاحتياطية.



كانت شاتيك مليئة بالكراهية والعدوان الخفي وغير المقنع. لم أكن أعرف ماذا أفعل. كل شيء توقف. وبعد ذلك تم إخباري بأسهل طريقة - الكتابة إلى المدير في ملاحظة شخصية وتحديد موعد معه. فاسيا ، الناس في الحياة ليسوا الكلاب السلوقية كما هم في الدردشة. رد الرئيس على رسالتي: تعال ، بلا شك.






كان أطرف لقاء في حياتي المهنية. حليف موكلي - محطة الخدمة - لم يتمكن من إيجاد الوقت. ذهبت إلى الاجتماع مع الرئيس ولينا.



مرة بعد مرة كنت أعيد حوارنا المحتمل في رأسي. تمكنت من الوصول كثيرًا مقدمًا ، قبل نصف ساعة. بدأت متوترة ، دخنت 10 سجائر وفهمت كل شيء - أنا ، اللعنة ، وحدي. لن أتمكن من إقناعهم. ودخلت المصعد.



بينما كان يتسلق ، ضرب بقداحة حتى كسرها.



نتيجة لذلك ، لم تكن لينيا في الاجتماع. وقد أجرينا حديثًا رائعًا عن كل شيء مع الموضوع الرئيسي! أخبرني سيرجي عن ألمه. لم يكن يريد "أتمتة Clickhouse" - لقد أراد أن تعمل الاستعلامات.



لم أرَ ماعزًا ، بل رأيت رجلاً طيبًا قلقًا بشأن عمله ، ومنغمسًا في العمل على مدار الساعة طوال أيام الأسبوع. غالبًا ما تجذبنا الدردشة الأشرار والأوغاد والأغبياء. لكن في الحياة هؤلاء أناس مثلك تمامًا.



لم يكن سيرجي بحاجة إلى اثنين من المطورين للتأجير. تبين أن المشكلة التي واجهوها أكبر بكثير.



قلت إن بإمكاني حل مشاكله - إنها مجرد وظيفة مختلفة تمامًا ، ولدي صديقة من DIBI لها. إذا اكتشفنا في البداية أن هذه صفقة بالنسبة لهم ، لكنا تجنبنا الكثير. متأخرًا ، لكننا أدركنا أن المشكلة تكمن في العمل السيء مع البيانات ، وليس في البنية التحتية.



تصافحنا ، وقد تم رفع الرسوم مرتين ونصف ، لكن بشرط - أنا أتحمل كل الأشياء الإباحية مع بياناتهم و Klickhaus بنفسي. في المصعد ، اتصلت بنفس dibieyschik Max وربطته بالعمل. كان من الضروري تجريف الكتلة بأكملها.






كان Treshak بكميات كبيرة في المشروع المعتمد. بدءا من "النسخ الاحتياطي" المذكورة. اتضح أن نفس الكتلة "الاحتياطية" لم يتم عزلها. لقد اختبروا كل شيء عليها ، وأحيانًا سمحوا لها بالإنتاج.



قام مطورو الموظفين بتكوين "إدراج" بياناتهم المخصصة. عملت على النحو التالي: ملفات دفعية ، وتشغيل برنامج نصي ودمج البيانات في لوحة. لكن المشكلة الرئيسية كانت أنه تم قبول كمية هائلة من البيانات لطلب واحد بسيط. تم الانضمام إلى طلب البيانات في الثانية. كل ذلك من أجل رقم واحد - المبلغ في اليوم.



استخدم المطورون الداخليون أداة التحليلات بشكل غير صحيح. ذهبوا إلى الجرافانا ، وكتبوا طلبهم الملكي. تخلصت من البيانات في أسبوعين. اتضح أنه رسم بياني جميل. ولكن في الواقع ، كان طلب البيانات يجري كل 10 ثوانٍ. كل هذا تراكم في قائمة انتظار ، لأن Klickhaus ببساطة لم يأخذ المعالجة. كان هنا السبب الرئيسي. لا شيء يعمل في grafan ، كانت الطلبات في قائمة الانتظار ، وكانت البيانات القديمة غير ذات الصلة تصل باستمرار.



أعدنا تكوين المجموعة ، وأعدنا تصميم الملحق. أعاد المطورون الداخليون كتابة "الإدراج" ، وبدأوا في تجزئة البيانات بشكل صحيح.



أجرى ماكس تدقيقًا كاملاً للبنية التحتية. لقد أوجز خطة للانتقال إلى خلفية كاملة. لكن هذا لم يناسب الشركة. لقد توقعوا من ماكس سرًا سحريًا من شأنه أن يسمح لهم بالعمل بالطريقة القديمة ، ولكن بشكل فعال فقط. كانت لينيا لا تزال مسؤولة عن المشروع ، ولم تتعلم شيئًا. من كل ما تم اقتراحه ، اختار البديل مرة أخرى. كالعادة ، كان القرار الأكثر انتقائية ... جرأة. اعتقد ليونيا أن شركته لها مسار خاص. شائكة ومليئة بالجبال الجليدية.



في الواقع ، افترقنا عن هذا - فعلنا ما في وسعنا.






مع مليئة بالأقماع ، ومن الحكمة بهذه القصة ، فتحنا أعمالنا الخاصة وشكلنا عدة مبادئ لأنفسنا. لن نبدأ العمل الآن كما في ذلك الوقت.



بعد هذا المشروع ، انضم إلينا Max ، مشغل دبيان ، وما زلنا نعمل بشكل رائع معًا. علمت Case with Klickhaus كيفية إجراء تدقيق كامل وشامل للبنية التحتية قبل بدء العمل. نتعمق في كيفية عمل كل شيء ، وعندها فقط نقبل المهام. وإذا سارعنا في وقت سابق على الفور إلى صيانة البنية التحتية ، فنحن الآن نقوم أولاً بمشروع لمرة واحدة ، مما يساعد على فهم كيفية جعله يعمل.



ونعم ، نتجاوز المشاريع ذات البنية التحتية الرديئة. حتى لو كان مقابل الكثير من المال ، حتى لو كان للصداقة. ليس من المربح تشغيل المشاريع المريضة. ساعدنا هذا الإدراك على النمو. إما مشروع لمرة واحدة لترتيب البنية التحتية ثم عقد خدمة ، أو نحن فقط نطير. بعد جبل جليدي آخر.



ملاحظة: إذا كان لديك أي أسئلة حول البنية التحتية الخاصة بك ، فلا تتردد في ترك طلب .



لدينا عمليتا تدقيق مجانيتان شهريًا ، وربما يكون مشروعك من بينها.



All Articles