• अब वह दौर है जब AWS console में कुछ क्लिक करके server deploy किया जा सकता है, और एक command line से तरह-तरह का infrastructure बनाया जा सकता है
  • IaC
    • infrastructure को code के जरिए manage और provision करना
    • जिस network, server, storage आदि की हमें ज़रूरत है, उन्हें सबको code के रूप में save और manage करना
    • इससे code को share, test और reuse करके infrastructure को ज़्यादा productively manage किया जा सकता है
  • Terraform
    • Terraform, IaC में सबसे मशहूर tools में से एक है
    • यह AWS, GCP, Azure जैसे cloud के साथ-साथ in-house solutions तक सबको manage करता है
    • मनचाहे अंतिम परिणाम को define करने वाली declarative approach का उपयोग करता है, इसलिए परिणाम का अनुमान लगाना आसान होता है
    • code को reuse करने पर भी वही परिणाम सुनिश्चित करता है
    • terraform plan चलाने पर AWS में क्या और कैसे बनेगा, इसकी detailed plan तैयार होती है
    • terraform apply के जरिए उसे वास्तव में लागू किया जाता है
    • Terraform से बने resources की जानकारी tfstate नाम की JSON file में manage की जाती है
  • Terraform का उपयोग करने का तरीका
    • यह कई keywords के जरिए user input लेकर resources बनाता है और execution result को CLI पर दिखाने की सुविधा देता है
      • Provider
        • resource types को implement करने वाला plugin
        • AWS, GCP जैसे इस्तेमाल किए जाने वाले cloud platform और services के provider को ढूंढकर configuration में जोड़ते हैं, और उन resources का उपयोग करके infrastructure provision करते हैं
      • Module
        • संबंधित resources के group को एक single resource की तरह manage करने वाली reusable छोटी Terraform configuration
        • दूसरे लोगों द्वारा बनाए गए modules का भी आसानी से उपयोग करके कम code में ज़्यादा resources को efficiently manage किया जा सकता है
        • configuration बदलकर उसी module को कई बार call किया जा सकता है
      • Resource
        • virtual network, computing instance, या DNS record जैसे high-level components सहित एक या अधिक infrastructure objects का वर्णन करने वाला keyword
      • Variable
        • input variables, module के source code को बदले बिना resource properties को specify करने की सुविधा देते हैं
        • यह programming language के function parameters जैसा है
        • input variables के जरिए modules को अधिक flexible तरीके से share और reuse किया जा सकता है
      • Output
        • output values, command line पर उपयोग होने वाली infrastructure information बना सकते हैं और दूसरे Terraform configurations के लिए जानकारी expose कर सकते हैं
        • यह programming language के return value जैसा है

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

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