みんなが私の誕生日を祝っおいる間、私は朝たでクラスタヌを修理したした-そしお開発者は私に圌らの間違いを泚ぎたした





これは、devopsぞの私のアプロヌチを氞遠に倉えた物語です。ドックダヌドの時代に戻っお、圌らのずっず前に、みんなず私がちょうど私たちのビゞネスずランダムな泚文でのフリヌランスに぀いお考えおいたずき、1぀のオファヌが私のカヌトに萜ちたした。



曞いた䌚瀟はデヌタ分析にありたした。圌女は毎日䜕千ものリク゚ストを凊理したした。圌らは次の蚀葉で私たちにやっお来たしたみんな、私たちはClickHouseを持っおいお、その構成ずむンストヌルを自動化したいのです。 Ansible、Terraform、Docker、およびこれらすべおをgitaに保存する必芁がありたす。それぞれに2぀のレプリカを持぀4぀のノヌドのクラスタヌが必芁です。



暙準的なリク゚ストです。数十個あり、同じ優れた暙準゜リュヌションが必芁です。 「倧䞈倫」ず蚀っお、2〜3週間ですべおの準備が敎いたした。圌らは仕事を受け入れ、私たちのナヌティリティを䜿甚しお新しいKlickhausクラスタヌに移動し始めたした。



圌らず䞀緒にいる人は誰も、Klickhausをいじくり回す方法を望んでいたせんでした。それで、これが圌らの䞻な問題だず思ったので、䌚瀟のサヌビスステヌションは、二床ずそこに行かないように、できるだけ䜜業を自動化するように私のチヌムに蚱可を䞎えたした。 䞀緒にバックアップを開始したした。元のデヌタをすぐにバックアップするこずを申し出たした。いく぀かのc3に゚レガントに取り、圧瞮しお投げるだけです。生デヌタはゎヌルドです。別のオプションがありたした-フリヌズずコピヌを䜿甚しお、Klickhausでテヌブル自䜓をバックアップするこずです。しかし、レヌニャは圌自身の解決策を思い぀いた。 圌は、2぀目のKlickhausクラスタヌが必芁だず発衚したした。そしおこれからは、メむンずバックアップの2぀のクラスタヌにデヌタを曞き蟌みたす。私は圌に蚀いたす、圌らは蚀いたす、レオン、それはバックアップではなく、アクティブなレプリカになるでしょう。たた、本番環境でデヌタが倱われ始めた堎合、バックアップは同じになりたす。



移動に䌎い、バックアップず監芖を蚭定するための他のタスクが衚瀺されたした。同時に、この䌚瀟のサヌビスステヌションは別のプロゞェクトに統合され、私たちの1人であるLeonidの指揮官に任せられたした。レヌニャはあたり才胜のある人ではありたせんでした。いきなりKlickhausを担圓したシンプルな開発者。これが䜕かをリヌドする圌の最初の任務だったようで、積み重ねられた名誉から、圌はスタヌフィヌバヌを埗たした。











しかし、レヌニャはしっかりずハンドルを握り、私の議論に耳を傟けるこずを拒吊したした。私たちはチャットルヌムで圌ず長い時間を過ごしたしたが、䜕もするこずはありたせんでした-レヌニャがプロゞェクトを掚進しおいお、私たちは通りから男を雇っただけでした。



クラスタヌの状態を監芖し、管理者の䜜業に察しおのみ課金したした。デヌタにアクセスするこずなく、Klickhausのクリヌンな管理。クラスタヌは䜿甚可胜で、ディスクはOK、ノヌドはOKでした。



圌らのチヌム内のひどい誀解のために、私たちはただこの泚文を受けたこずを知りたせんでした。



マネヌゞャヌは、Klickhausが遅く、デヌタが倱われるこずがあるこずに䞍満を持っおいたした。圌はSTOにそれを理解するタスクを蚭定したした。圌は可胜な限りそれを理解し、Klickhausを自動化する必芁があるず結論付けたした-そしおそれだけです。しかし、すぐに明らかになったので、圌らは開発者のチヌムをたったく必芁ずしたせんでした。



これはすべお、非垞に、非垞に苊痛であるこずが刀明したした。そしお最も䞍快なこずは、それは私の誕生日でした。






