EC2 इंस्टेंस का प्रावधान
Amazon EC2 वर्चुअल मशीनों को परिनियोजित और प्रबंधित करने के लिए Terraform कॉन्फ़िगरेशन लिखिए, जिनमें नेटवर्क और सुरक्षा समूह सेटिंग शामिल हैं।
EC2 इंस्टेंस का प्रावधान, CoddyKit पर Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
Terraform के साथ EC2 इंस्टेंस
आपका स्वागत है! इस पाठ में आप Terraform का उपयोग करके Amazon EC2 वर्चुअल मशीनों का प्रावधान और प्रबंधन करना सीखेंगे।
EC2 (Elastic Compute Cloud) क्लाउड में विस्तार योग्य वर्चुअल सर्वर उपलब्ध कराता है। EC2 के लिए Terraform के साथ Infrastructure as Code (IaC) का उपयोग करने से आप अपने सर्वर कोड में परिभाषित कर सकते हैं और एकसमान, दोहराए जा सकने वाले परिनियोजन सुनिश्चित कर सकते हैं।
EC2 इंस्टेंस परिभाषित करना
Terraform में EC2 इंस्टेंस के लिए मुख्य संसाधन aws_instance है। आपको कम-से-कम दो महत्वपूर्ण तर्क निर्दिष्ट करने होंगे:
ami: उपयोग की जाने वाली Amazon Machine Image (OS और सॉफ़्टवेयर)।instance_type: हार्डवेयर कॉन्फ़िगरेशन, जैसे निःशुल्क स्तर के लिए योग्य इंस्टेंस हेतुt2.micro।
एक मूल aws_instance ब्लॉक इस प्रकार दिखाई देता है:
resource "aws_instance" "web_server" {
ami = "ami-053b04dcd42d5397e" # Example: Amazon Linux 2 in us-east-1
instance_type = "t2.micro"
tags = {
Name = "MyWebServer"
}
}अपना पहला EC2 लॉन्च करें
आइए, एक सरल EC2 इंस्टेंस लॉन्च करने के लिए सभी बातों को एक साथ रखें। यह कॉन्फ़िगरेशन AWS प्रदाता और EC2 इंस्टेंस को परिभाषित करता है।
परिनियोजित करने के लिए इसे .tf फ़ाइल के रूप में सहेजें, फिर अपने टर्मिनल में terraform init, terraform plan और terraform apply चलाएँ।
provider "aws" {
region = "us-east-1"
}
resource "aws_instance" "web_server" {
ami = "ami-053b04dcd42d5397e" # Amazon Linux 2 AMI for us-east-1
instance_type = "t2.micro"
tags = {
Name = "MyBasicWebServer"
}
}अपने EC2 को सुरक्षित करें: सुरक्षा समूह
सुरक्षा समूह आपके EC2 इंस्टेंस के लिए वर्चुअल फ़ायरवॉल की तरह काम करते हैं। वे नियंत्रित करते हैं कि कौन-सा आने वाला (ingress) और बाहर जाने वाला (egress) नेटवर्क ट्रैफ़िक आपके इंस्टेंस तक पहुँच सकता है या उससे बाहर जा सकता है।
अनधिकृत पहुँच से अपने सर्वर की सुरक्षा करने और SSH या HTTP जैसी आवश्यक सेवाओं को अनुमति देने के लिए इन्हें सही ढंग से कॉन्फ़िगर करना अत्यंत महत्वपूर्ण है।
सुरक्षा समूह बनाना
आप aws_security_group संसाधन का उपयोग करके सुरक्षा समूह परिभाषित करते हैं। हम कहीं से भी SSH पहुँच (पोर्ट 22) की अनुमति देने के लिए एक ingress नियम जोड़ेंगे (0.0.0.0/0)।
सुरक्षा समूह के लिए आपको एक मौजूदा vpc_id निर्दिष्ट करना होगा, जिसमें वह रखा जाएगा।
resource "aws_security_group" "allow_ssh" {
name = "allow_ssh_traffic"
description = "Allow SSH inbound traffic"
vpc_id = "vpc-0123456789abcdef0" # IMPORTANT: Replace with YOUR VPC ID!
ingress {
description = "SSH from anywhere"
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1" # All protocols
cidr_blocks = ["0.0.0.0/0"]
}
tags = {
Name = "allow_ssh_sg"
}
}EC2 से सुरक्षा समूह जोड़ना
अब आइए, अपने aws_instance को इस नए सुरक्षा समूह का उपयोग करने के लिए अद्यतन करें। हम aws_security_group.allow_ssh.id का उपयोग करके सुरक्षा समूह के ID का संदर्भ देते हैं।
इसे चलाने योग्य बनाने के लिए सुरक्षा समूह में vpc_id को अपने AWS खाते के वास्तविक VPC ID से बदलना याद रखें।
provider "aws" {
region = "us-east-1"
}
resource "aws_security_group" "allow_ssh" {
name = "allow_ssh_traffic_example"
description = "Allow SSH inbound traffic"
vpc_id = "vpc-0123456789abcdef0" # IMPORTANT: Replace with YOUR VPC ID!
ingress {
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
}
}
resource "aws_instance" "web_server" {
ami = "ami-053b04dcd42d5397e"
instance_type = "t2.micro"
vpc_security_group_ids = [
aws_security_group.allow_ssh.id
]
tags = {
Name = "WebServerWithSSH"
}
}EC2 नेटवर्किंग: VPC और सबनेट
हर EC2 इंस्टेंस एक Virtual Private Cloud (VPC) और उस VPC के अंदर एक विशिष्ट सबनेट में रहता है। VPC एक अलग किया हुआ वर्चुअल नेटवर्क होता है, और सबनेट आपके VPC के तार्किक विभाजन होते हैं, जैसे सार्वजनिक या निजी।
डिफ़ॉल्ट रूप से, EC2 किसी डिफ़ॉल्ट VPC या सबनेट में लॉन्च हो सकता है। अधिक नियंत्रण और बेहतर संगठन के लिए, आप अक्सर निर्दिष्ट करते हैं कि आपके इंस्टेंस को किस सबनेट का उपयोग करना चाहिए।
मूल नेटवर्क बनाना
अपने EC2 के नेटवर्क पर पूरा नियंत्रण पाने के लिए, आइए एक न्यूनतम VPC और सार्वजनिक सबनेट परिभाषित करें। इसके लिए सार्वजनिक पहुँच हेतु एक Internet Gateway और ट्रैफ़िक निर्देशित करने के लिए एक Route Table भी आवश्यक है।
यह पूरा सेटअप सुनिश्चित करता है कि आपका EC2 इंटरनेट के साथ संचार कर सके।
resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
tags = {
Name = "main-vpc-lesson"
}
}
resource "aws_subnet" "public" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.1.0/24"
availability_zone = "us-east-1a"
map_public_ip_on_launch = true # Instances in this subnet get a public IP
tags = {
Name = "public-subnet-lesson"
}
}
resource "aws_internet_gateway" "gw" {
vpc_id = aws_vpc.main.id
tags = {
Name = "main-gw-lesson"
}
}
resource "aws_route_table" "public_rt" {
vpc_id = aws_vpc.main.id
route {
cidr_block = "0.0.0.0/0" # Traffic to the internet
gateway_id = aws_internet_gateway.gw.id
}
tags = {
Name = "public-rt-lesson"
}
}
resource "aws_route_table_association" "public_rt_assoc" {
subnet_id = aws_subnet.public.id
route_table_id = aws_route_table.public_rt.id
}अपने कस्टम नेटवर्क में EC2
अब हम सभी भागों को मिलाएँगे: एक कस्टम VPC, सबनेट, सुरक्षा समूह और हमारा EC2 इंस्टेंस। EC2 हमारे विशिष्ट सार्वजनिक सबनेट में लॉन्च होगा और उसे स्वचालित रूप से एक सार्वजनिक IP मिल जाएगा।
यह पूरा कॉन्फ़िगरेशन आपको अपने EC2 परिनियोजन पर सूक्ष्म स्तर का नियंत्रण देता है और उसे SSH के लिए सुलभ बनाता है।
provider "aws" {
region = "us-east-1"
}
resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
tags = { Name = "main-vpc-lesson" }
}
resource "aws_subnet" "public" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.1.0/24"
availability_zone = "us-east-1a"
map_public_ip_on_launch = true
tags = { Name = "public-subnet-lesson" }
}
resource "aws_internet_gateway" "gw" {
vpc_id = aws_vpc.main.id
tags = { Name = "main-gw-lesson" }
}
resource "aws_route_table" "public_rt" {
vpc_id = aws_vpc.main.id
route {
cidr_block = "0.0.0.0/0"
gateway_id = aws_internet_gateway.gw.id
}
tags = { Name = "public-rt-lesson" }
}
resource "aws_route_table_association" "public_rt_assoc" {
subnet_id = aws_subnet.public.id
route_table_id = aws_route_table.public_rt.id
}
resource "aws_security_group" "allow_ssh" {
name = "allow_ssh_lesson"
description = "Allow SSH inbound traffic"
vpc_id = aws_vpc.main.id
ingress {
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
}
}
resource "aws_instance" "web_server" {
ami = "ami-053b04dcd42d5397e"
instance_type = "t2.micro"
subnet_id = aws_subnet.public.id
vpc_security_group_ids = [
aws_security_group.allow_ssh.id
]
associate_public_ip_address = true
tags = {
Name = "FullWebServerLesson"
}
}EC2 कॉन्फ़िगरेशन जाँच
Terraform में एक मूल aws_instance संसाधन परिभाषित करने के लिए निम्नलिखित में से कौन-से तर्क आवश्यक हैं?
पुनरावलोकन: Terraform के साथ EC2
बहुत अच्छा! आपने Terraform का उपयोग करके Amazon EC2 इंस्टेंस का प्रावधान करना सीख लिया है।
- हमने
aws_instanceसंसाधन का उपयोग करके EC2 इंस्टेंस परिभाषित किए। - हमने नेटवर्क ट्रैफ़िक नियंत्रित करते हुए उन्हें
aws_security_groupसे सुरक्षित किया। - हमने अपने EC2 को होस्ट करने के लिए एक मूल कस्टम नेटवर्क (VPC, सबनेट, इंटरनेट गेटवे, रूट टेबल) सेट अप किया।
- अब आपके पास अपने वर्चुअल सर्वरों को कोड के रूप में परिनियोजित और प्रबंधित करने की आधारभूत समझ है!
एआई शिक्षक के साथ Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “EC2 इंस्टेंस का प्रावधान” पाठ निःशुल्क है?
हाँ—“EC2 इंस्टेंस का प्रावधान” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“EC2 इंस्टेंस का प्रावधान” में मैं क्या सीखूँगा?
Amazon EC2 वर्चुअल मशीनों को परिनियोजित और प्रबंधित करने के लिए Terraform कॉन्फ़िगरेशन लिखिए, जिनमें नेटवर्क और सुरक्षा समूह सेटिंग शामिल हैं। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।
“EC2 इंस्टेंस का प्रावधान” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Terraform: कोड के रूप में इन्फ्रास्ट्रक्चर पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- AWS प्रदाता कॉन्फ़िगरेशन
- EC2 इंस्टेंस का प्रावधान
- S3 बकेट और IAM का प्रबंधन
- VPC और नेटवर्किंग का विन्यास