• क्लाउड में infrastructure बनाते समय लागत में कमी, deployment की गति में सुधार, consistency, stability और reusability को ध्यान में रखते हुए, web console से बनाने की बजाय IaC tool का उपयोग करके बनाना बेहतर होता है
  • open source होने के साथ IaC tools में सबसे अधिक इस्तेमाल होने वाला Terraform है
  • Terraform code को कुशल और प्रभावी ढंग से लिखने के लिए Terraform द्वारा दी जाने वाली सुविधाओं का उचित उपयोग करना महत्वपूर्ण है
  • Terraform loop
    • सामान्य declarative languages में loop नहीं होते, लेकिन Terraform विभिन्न functions प्रदान करता है, इसलिए loop का उपयोग किया जा सकता है
    • आम तौर पर उपयोग होने वाले loop: count, for_each
      • count parameter: resource और module को दोहराना
      • for_each expression: resource, resource के भीतर inline block, और module को दोहराना
    • प्रत्येक loop का उपयोग कैसे करें
      • count: जब बनाए जाने वाले resource लगभग समान हों और उनमें बदलाव न हो, तब इसे उपयोग करने पर तेज़ और संक्षिप्त तरीके से बनाया जा सकता है
      • for_each: unique name, data वाले resource, और ऐसे resource जिन्हें दोबारा create नहीं किया जाना चाहिए, उनके लिए इसका उपयोग करने पर सुरक्षित रूप से create और modify किया जा सकता है
  • Count
    • count parameter integer स्वीकार करता है, और पूरे resource तथा module को दोहराकर बनाता है
    • count के साथ configuration करने पर count.index का उपयोग करके count से बने index तक पहुँचा जा सकता है
    • Count की सीमाएँ
      • count पूरे resource को दोहराता है, लेकिन resource के भीतर मौजूद inline block को नहीं दोहराता
      • count से बनाए गए resource में बीच का कोई मान हटा देने पर उसके बाद के सभी मान delete होकर फिर से create हो जाते हैं. अंतिम परिणाम समान रहता है, लेकिन अगर वे resource दोबारा create नहीं होने चाहिए, तो समस्या हो सकती है
  • For_each
    • for_each expression list, set, map को दोहराकर पूरे resource, resource के भीतर inline block, और module को बनाता है
    • for_each के साथ configuration होने पर each.key और each.value का उपयोग करके संबंधित key और value तक पहुँचा जा सकता है
    • resource पर for_each का उपयोग करते समय list supported नहीं होती
    • collection में दोहराए जाने वाले set, map को define किया जाता है, और Config में each.value का उपयोग करके Collection में define की गई key और value लाई जा सकती हैं

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.