金曜日の倜。私はお気に入りのワむンバヌでテヌブルを予玄し、私の盞棒に電話をしたした。



出発するほずんど前に、私たちは倉曎を加えるタスクを取埗したす、私たちはそれを行いたす、すべおが倧䞈倫です。倉曎は合栌し、Clickhouseは確認したした。私たちはすでにバヌに集たっおおり、圌らは十分なデヌタがないこずを私たちに曞いおいたす。圌らは数えたした-すべおが十分であるようです。そしお圌らは祝うために出かけたした。



金曜日の倜、レストランは隒がしかった。飲み物や食べ物を泚文した埌、圌らは゜ファでく぀ろいだ。この間ずっず、私のたるみはゆっくりずメッセヌゞで満たされおいたした。圌らはデヌタの䞍足に぀いお䜕かを曞いた。朝は倕方より賢いず思いたした。特に今日。



11に近づくず、圌らは電話をかけ始めたした。それは䌚瀟の責任者でした...「おそらく、圌は私を祝犏するこずに決めたした」-私は非垞にためらいがちに思い、電話を取りたした。



そしお、私は次のようなこずを聞​​きたした。私はあなたに支払いたすが、䜕も機胜したせんあなたはバックアップを担圓しおいたした、そしおあなたはたわごずをしたせんでした盎そう」 -さらに粗いだけです。



-あなたは䜕を知っおいる、あなたをファックしおください今日は私の誕生日です、そしお今、私はあなたの6月の自家補のたわごずや棒をしないで、飲む぀もりです



それは私が蚀わなかったこずです。代わりに、圌は自分のラップトップを取り出しお仕事に取り掛かりたした。



いいえ、爆撃したした、地獄のように爆撃したしたもちろん、バックアップではなかったバックアップは䜕も保存しなかったので、私は苛酷な「私はあなたにそう蚀った」をチャットに泚ぎたした。



みんなず私は、手動で録音を停止しおすべおをチェックする方法を考え出したした。䞀郚のデヌタが曞き蟌たれおいないこずを実際に確認したした。



蚘録を停止し、1日あたりのむベント数をカりントしたした。圌らはより倚くのデヌタを投入したしたが、そのうち3分の1しか蚘録されおいたせんでした。2぀のレプリカの3぀のシャヌド。100,000行を挿入したす-33,000は曞き蟌たれたせん。



完党な混乱がありたした。党員が順番に性亀するためにお互いを送りたしたレニアが最初にそこに行き、次に私ず䌚瀟の創蚭者が続きたした。参加したSRTだけが、問題の解決策を芋぀ける方向に、叫び声ず通信で電話をかけようずしたした。



実際に䜕が起こっおいたのか-誰も理解しおいなかった



すべおのデヌタの3分の1が蚘録されおいないだけでなく、倱われたこずに気付いたずき、みんなず私はびっくりしたした瀟内での泚文は次のずおりでした。挿入埌、デヌタは取り返しの぀かないほど削陀され、むベントはバッチで现断されたした。セルゲむがこれらすべおを倱われたルヌブルに倉換する方法を想像したした。



私の誕生日もゎミの山に行きたした。私たちはバヌに座っお、投げられたパズルを解こうずしおアむデアを生み出したした。 Klickhausの転萜の理由は明らかではありたせんでした。倚分それはネットワヌクであるかもしれたせん、倚分それはLinux蚭定に぀いおです。はい、䜕でも、仮説は十分に聞こえたした。



私は開発の誓いを立おたせんでしたが、たずえ圌らが私たちのすべおを非難したずしおも、圌らを列の反察偎に残すこずは䞍正でした。問題は私たちの偎ではなく、私たちの決定にあるず99確信しおいたした。私たちが倱敗した可胜性の1はただ䞍安で燃えおいたした。しかし、どちらの偎に問題があったずしおも、それを修正する必芁がありたした。顧客が䜕であれ、そのようなひどいデヌタ挏掩を顧客に残すこずは、あたりにも残酷です。



朝の3時たでレストランのテヌブルで働きたした。むベントをスロヌし、select-を挿入し、空欄を埋めるために運転したした。あなたがデヌタを台無しにしたずき、それはこのように行われたす-あなたは前日の平均デヌタを取り、それを犯されたデヌタに挿入したす。



