ग्राहक एक लॉजिस्टिक्स सेवा है: रोज़ाना दसियों हज़ार ऑर्डर, शाम और सेल के समय चरम ट्रैफ़िक, तथा साझेदार दुकानों के सामने सख़्त SLA। इंफ़्रास्ट्रक्चर बेतरतीब ढंग से बढ़ा था: अलग-अलग VPS, सर्वरों पर रखे कॉन्फ़िगरेशन और Wiki के निर्देशों के अनुसार हाथ से डिप्लॉयमेंट। हर रिलीज़ का अर्थ रात में बदलाव और सेवा का ठहरना था; हर पीक में ऑर्डर खोने का जोखिम रहता था। नए साल से पहले की सेल के दौरान प्लेटफ़ॉर्म चार घंटे बंद रहा और सेवा को साझेदारों को मुआवज़ा देना पड़ा—इसी घटना के बाद ग्राहक ने हमसे संपर्क किया।
कारोबार रोके बिना प्लेटफ़ॉर्म को प्रबंधनीय इंफ़्रास्ट्रक्चर पर ले जाना:
Infrastructure as Code, स्वचालित डिलीवरी, कंटेनरीकरण और ऑर्केस्ट्रेशन, निगरानी और विफलता के बाद पूर्वानुमेय बहाली। संस्थापक ने सफलता का मानदंड बताया: «काम के समय डिप्लॉयमेंट, बिना डाउनटाइम और SSH पहुँच वाले किसी व्यक्ति के बिना»।
हमने जाँचा-परखा क्रम अपनाया: पहले कंटेनर और दोबारा बनाए जा सकने वाले वातावरण, फिर डिलीवरी का ऑटोमेशन, और उसके बाद ही ऑर्केस्ट्रेशन व ऑटोस्केलिंग।
- इंफ़्रास्ट्रक्चर ऑडिट किया: सेवाओं और निर्भरताओं का नक्शा, पीक लोड प्रोफ़ाइल के माप और दुर्घटनाओं का कारण बनने वाले मैनुअल कामों की सूची बनाई।
- सेवाओं को कंटेनर में बदला: बिल्ड प्रक्रिया एकसमान की, कॉन्फ़िगरेशन कोड से निकालकर environment variables में रखे और एक जैसे dev/stage/prod वातावरण बनाए।
- Terraform में इंफ़्रास्ट्रक्चर को कोड के रूप में लिखा: वातावरण रिपॉज़िटरी से बनाए जाते हैं और क्लाउड प्रदाता के कंसोल में हाथ से बदलाव प्रतिबंधित किए।
- GitLab CI पाइपलाइन बनाई: टेस्ट और इमेज बिल्ड अपने आप होते हैं, stage पर डिप्लॉयमेंट तुरंत और prod पर समीक्षा के बाद बटन दबाकर होता है; एक कार्रवाई में rollback किया जा सकता है।
- प्लेटफ़ॉर्म को ऑटोस्केलिंग सहित Kubernetes पर ले गए: शाम और सेल के पीक का सामना अतिरिक्त इंस्टेंस करते हैं, आपातकालीन मैनुअल काम नहीं।
- मॉनिटरिंग और अलर्टिंग लगाई: latency, errors, traffic और saturation जैसे golden signals के मेट्रिक्स, निर्धारित ऑन-कॉल ड्यूटी और escalation के साथ।
- बैकअप और disaster recovery तय की: बहाली की प्रक्रिया बनाई और stage पर विफलता का अभ्यास करके वास्तविक MTTR मापा।
परियोजना का सबसे मूल्यवान पहलू तकनीक नहीं बल्कि ज़िम्मेदारी का बदलाव था: इंफ़्रास्ट्रक्चर अब «SSH पहुँच वाले व्यक्ति» पर निर्भर नहीं रहा। हर डिप्लॉयमेंट दोहराया जा सकता है, हर वातावरण कोड से बहाल किया जा सकता है और हर विफलता पहले ग्राहक के संदेश से पहले डैशबोर्ड पर दिख जाती है। यही ठहराव को आपदा से स्पष्ट प्लेबुक और मापने योग्य बहाली समय वाली नियमित घटना में बदलता है।
परियोजना का आर्थिक लाभ तीन हिस्सों से आया: ऑटोस्केलिंग और लगातार चालू रखी गई «पीक» क्षमता हटाने से इंफ़्रास्ट्रक्चर लागत में सीधी 32% बचत; रात के डिप्लॉयमेंट में लगने वाले टीम के घंटों की बचत; और सबसे अहम, पीक के दौरान राजस्व सुरक्षित रखना क्योंकि अब वे बिना घटना के गुज़रते हैं। दुकानों की एक बड़ी श्रृंखला ने नए इंफ़्रास्ट्रक्चर पर पहली सेल के बाद ही अनुबंध बढ़ाया।
| मापदंड | परिणाम |
|---|---|
| रिलीज़ डिप्लॉय करना | हाथ से 3–4 घंटे → अपने आप 15 मिनट |
| रिलीज़ की आवृत्ति | 2–3 प्रति माह → लगभग रोज़ |
| प्लेटफ़ॉर्म उपलब्धता | 97,8% → 99,95% |
| चरम लोड | डाउनटाइम का जोखिम → बिना मानवीय हस्तक्षेप ऑटोस्केलिंग |
मेट्रिक्स केस की मूल सामग्री से लिए गए हैं। अवधि वहीं दी गई है जहाँ स्रोत में दर्ज है।
- रिलीज़ डिप्लॉयमेंट (पहले हाथ से 3–4 घंटे)
- 15 मिनट
- प्लेटफ़ॉर्म उपलब्धता (पहले 97.8%)
- 99.95%
- बंद होने के बाद बहाली (पहले 2–4 घंटे)
- 20–30 मिनट
- इंफ़्रास्ट्रक्चर लागत
- −32%
सीमाओं के ऊपरी मान दिखाए गए हैं (4 घंटे, 30 मिनट)। डाउनटाइम = 100% − उपलब्धता।
- 01कमिट
- 02टेस्ट
- 03इमेज बिल्ड
- 04स्टेजतुरंत
- 05प्रोडक्शनसमीक्षा के बाद बटन दबाकर
अगले चक्र में इंफ़्रास्ट्रक्चर के विकास के क्षेत्र:
- FinOps अभ्यास—असामान्य खर्च पर अलर्ट और टीम के अनुसार लागत की पारदर्शिता।
- GitOps तरीका—prod की स्थिति रिपॉज़िटरी में दर्ज और बदलाव केवल pull request से।
- Multi-region—प्रदाता की विफलताओं के प्रति सहनशीलता के लिए महत्वपूर्ण सेवाओं की प्रतिकृति।
पहले रिलीज़ का मतलब था रात, कॉफ़ी और दुआ। अब यह एक बटन और पंद्रह मिनट है। बिना किसी घटना वाली पहली सेल का जश्न हमने पूरी कंपनी के साथ मनाया।
— लॉजिस्टिक्स सेवा के तकनीकी निदेशक