साइट रिलायबिलिटी इंजीनियर इंटरव्यू सवाल

पूरी टीम में Terraform state आप कैसे संभालते हैं, और drift का क्या करते हैं?

इंटरव्यूअर असल में क्या परख रहा है, अपना जवाब कैसे स्ट्रक्चर करें, और एक बोला हुआ उदाहरण जिसे आप अपना सकते हैं।

छोटा जवाब

locking के साथ remote state इस्तेमाल करें, जैसे S3 और DynamoDB या कोई managed backend, उसे हर एनवायरनमेंट और असर के दायरे के हिसाब से एक एक फाइल में बांटें, और state को git में कभी commit न करें क्योंकि उसमें secrets सादे टेक्स्ट में रहते हैं। drift के लिए plan तय समय पर चलाएं और खाली न होने वाले किसी भी diff पर अलर्ट करें, हर बदलाव को console के बजाय CI से गुजारें, और state हाथ से बदलने के बजाय import या removed ब्लॉक सोच समझकर इस्तेमाल करें।

इंटरव्यूअर यह क्यों पूछते हैं

यह ऑपरेशनल परिपक्वता का सवाल है। इंटरव्यूअर जानना चाहते हैं कि आपने ऐसी repository में काम किया है या नहीं जहां पांच लोग एक साथ apply करते हैं, क्या आप state बांटने की असर के दायरे वाली दलील समझते हैं, और क्या आपके पास उस console बदलाव का असली जवाब है जो किसी ने इंसिडेंट के दौरान कर दिया। यह बताना कि state में secrets होते हैं, भरोसे का अच्छा निशान है।

अपना जवाब कैसे स्ट्रक्चर करें

  • बुनियाद के तौर पर remote state और locking बताएं।
  • समझाएं कि आप state कैसे बांटते हैं और क्यों, असर के दायरे की भाषा में।
  • बताएं कि state में secrets होते हैं, तो encryption और access control मायने रखते हैं।
  • drift पकड़ने वाले के तौर पर तय समय पर चलने वाले plan बताएं।
  • जायज आपात console बदलावों के लिए प्रक्रिया बताएं।

उदाहरण जवाब

बोला हुआ उदाहरण, पहले व्यक्ति में

locking के साथ remote backend, हमेशा, ताकि दो apply आपस में दौड़ न सकें। इसके आगे बड़ा फैसला यह है कि आप इसे बांटते कैसे हैं। एक विशाल state फाइल का मतलब है कि plan में पंद्रह मिनट लगते हैं और हर बदलाव सब कुछ जोखिम में डालता है, तो मैं इसे पहले एनवायरनमेंट के हिसाब से और फिर असर के दायरे के हिसाब से बांटता हूं: networking cluster से अलग, cluster एप्लिकेशन के रिसोर्स से अलग, और साझा डेटा एक ही ढेर बनाने के बजाय remote state आउटपुट या data source से खींचा हुआ। state में सादे टेक्स्ट में secrets भी होते हैं, जो लोग भूल जाते हैं, तो वह सख्त IAM और versioning के साथ एक encrypted bucket में रहता है। drift के लिए मैं CI में हर रात terraform plan चलाता हूं और diff खाली न हो तो अलर्ट करता हूं। इसी ने एक ऐसा security group पकड़ा जिसे किसी ने इंसिडेंट के दौरान हाथ से चौड़ा कर दिया था, और यही तो वह मामला है जिसे आप पकड़ना चाहते हैं। मैं आपात हालात में console के इस्तेमाल पर पाबंदी नहीं लगाता, पर नियम यह है कि आपने जो किया उसे कोड में लाने के लिए उसी दिन pull request खोलनी होगी, और उसे लागू रात वाला plan कराता है।

जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।

देखें यह कैसे काम करता है

फॉलो-अप सवाल जिनकी उम्मीद रखें

  • किसी मौजूदा रिसोर्स को Terraform के प्रबंधन में सुरक्षित तरीके से आप कैसे लाएंगे?
  • अगर state और हकीकत बुरी तरह अलग हो चुके हों तो आप क्या करेंगे?
  • variable और output में secrets आप कैसे संभालते हैं?

साइट रिलायबिलिटी इंजीनियर के और सवाल

आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।

मेरे सवाल प्रेडिक्ट करें

मुश्किल सवाल पूछे जाने से पहले उनकी रिहर्सल कीजिए

एक लाइव कोपायलट के साथ प्रैक्टिस कीजिए, फिर तैयार होकर अंदर जाइए। $29 Session Pass आपको इंटरव्यू पार करा देता है, न कोई सब्सक्रिप्शन, न कोई लॉक-इन।

GhostPilot पाएं