朝の3時過ぎに、友人ず私は家に行き、アルコヌル垂堎にピバシクを泚文したした。私はラップトップずKlickhausの問題を抱えお座っおいたした、友人が私に䜕かを蚀っおいたした。その結果、1時間埌、圌は私が働いおいお、䞀緒にビヌルを飲んでいないこずに腹を立お、去りたした。クラシック-Devopsの友達でした。



午前6時たでにテヌブルを再䜜成するず、デヌタがいっぱいになり始めたした。すべおが倱われるこずなく機胜したした。






それから倧倉でした。誰もがデヌタを倱ったこずでお互いを非難したした。新しいバグがあった堎合、銃撃戊が始たるず確信しおいたす



これらのスラックで、私たちはようやく、䌚瀟が私たちがデヌタを凊理し、テヌブルの構造を監芖する人だず思っおいるこずを理解し始めたした。圌らは管理者をdibieysず混同したした。そしお、圌らは管理者のように私たちに尋ねるようになりたした。



圌らの䞻な䞍満は-なんおこった、あなたはバックアップに責任があり、それらを正垞に䜜成しなかった、あなたはデヌタを続けた。そしお、これはすべお、チェックメむトを巻き戻すこずです。



正矩が欲しかった。私は通信文を掘り起こし、すべおスクリヌンショットを添付したした。レオニヌドは、䜜成されたバックアップを䜜成するために党力を尜くしたした。私の電話の埌、圌らのSTOが私たちの味方になりたした。その埌、レニアは自分の眪を認めたした。



䞀方、䌚瀟の長は自分の民を責めたくありたせんでした。画面ず蚀葉は圌には効かなかった。圌は、私たちがここの専門家であるため、すべおの人を説埗し、私たちの決定を䞻匵しなければならないず信じおいたした。どうやら、私たちの仕事は、レヌニャに教え、さらに、プロゞェクトマネヌゞャヌによっお任呜された圌を迂回しお、芁点に到達し、バックアップの抂念に関するすべおの疑問を個人的に泚ぎ出すこずでした。



チャティックは憎しみ、隠された、停装されおいない攻撃でにじみ出たした。どうしたらいいのかわからなかった。すべおが停止したした。そしお、私は最も簡単な方法をアドバむスされたした-個人的なメモでマネヌゞャヌに手玙を曞き、圌ずの玄束をするこずです。 Vasya、人生の人々は圌らがチャットしおいるほどグレむハりンドではありたせん。䞊叞は私のメッセヌゞに答えたした来お、質問はありたせん。






それは私のキャリアの䞭で最もおかしな䌚議でした。私のクラむアントの味方であるサヌビスステヌションは時間を芋぀けるこずができたせんでした。䞊叞ずリョヌナずの打ち合わせに行っおきたした。



私は䜕床も頭の䞭で可胜な察話を繰り返したした。私はなんずか30分前にかなり前に到着するこずができたした。神経質になり始め、10本のタバコを吞った。私はすべおを理解した-私、性亀、䞀人で。私は圌らを説埗するこずはできたせん。そしお゚レベヌタヌに足を螏み入れた。



圌が登っおいる間、圌はそれを壊すためにラむタヌで打った。



その結果、レヌニャは䌚議に出垭しおいたせんでした。そしお、私たちはメむンのものずすべおに぀いお玠晎らしい話をしたしたセルゲむは圌の痛みに぀いお私に話したした。圌は「クリックハりスを自動化」したくありたせんでした-圌はク゚リが機胜するこずを望んでいたした。



私はダギではなく、圌の仕事を心配しお、24時間幎䞭無䌑で仕事に没頭しおいる良い人を芋たした。チャットはしばしば私たちに悪圹、悪党、愚か者を匕き寄せたす。しかし、人生においお、これらはあなたず同じような人々です。



セルゲむは雇うために2、3のdevopsを必芁ずしたせんでした。圌らが盎面した問題ははるかに倧きいこずが刀明したした。



私は圌の問題を解決できるず蚀いたした。それはたったく別の仕事であり、私には圌女のDIBIの友人がいたす。これが圌らにずっおの取匕であるこずが最初にわかっおいたら、私たちは倚くのこずを避けおいただろう。遅くなりたしたが、問題はむンフラストラクチャではなく、デヌタのくだらない䜜業にあるこずに気づきたした。



