क्या है कोड के रूप में इंफ्रास्ट्रक्चर
कोड के माध्यम से इंफ्रास्ट्रक्चर प्रबंधन
Infrastructure as Code (IaC) मैन्युअल कॉन्फ़िगरेशन के बजाय मशीन-पठनीय कॉन्फ़िगरेशन फ़ाइलों का उपयोग करके इंफ्रास्ट्रक्चर को प्रबंधित और डिप्लॉय करने का एक दृष्टिकोण है।
लाभ
- वर्जन कंट्रोल — Git में इंफ्रास्ट्रक्चर, परिवर्तन इतिहास
- पुनरुत्पादनीयता — हर जगह समान वातावरण
- ऑटोमेशन — मैन्युअल क्रियाओं के बिना तेज़ डिप्लॉयमेंट
- डॉक्यूमेंटेशन — कोड डॉक्यूमेंटेशन के रूप में कार्य करता है
IaC टूल्स
- Terraform — क्लाउड-अज्ञेयवादी, घोषणात्मक
- AWS CloudFormation — AWS के लिए
- Pulumi — नियमित भाषाओं में IaC (Python, TypeScript)
- Ansible — कॉन्फ़िगरेशन प्रबंधन
घोषणात्मक vs अनिवार्य
- घोषणात्मक (Terraform): वांछित स्थिति का वर्णन
- अनिवार्य (स्क्रिप्ट): प्राप्त करने के चरणों का वर्णन
प्रैक्टिस
- रिमोट स्टोरेज में स्टेट स्टोर करना
- कोड पुन: उपयोग के लिए मॉड्यूल
- स्वचालित अनुप्रयोग के लिए CI/CD
- नीतियां और जांच (OPA, Sentinel)
Terraform उदाहरण
resource "aws_instance" "web" {
ami = "ami-0c55b159cbfafe1f0"
instance_type = "t2.micro"
}