इन-प्लेस और ब्लू/ग्रीन डिप्लॉयमेंट्स

AWS पर Deployments को ऑटोमेट करना

Dunieski Otano

Amazon Web Services Solutions Architect

2 AM आउटेज

2.00

  • ऑल-एट-वन्स डिप्लॉय गड़बड़ा गया
  • हर सर्वर पर टूटी हुई वर्ज़न चल रही है
  • ग्राहक एक घंटे तक एरर देखते हैं
  • रोलबैक के लिए एक और फुल डिप्लॉय चाहिए
AWS पर Deployments को ऑटोमेट करना

डिप्लॉयमेंट स्ट्रैटेजी क्यों मायने रखती है

2.1

  • एक खराब रिलीज़ सर्विस को डाउन कर सकती है
  • ऑल-एट-वन्स = सबसे तेज, सबसे जोखिमभरा
  • ग्रैजुअल रोलआउट = धीमा, ज़्यादा सुरक्षित
  • फेल होने पर स्ट्रैटेजी ब्लास्ट रेडियस कंट्रोल करती है
AWS पर Deployments को ऑटोमेट करना

इन-प्लेस डिप्लॉयमेंट्स

in-place

  • उसी इंस्टेंसेज़ पर डिप्लॉय करें जो ट्रैफिक सर्व करते हैं
  • एक समय में एक बैच: आधे-आधे, या एक-एक करके
  • आगे बढ़ने से पहले हर बैच का हेल्थ-चेक करें
  • सस्ता; एक्स्ट्रा इन्फ्रास्ट्रक्चर नहीं चाहिए
AWS पर Deployments को ऑटोमेट करना

ब्लू/ग्रीन डिप्लॉयमेंट्स

  • Blue = मौजूदा प्रोडक्शन फ्लीट
  • Green = नई वर्ज़न वाली बिल्कुल नई फ्लीट
  • लोड बैलेंसर ट्रैफिक को ब्लू से ग्रीन में शिफ्ट करता है
  • पुरानी फ्लीट तेज़ रोलबैक के लिए उपलब्ध रहती है

blue-green

AWS पर Deployments को ऑटोमेट करना

Lambda और ECS डिज़ाइन से ही ब्लू/ग्रीन हैं

  • Lambda: ट्रैफिक एलियस वर्ज़न पॉइंटर से शिफ्ट होता है
  • ECS: ट्रैफिक रिप्लेसमेंट टास्क सेट से शिफ्ट होता है
  • EC2-स्टाइल फ्लीट डुप्लिकेशन की ज़रूरत नहीं
  • फिर भी एक डिप्लॉयमेंट कॉन्फ़िगरेशन चुनते हैं

ecs

AWS पर Deployments को ऑटोमेट करना

इन-प्लेस बनाम ब्लू/ग्रीन कैसे चुनें

  • टाइट बजट, लो-रिस्क पैच → इन-प्लेस
  • ज़ीरो डाउनटाइम या इंस्टेंट रोलबैक चाहिए → ब्लू/ग्रीन
  • सिंगल लेगसी सर्वर → इन-प्लेस ही विकल्प है
  • Lambda या ECS → ब्लू/ग्रीन बिल्ट-इन

decide

AWS पर Deployments को ऑटोमेट करना

CodeDeploy में रोलबैक

rollback

  • रोलबैक = पिछली सफल रिवीज़न को फिर से डिप्लॉय करें
  • डिप्लॉयमेंट फेलियर पर ऑटो-ट्रिगर करें
  • CloudWatch अलार्म पर ऑटो-ट्रिगर करें
  • ब्लू/ग्रीन रोलबैक: लोड बैलेंसर वापस फ्लिप करें
AWS पर Deployments को ऑटोमेट करना

अभ्यास करते हैं!

AWS पर Deployments को ऑटोमेट करना

Preparing Video For Download...