私たちは握手を亀わし、料金は2倍半匕き䞊げられたしたが、条件付きで、私は圌らのデヌタずKlickhausを䜿っおすべおのスマットを自分で絶察に取っおいたす。゚レベヌタヌで、私は同じdibieyschik Maxに連絡し、圌を仕事に接続したした。クラスタヌ党䜓をシャベルする必芁がありたした。






採甚されたプロゞェクトのトレシャクは倧量でした。䞊蚘の「バックアップ」から始めたす。同じ「バックアップ」クラスタヌが分離されおいないこずが刀明したした。圌らはそれですべおをテストしたした、時には圌らはそれを生産に入れさえしたした。



スタッフの開発者は、独自のカスタムデヌタ「挿入」を䜜成したした。これは次のように機胜したした。ファむルをバッチ凊理し、スクリプトを実行しお、デヌタをプレヌトにマヌゞしたす。しかし、䞻な問題は、1぀の単玔な芁求に察しお倧量のデヌタが受け入れられるこずでした。 1秒あたりの参加デヌタ芁求。すべお1぀の数字のために-1日あたりの金額。



瀟内の開発者が分析ツヌルを誀っお䜿甚しおいたした。圌らはグラファナに行き、王宀の芁求を曞きたした。 2週間でデヌタをダンプしたした。それは矎しいグラフであるこずがわかりたした。しかし実際には、デヌタ芁求は10秒ごずに行われおいたした。 Klickhausは単に凊理を行わなかったため、これらすべおがキュヌに蓄積されたした。これが䞻な理由です。グラファンでは䜕も機胜せず、リク゚ストはキュヌに入れられ、叀い無関係なデヌタが絶えず到着しおいたした。



クラスタヌを再構成し、むンサヌトを再蚭蚈したした。瀟内の開発者が「挿入」を曞き盎し、デヌタを正しくシャヌディングし始めたした。



マックスはむンフラストラクチャの完党な監査を実斜したした。圌は、本栌的なバック゚ンドに移行する蚈画の抂芁を説明したした。しかし、これは䌚瀟に合いたせんでした。圌らはマックスに、昔ながらの方法で、しかし効果的にしか働けない魔法の秘密を期埅しおいたした。レヌニャはただ䜕も孊んでいないプロゞェクトを担圓しおいたした。提案されたすべおの䞭から、圌は再び自分の遞択肢を遞びたした。い぀ものように、それは最も遞択的な...倧胆な決断でした。 Lyonyaは、圌の䌚瀟には特別な道があるず信じおいたした。ずげのある、氷山でいっぱい。



実際、これで私たちは別れたした-私たちはできるこずをしたした。






コヌンでいっぱいで、この話で賢明なこずに、私たちは自分たちのビゞネスを開き、自分たちのためにいく぀かの原則を圢成したした。私たちは今もその時も仕事を始めるこずは決しおありたせん。



このプロゞェクトの埌、Max the Debianプレヌダヌが私たちに加わりたした、そしお私たちはただ䞀緒に玠晎らしい仕事をしおいたす。 Klickhausの事䟋では、䜜業を開始する前にむンフラストラクチャの完党か぀培底的な監査を実斜する方法を教えたした。私たちはすべおがどのように機胜するかを掘り䞋げ、それから初めおタスクを受け入れたす。以前はすぐにむンフラストラクチャの保守を急いでいたしたが、今は最初に1回限りのプロゞェクトを実行したす。これは、むンフラストラクチャを正垞に機胜させる方法を理解するのに圹立ちたす。



そしお、はい、私たちはくだらないむンフラストラクチャでプロゞェクトをバむパスしたす。たずえ倚額のお金であっおも、友情のためであっおも。病気のプロゞェクトを䞻導するこずは有益ではありたせん。この認識は私たちの成長を助けたした。むンフラストラクチャを敎理しおからサヌビス契玄を結ぶ1回限りのプロゞェクトか、ただ通り過ぎるだけです。別の氷山を過ぎお。



PSしたがっお、むンフラストラクチャに぀いお質問がある堎合は、遠慮なくリク゚ストを残しおください。



月に2回の無料監査があり、おそらくあなたのプロゞェクトがその䞭に含たれるでしょう。



All Articles