बिघडलेल्या EC2 Instance मधून Data कसा परत मिळवायचा
Server बिघडतो: boot होत नाही, कोणीतरी चुकीची file बदलली, किंवा तो काढावा लागतो. Data अजूनही त्याच्या disk वर, म्हणजे EBS volume वर असतो, आणि volume दुसऱ्या server वर हलवता येतो. हा chapter नेमकं तेच करतो: server stop करायचा, त्याचा root volume detach करायचा, त्याच Availability Zone मध्ये नवीन server launch करायचा, नवीन server चा root volume जुन्याने बदलायचा, आणि start केल्यावर सगळ्या जुन्या files आणि website परत. मग हे सोपं करणारे backups: AMIs, launch templates आणि EBS snapshots, प्रत्येक कशासाठी, snapshot मधून थेट server का launch होत नाही, आणि काहीही bill लावत राहू नये म्हणून clean up कसं करायचं.
या class मध्ये काय शिकणार
- Root volume vs data volumes, आणि Delete on termination setting
- Volume states: In-use आणि Available, आणि Availability Zone का महत्त्वाचा
/dev/xvdaवर root volume बदलून data परत मिळवणं, step by step- जुनी disk वाचायचा सोपा मार्ग: दुसरी disk म्हणून attach करून mount करा
- AMI म्हणजे काय, ती बनवणं, आणि My AMIs मधून launch करणं
- AMI vs launch template
- Snapshot vs AMI, आणि एका volume चा किंवा पूर्ण instance चा snapshot बनवणं
- Snapshot मधून launch का होत नाही, आणि दोन रस्ते: snapshot ते AMI, किंवा snapshot ते volume
- AMI साठी Deregister vs Disable, आणि bill थांबवणारं clean-up
1. Root volume आणि data volumes
का: Data server पासून वेगळ्या volume वर असतो म्हणूनच recovery शक्य होते. कोणत्या volume वर काय आहे हे माहीत असलं की काय वाचवता येईल ते कळतं.
काय: EBS volume म्हणजे EC2 server ची disk. Root volume मध्ये operating system असते; Linux त्यावरून boot होतं. बाकीच्या जास्तीच्या disks म्हणजे data volumes.
Classroom line
The volume that holds our OS is called the root volume.
Class मधलं वाक्य
ज्या volume मध्ये आपली OS असते, त्या volume ला आपण root volume म्हणतो.
Classroom line – हिंदी
"Jis volume mein hamara OS rehta hai, us volume ko hum root volume bolte hain."
- Size: Amazon Linux default 8 GiB
gp3root volume ने सुरू होतं; Windows Server 30 GiB ने. - Device name: Amazon Linux चा root volume
/dev/xvdaअसतो. Data volumes ना/dev/sdfसारखी नावं मिळतात. - Data volumes launch करताना Configure storage > Add new volume मध्ये जोडतात, किंवा नंतर attach करतात.

Console: Launch wizard मधलं Configure storage: 3000 IOPS चा एक 8 GiB gp3 root volume, encrypted नाही, आणि data volumes साठी Add new volume button.
Classroom line
The default is 8 GB; if you need a data volume, you can attach one.
Class मधलं वाक्य
Default 8 GB येतंय, data volume हवा असेल तर attach करू शकतो.
Classroom line – हिंदी
"Default 8 GB aa raha hai, data volume chahiye toh attach kar sakte hain."
Figure 1. एक EC2 server: /dev/xvda वर root volume (OS, default 8 GiB, Delete on termination Yes) आणि /dev/sdf वर data volume (तुमचा data, नंतर attach केल्यास Delete on termination No). दोन्ही server च्याच Availability Zone मध्ये.
EBS चा खर्च, आणि stop आणि terminate ला त्याचं काय होतं, हे EBS चं bill: खरे आकडे आणि Step 6: Storage मध्ये आहे.
2. Interview प्रश्न: terminate झालेल्या server चा data परत मिळेल का?
का: Terminate default नुसार root volume delete करतो हे तुम्हाला माहीत आहे का, हे बघायला interviewers हा प्रश्न विचारतात. पहिल्या दिवसापासून data कसा जपायचा हे या उत्तरावर ठरतं.
प्रामाणिक उत्तर: फक्त disk अजून असेल तर. Default ने root volume चं Delete on termination: Yes असतं, म्हणून server terminate झाला की त्याचा root volume पण त्याच्यासोबत delete होतो, आणि data जातो.
Figure 2. Server terminate करा: Delete on termination Yes असलेला volume त्याच्यासोबत delete होतो; No असलेला Available म्हणून राहतो. Terminate आधी detach केलेला volume, आणि कुठलाही snapshot किंवा AMI, नेहमी वाचतात.
Terminate नंतर data चार परिस्थितींत वाचतो:
- Terminate करण्याआधी तुम्ही root volume detach केला (या chapter चा lab).
-
त्या volume चं Delete on termination No केलं होतं. Launch ला ते Configure storage > Advanced मध्ये असतं. चालू server साठी AWS CLI वापरा:
aws ec2 modify-instance-attribute --instance-id INSTANCE_ID --block-device-mappings '[{"DeviceName":"/dev/xvda","Ebs":{"DeleteOnTermination":false}}]' -
तुमच्याकडे volume चा snapshot आहे.
- तुमच्याकडे server ची AMI आहे.
Launch नंतर attach केलेल्या data volumes चं default No असतं, म्हणून terminate नंतर ते Available म्हणून मागे राहतात (आणि bill लावत राहतात).
3. Lab: website आणि काही files असलेला server
काय: Default 8 GiB root volume असलेला Amazon Linux 2023 चा एक t3.micro, एक web page आणि तीन files, म्हणजे त्या परत आल्या हे दिसेल.
कसं:
sudo yum install httpd -y
echo "<h1>Hello from the old disk</h1>" | sudo tee /var/www/html/index.html
sudo service httpd start
sudo systemctl enable httpd
touch f1 f2 f3
ls
sudo service httpd startRedirecting to /bin/systemctl start httpd.serviceदाखवतो. हा error नाही: Amazon Linux 2023 वर जुनीservicecommand कामsystemctlकडे देते, आणि Apache सुरू होतो.sudo systemctl enable httpdने Apache प्रत्येक boot ला सुरू होतो, ही disk नंतर दुसऱ्या server वर boot झाली तरी.- Files
/home/ec2-userमध्ये आहेत.sudo su -ने root झालात, तर बनवलेल्या files त्याऐवजी/rootमध्ये जातात. - Security group मध्ये Anywhere-IPv4 कडून HTTP, port 80 चा inbound rule जोडा, मग browser मध्ये
http://PUBLIC_IP/उघडा.
Apache चा पूर्ण set-up AWS EC2 वर Apache ने Website कशी Host करायची मध्ये आहे, आणि port 80 चा rule Step 6: port 80 उघडा मध्ये.
4. Volume states, आणि Availability Zone चा नियम
का: Volume फक्त त्याच्याच AZ मधल्या server ला attach होतो. हे विसरलं म्हणूनच हवा असलेला server attach list मध्ये दिसत नाही.
काय: Elastic Block Store > Volumes मध्ये प्रत्येक volume त्याच्या Volume state सह दिसतो.
- In-use: instance ला attach आहे.
- Available: कशालाच attach नाही; attach करायला मोकळा. तरीही bill लागतं.
- थोड्या वेळासाठी Creating आणि Deleting पण दिसतात.
Classroom line
Available means it isn't attached to any EC2 instance.
Class मधलं वाक्य
Available म्हणजे तो कुठल्याही EC2 instance ला attach नाही.
Classroom line – हिंदी
"Available ka matlab, wo EC2 instance ke saath attach nahi hai."
Availability Zone चा नियम: volume एका Availability Zone (AZ) मध्ये असतो, उदा. ap-southeast-1c, आणि तो फक्त त्याच AZ मधल्या instance ला attach होतो. 1c मधला volume 1a मधल्या instance ला attach करायला गेलात तर तो दिसत पण नाही.
Figure 3. Volume states: Creating, Available, In-use (attach आणि detach यांच्यात फिरवतात) आणि Deleting. ap-southeast-1c मधला volume 1c मधल्या instance ला attach होतो, 1a मधल्याला कधीच नाही.
Classroom line
The new EC2 you launch must be in the same Availability Zone as the old one.
Class मधलं वाक्य
जो नवीन EC2 launch करताय, तो जुन्या EC2 च्याच availability zone मध्ये असला पाहिजे.
Classroom line – हिंदी
"Naya EC2 jo launch kar rahe hai, purane EC2 ka availability zone same rehna chahiye."
5. कसं: root volume बदलून data परत मिळवा
का: Server boot होत नसला तरी त्याची disk सहसा ठीक असते. Disk निरोगी server वर हलवली की काही files नाही, पूर्ण system परत येते.
कल्पना: एका server ला नेमका एकच root volume असतो. जुन्या server चा root volume घ्या, आणि तो नवीन server चा root volume बनवा.
Figure 4. Animation: जुना server stop करा आणि त्याचा root volume detach करा (Available); same AZ मध्ये नवीन server launch करून stop करा; त्याचा स्वतःचा root volume detach करा; जुना volume /dev/xvda वर attach करून start करा: जुन्या files आणि website परत.
Part A: जुनी disk मोकळी करा.
- जुना server select करा, Instance state > Stop, आणि Stopped होईपर्यंत थांबा. Root volume फक्त stopped instance वरूनच detach होतो.
- त्याचा Networking tab उघडा आणि Availability Zone लिहून ठेवा, उदा.
ap-southeast-1c. - त्याचा Storage tab उघडा आणि root volume वर click करा. Volumes मध्ये त्याला
old-rootसारखं Name द्या (Name column मधली pencil), म्हणजे volumes ओळखता येतील. old-rootselect करा, Actions > Detach volume, आणि confirm करा. State In-use वरून Available होते.- आता जुना server terminate करता येतो; detach केलेला volume राहतो.
Part B: same AZ मध्ये नवीन server.
- Launch instances, Amazon Linux 2023, जुन्या server ची तीच key pair, म्हणजे तुमची
.pemजुन्या disk वर पण चालेल. -
Network settings > Edit > Subnet: जुन्या server च्या AZ मधला subnet निवडा. (किंवा subnet list खाली Availability Zone set करा; "No preference" कुठेही जाऊ शकतं.)
-
Launch करा, Running होईपर्यंत थांबा, मग Instance state > Stop, आणि Stopped होईपर्यंत थांबा.
- त्याच्या Storage tab मध्ये त्याच्या root volume वर click करा, त्याला
spare-rootनाव द्या, आणि Actions > Detach volume.

Console: Network settings मध्ये No preference ऐवजी जुन्या volume चा subnet किंवा Availability Zone निवडा.
Classroom line
Only one root volume can be attached to one EC2 instance.
Class मधलं वाक्य
एका EC2 instance ला एकच root volume attach होऊ शकतो.
Classroom line – हिंदी
"Ek EC2 instance ke saath ek hi root volume attach ho sakta hai."
Part C: जुनी disk root volume म्हणून attach करा.
old-rootselect करा, Actions > Attach volume.- Instance: नवीन, stopped server निवडा. तो same AZ मध्ये असेल तरच list मध्ये दिसतो.
- Device name:
/dev/xvda, Reserved for root volume खाली दिसतो. मग Attach volume. State In-use होते.
![EC2 console, Attach volume page, Basic details: the device name list is open with Specify a custom device name, then Reserved for root volume: /dev/xvda Linux, then Recommended for data volumes: /dev/sdb, /dev/sdc, /dev/sdd Linux. The note says: recommended device names for Linux: /dev/xvda for root volume, /dev/sd[f-p] for data volumes.](../../../assets/img/aws/recover-ec2-data-ebs-root-volume-swap-ami-vs-snapshot-03-console-attach-volume-dev-xvda.webp)
Console: Attach volume: /dev/xvda root volume साठी राखीव आहे; /dev/sdb ते /dev/sdp data volumes साठी.
Classroom line
What is the reserved device name for the root volume?
Class मधलं वाक्य
Root volume चं reserved नाव काय आहे?
Classroom line – हिंदी
"Root volume ka reserved name kya hai?"
Part D: start करा आणि तपासा.
- Instance state > Start. नवीन server ला नवीन public IP मिळतो.
-
Connect करा, मग:
ls sudo service httpd status -
f1 f2 f3तिथे आहेत.httpdactive (running)दाखवतो कारण तो enable केला होता;inactive (dead)दाखवला, तरsudo service httpd startचालवा. http://NEW_PUBLIC_IP/उघडा: जुनं page परत आलं.spare-rootdelete करा (Actions > Delete volume), नाहीतर तो bill लावत राहतो.
Classroom line
Say it loudly and confidently: done!
Class मधलं वाक्य
मोठ्याने, confidence ने सांगायचं: झालं!
Classroom line – हिंदी
"Zor se confidence se bolne ka, ho gaya bolke."
6. सोपा मार्ग: जुनी disk दुसरी disk म्हणून attach करा
का: बिघडलेल्या disk वरून थोड्या files copy करायला त्यावरून boot करायची गरज नाही. Same AZ मधल्या कुठल्याही चालू server ला ती data volume म्हणून attach करा आणि वाचा.
कसं:
old-rootselect करा, Actions > Attach volume, same AZ मधला चालू server निवडा, device name/dev/sdf. Stop करायची गरज नाही.-
त्या server वर:
lsblk sudo mkdir /mnt/old sudo mount -o nouuid /dev/nvme1n1p1 /mnt/old ls /mnt/old/home/ec2-user /mnt/old/var/www/html -
t3servers वर disksdfनाही तरnvme1n1म्हणून दिसते; तिच्या पहिल्या partitionnvme1n1p1मध्ये files असतात. -o nouuidका: Amazon Linux 2023 XFS filesystem वापरतं. त्याच AMI मधून बनलेल्या disk चा filesystem UUID server च्या स्वतःच्या root disk सारखाच असतो, आणि same UUID असलेली दुसरी filesystem XFS mount करू देत नाही:mountwrong fs type, bad option, bad superblockदेऊन fail होतं, आणिsudo dmesgमध्येFilesystem has duplicate UUID ... can't mountदिसतं.nouuidXFS ला तो check टाळायला सांगतो.- हवं ते copy करा, मग
sudo umount /mnt/oldआणि Actions > Detach volume. - तो server reboot करण्याआधी disk detach करा. दोन्ही disks चा UUID same आहे, आणि server आपला root UUID ने boot करतो, म्हणून तो चुकीच्या disk वरून सुरू होऊ शकतो.
Figure 5. /dev/sdf म्हणून attach केलेला जुना root volume nvme1n1 म्हणून दिसतो. nvme1n1p1 चं साधं mount duplicate UUID मुळे fail होतं; mount -o nouuid चालतं, आणि जुन्या files /mnt/old खाली दिसतात. Reboot आधी unmount आणि detach करा.
7. AMI म्हणजे काय, आणि ती का बनवायची
का: Server setup करायला वेळ लागतो. AMI ते setup एकदाच save करतो, म्हणून पुढचा server तयार अवस्थेत, काही seconds मध्ये सुरू होतो.
काय: AMI (Amazon Machine Image) म्हणजे server चा template: OS, install केलेलं software (Apache, Jenkins), files आणि settings, आणि प्रत्येक volume चा snapshot आणि size. AWS तुम्हाला AMIs देतं (Amazon Linux, Ubuntu); तुम्ही स्वतःच्या पण बनवू शकता.
Figure 6. एका AMI मध्ये OS, software, files, settings आणि volume snapshots असतात. तिच्यातून अनेक एकसारखे servers launch करता येतात, ती दुसऱ्या Region ला copy करता येते, किंवा गेलेला server परत launch करता येतो. Key pair, instance type किंवा security group तिच्यात नसतात.
ती कशासाठी:
- अनेक एकसारखे servers: एक set up करा, तिच्या AMI मधून दहा launch करा.
- दुसरा Region: AMI copy करा, तिथे launch करा.
- Recovery: server गेला किंवा delete झाला, तर त्याच्या AMI मधून परत launch करा.
आणखी उदाहरणं AMI म्हणजे काय आणि ती का बनवतो मध्ये आहेत.
8. कसं: AMI बनवा आणि My AMIs मधून launch करा
- ओळखता येईल असं काहीतरी server वर ठेवा:
touch file1 file2 file3 file4आणिmkdir dir1 dir2 dir3. - Instance select करा, Actions > Image and templates > Create image, नाव
image-1द्या, आणि Create image. - Reboot instance default ने tick असतं: snapshot घेताना files disk वर पूर्ण असाव्यात म्हणून EC2 server reboot करतो. Reboot परवडत नसेल तरच untick करा; मग copy मध्ये लिहिल्या जात असलेल्या files सुटू शकतात. Form तुमच्या server ची image (AMI) बनवा मध्ये दाखवला आहे.
- Images > AMIs:
image-1Pending वरून Available होईपर्यंत थांबा. - Launch instances > Application and OS Images > My AMIs,
image-1निवडा, आणि launch करा. - Connect करून
lsचालवा: files तिथे आहेत.
Interview चे दोन मुद्दे:
- कुठलाही instance type चालतो.
t3.microमधून बनलेली AMIt3.smallम्हणून छान launch होते; type launch ला निवडतात. - AMI मध्ये key pair नसते. Launch ला तुम्ही एक निवडता, आणि ती key login करते. (जुनी public key पण disk वरच्या
authorized_keysमध्ये असते, म्हणून जुनी key पण चालते.)
9. AMI vs launch template
का: दोन्हीत गोंधळ होणं सोपं, आणि ते वेगळे प्रॉब्लेम सोडवतात: AMI म्हणजे disk चा content; launch template म्हणजे launch च्या settings.
काय: दोन्ही servers launch करायला मदत करतात, पण त्यांच्यात वेगवेगळ्या गोष्टी असतात.
Figure 7. AMI: disk वर काय आहे (OS, packages, files, configuration, volume snapshots). Launch template: launch कसं करायचं (AMI ID, instance type, key pair, subnet, security groups, storage, user data, tags). Launch template AMI कडे निर्देश करतं.
| AMI | Launch template | |
|---|---|---|
| उत्तर देते | Disk वर काय आहे? | ते launch कसं करायचं? |
| आत असतं | OS, packages, files, configuration, volume snapshots | AMI ID, instance type, key pair, subnet, security groups, storage, user data, tags |
| कशाने बनतं | Server वरून Create image | Launch templates > Create launch template |
| कोण वापरतं | प्रत्येक launch | Auto Scaling groups, परत परत one-click launches |
Classroom line
If they were the same thing, AWS wouldn't have given "Create image" and "Create template" separate names.
Class मधलं वाक्य
दोन्ही एकच असते, तर AWS ने "Create image" आणि "Create template" अशी वेगळी नावं दिली नसती.
Classroom line – हिंदी
"AWS bewakoof nahi hai ki usko create image and template bolke nahi de sakta tha."
10. AMI दुसऱ्या Region ला copy करा
का: Server दुसऱ्या Region मध्ये हलवायला, किंवा पूर्ण Region च्या प्रॉब्लेमपासून copy सुरक्षित ठेवायला, AMI त्या Region मध्ये हवा.
AMI एका Region ची असते. AMIs, ती select करा, Actions > Copy AMI, destination Region निवडा, मग तिथे copy मधून launch करा. पूर्ण steps, आणि काय परत set करावं लागतं, EC2 server दुसऱ्या Region मध्ये न्या मध्ये आहे.
11. Snapshot vs AMI
का: दोन्ही backups, वेगळ्या आकाराचे: एक disk विरुद्ध launch करता येणारा पूर्ण server. योग्य निवडला की खर्च आणि restore चा वेळ वाचतो.
काय: Snapshot म्हणजे एका EBS volume चा एका क्षणाचा backup. AMI म्हणजे पूर्ण server चा launch करता येणारा template; तिच्या मागे snapshots असतात, प्रत्येक volume चा एक.
Classroom line
Whenever you create an AMI, what happens behind the scenes?
Class मधलं वाक्य
जेव्हा तुम्ही AMI बनवता, तेव्हा backend मध्ये काय होतं?
Classroom line – हिंदी
"Kabhi bhi aap ek AMI create kar rahe ho, toh backend mein kya hota hai?"
- AMI बनवताना server च्या प्रत्येक volume चा snapshot आपोआप बनतो. Elastic Block Store > Snapshots मध्ये बघा: description मध्ये
Created by CreateImageअसतं. - Snapshots incremental असतात: पहिला सगळे वापरलेले blocks ठेवतो, पुढचे फक्त बदललेले blocks. तरीही प्रत्येक एक पूर्ण disk restore करतो. आकड्यांसह उदाहरण: Snapshots incremental असतात.
Figure 8. Snapshot एका volume चा backup घेतो; त्यातून volume किंवा image बनवता येते, किंवा तो copy करता येतो. AMI पूर्ण server चा template; तिच्यातून launch करता येतो, ती copy, disable किंवा deregister करता येते. AMI प्रत्येक volume च्या एका snapshot कडे निर्देश करते.
12. कसं: volume चा किंवा instance चा snapshot बनवा
का: धोकादायक बदलाआधी snapshot हा स्वस्त विमा. तो घ्यायला एकच click लागतो, म्हणून टाळायचं कारण नाही.
- Elastic Block Store > Snapshots > Create snapshot.
- Resource type:
- Volume: एका volume चा एक snapshot. Volume ID निवडा: त्याचा root कुठला ते बघायला आधी server चा Storage tab उघडा.
- Instance: instance च्या प्रत्येक volume चा snapshot, सगळे एकाच क्षणी, म्हणून ते जुळतात. Root volume किंवा निवडलेले data volumes वगळता येतात.
- Description आणि
ec2-snapshotसारखा Name tag द्या, मग Create snapshot. Status Pending वरून Completed होतं.

Console: Create snapshot: Resource type Volume एका volume चा snapshot बनवतो; Instance instance ला attach असलेल्या सगळ्या volumes चे multi-volume snapshots बनवतो.
Figure 9. Resource type Volume: एक volume म्हणजे एक snapshot. Resource type Instance: root आणि data volume असलेल्या server चे दोन snapshots, एकाच क्षणी; root वगळता येतो.
13. Interview प्रश्न: snapshot मधून थेट EC2 launch करता येतो का?
का: Snapshot पासून volume किंवा AMI, आणि मगच server, ही साखळी माहीत आहे का ते हा प्रश्न तपासतो.
नाही. Snapshot म्हणजे एका disk चा backup; त्यात boot settings नसतात. दोन रस्ते आहेत.
Classroom line
When they ask a question like this, don't be scared.
Class मधलं वाक्य
असा प्रश्न विचारला तर घाबरायचं नाही.
Classroom line – हिंदी
"Aisa question puchte hai bolte to darne ka nahi."
Figure 10. Snapshot मधून थेट launch नाही. रस्ता 1: Create image from snapshot, मग AMI मधून launch. रस्ता 2: server च्या AZ मध्ये Create volume from snapshot, मग तो attach करा, /dev/xvda वर root म्हणून (server stopped) किंवा /dev/sdf वर दुसरी disk म्हणून.
रस्ता 1: snapshot ते AMI ते EC2.
- Snapshots, root volume चा snapshot select करा, Actions > Create image from snapshot.
- नाव द्या, उदा.
image-snapshot. Architecture मूळ server सारखंच ठेवा (t3.microसाठीx86_64) आणि Root device name/dev/xvda; बाकी जसं आहे तसं ठेवा. Create image. - AMIs: Available होईपर्यंत थांबा, मग Launch instance from AMI.

Console: Snapshot चा Actions menu: Create volume from snapshot आणि Create image from snapshot हे चालू server पर्यंतचे दोन रस्ते.
रस्ता 2: snapshot ते volume, मग attach.
- Actions > Create volume from snapshot. Availability Zone ज्या server ला attach करणार त्याचा AZ ठेवा; size तसाच ठेवा किंवा वाढवा.
- नवीन volume attach करा: stopped server ला
/dev/xvdaवर root म्हणून (section 5, Part C), किंवा/dev/sdfवर दुसरी disk म्हणून (section 6).
AMI मधून बनलेल्या server वर disk वर जे होतं नेमकं तेच असतं. Files बनवण्याआधी snapshot घेतला असेल, तर नवीन server चं ls रिकामं.
Classroom line
It was empty; nothing had been created in it.
Class मधलं वाक्य
तो रिकामा होता ना, त्यात काहीच बनवलं नव्हतं.
Classroom line – हिंदी
"Empty tha na wo, kuch bhi nahi create kiya tha."
14. Task: snapshot, नवीन volume, root swap
का: Original volume गेला असेल किंवा त्याला हात लावायचा नसेल तेव्हा हाच recovery मार्ग: snapshot वरून काम करा.
Task: मूळ disk ऐवजी snapshot मधून server च्या files परत मिळवा.
server-alaunch करा,touch f1 f2 f3चालवा.- त्याच्या root volume चा snapshot बनवा (Resource type: Volume).
- नवीन server ज्या AZ मध्ये चालणार तिथे Create volume from snapshot, उदा.
ap-southeast-1c. - त्याच key pair ने त्या AZ मध्ये
server-blaunch करा, Running होईपर्यंत थांबा, मग Stop करा. -
server-bचा स्वतःचा root volume detach करा. -
Snapshot मधून बनलेला volume
server-bला/dev/xvdaवर attach करा. server-bstart करा, connect करा,ls:f1 f2 f3तिथे आहेत.- Clean up करा (section 16).
Classroom line
What do we do with this one? Detach it.
Class मधलं वाक्य
याचं काय करायचं? Detach करायचं.
Classroom line – हिंदी
"Isko kya karna hai? Detach karna hai."
15. AMI साठी Deregister vs Disable
Figure 11. Disable AMI: नवीन launches नाहीत, नेहमीच्या list मधून लपते, परत enable करता येते; snapshots राहतात. Deregister AMI: कायमची जाते; Delete associated snapshots tick केल्याशिवाय snapshots राहतात. चालू servers वर दोन्हीचा परिणाम होत नाही.
- Disable AMI (Actions > Disable AMI): AMI ने नवीन servers launch होत नाहीत आणि ती नेहमीच्या list मधून बाहेर जाते (ती बघायला Disabled images filter करा). ती public असेल तर private होते. Re-enable AMI ने परत येते. तिचे snapshots राहतात, आणि bill लावत राहतात.
- Deregister AMI (Actions > Deregister AMI): AMI कायमची जाते. Delete associated snapshots tick केल्याशिवाय तिचे snapshots delete होत नाहीत; नाहीतर Snapshots मध्ये ते स्वतः delete करा.
- AMI मधून आधीच launch झालेले servers दोन्ही बाबतीत चालू राहतात.
Deregister dialog Clean up: AMI deregister करा आणि तिचे snapshots delete करा मध्ये दाखवला आहे.
16. Clean up: काय bill लावत राहतं
का: Servers गेल्यानंतरही volumes, snapshots आणि AMIs पैसे घेत राहतात. प्रत्येक list तपासणं हाच अनपेक्षित bill टाळायचा मार्ग.
Lab नंतर console मधली प्रत्येक list तपासा:
- Instances: test servers terminate करा. Stopped server च्या volumes चं bill चालूच राहतं.
- Volumes: नको असलेला प्रत्येक Available volume delete करा (
spare-root, snapshots मधून बनलेले volumes). - AMIs: test AMIs Delete associated snapshots tick करून deregister करा.
- Snapshots: हाताने बनवलेले delete करा.
- Elastic IPs: allocate केलेले release करा.
17. काहीतरी चुकलेलं दिसतं तेव्हा
- नवीन server Attach volume list मध्ये नाही: तो volume पेक्षा वेगळ्या AZ मध्ये आहे. Volume च्या AZ मध्ये launch करा, किंवा snapshot बनवून योग्य AZ मध्ये volume बनवा.
- Root volume detach fail होतो किंवा अडकतो: server अजून चालू आहे. आधी stop करा.
/dev/xvdaवर attach fail होतं कारण नाव वापरात आहे: नवीन server चा स्वतःचा root volume अजून attach आहे. आधी तो detach करा.- Swap नंतर SSH fail होतो: जुना server ज्या key pair ने launch झाला ती, नवीन public IP वापरा, आणि security group मध्ये port 22 तपासा.
- Swap नंतर website उघडत नाही:
sudo service httpd status. Inactive असेल तर start करा, आणि पुढच्या वेळेसाठीsudo systemctl enable httpd. Security group मध्ये port 80 तपासा. - दुसऱ्या disk वर
mountwrong fs typeदेऊन fail होतं:-o nouuidजोडा (section 6);sudo dmesg | tailduplicate UUID दाखवतो. - तुमच्या AMI मधून launch केलेल्यात files नाहीत: AMI किंवा snapshot files बनवण्याआधी बनला, किंवा तुम्ही root म्हणून काम केल्यामुळे files
/rootमध्ये आहेत.
Classroom line
Once you try it, you find out where you're going wrong.
Class मधलं वाक्य
Try केल्यावर कळतं की आपण कुठे चुकतोय.
Classroom line – हिंदी
"Try karne ke baad pata chal jata hai ki hum kahan galat kar rahe hain."
Ravindra Bagale's Tip
Server वर काही मोठा बदल करण्याआधी snapshot किंवा AMI आधी घ्या; एक मिनिट लागतो आणि disaster चं restore होतं. आणि प्रत्येक volume बनल्या बनल्या त्याला Name tag द्या. तीन 8 GiB volumes सगळे Available दाखवतात, तेव्हा तुमचा data कुठल्यात आहे हे फक्त नावच सांगतं.
18. पूर्ण class एका page वर
- Root volume मध्ये OS असते (
/dev/xvda, Amazon Linux वर 8 GiBgp3); data volumes मध्ये जास्तीचा data (/dev/sdf). - Root volumes चं default Delete on termination: Yes. Terminate नंतर data तेव्हाच वाचतो जेव्हा आधी detach केलं, No केलं, किंवा snapshot किंवा AMI आहे.
- In-use म्हणजे attach; Available म्हणजे मोकळा (तरी bill). Volume फक्त स्वतःच्या AZ मध्येच attach होतो.
- Swap ने recovery: जुना server stop करा, त्याचा root detach करा; same AZ मध्ये नवीन server launch करा, stop करा, त्याचा root detach करा; जुना volume
/dev/xvdaवर attach करा; start करा. - फक्त जुन्या files वाचायला, दुसरी disk म्हणून attach करून
sudo mount -o nouuid /dev/nvme1n1p1 /mnt/old; reboot आधी detach करा. - AMI म्हणजे server template; Create image default ने reboot करतो; My AMIs मधून कुठल्याही instance type आणि कुठल्याही key pair ने launch करा.
- AMI = disk वर काय आहे; launch template = launch कसं करायचं (type, key pair, subnet, security groups, user data).
- Snapshot एका volume चा backup (incremental); AMI प्रत्येक volume च्या एका snapshot कडे निर्देश करते.
- Create snapshot: एका disk साठी Volume, सगळ्या disks एकाच क्षणी साठी Instance.
- Snapshot मधून launch नाही: snapshot ते image ते EC2, किंवा snapshot ते volume ते attach.
- Disable AMI लपवतो आणि undo होतो; Deregister ती काढून टाकतो; सांगितल्याशिवाय कुठलाच snapshots delete करत नाही.
- Instances, Available volumes, AMIs, snapshots आणि Elastic IPs clean up करा.
19. Hands-on lab: बंद server च्या disk वरून files वाचा
हा lab का. Server बिघडला तरी files सहसा त्याच्या disk वर असतात. हा lab ते करून बघतो: server A वर files ठेवतो, तो stop करतो, त्याची root disk server B ला attach करतो, आणि तिथे files वाचतो.
- server A वर file ठेवा
- Command:
echo "important data" > ~/keep.txt - काय दिसेल: काहीच नाही.
- Check करा:
cat ~/keep.txt→important data - का: ओळखीची file नंतर सिद्ध करते की तुम्ही योग्य disk recover केली.
- Command:
- server A stop करा आणि root volume detach करा
- करा: server A stop करा. त्याच्या Storage tab मध्ये root volume उघडा, मग Actions → Detach volume. त्याचं नाव
old-rootठेवा. - Check करा: Volumes मध्ये
old-rootAvailable दिसतो. - का: Root volume फक्त stop केलेल्या server पासून detach होतो. Terminate सारखं नाही, stop volume ठेवतो.
- करा: server A stop करा. त्याच्या Storage tab मध्ये root volume उघडा, मग Actions → Detach volume. त्याचं नाव
- server B ला attach करा
- करा:
old-rootselect करा → Actions → Attach volume → server B निवडा (चालू, तोच AZ) → device/dev/sdf→ Attach. - Check करा: Volume state In-use होतो.
- का: Volume फक्त त्याच्या AZ मध्ये attach होतो. server B list मध्ये नसेल तर तो दुसऱ्या AZ मध्ये आहे.
- करा:
- server B वर नवीन disk शोधा
- Command:
lsblk - काय दिसेल:
nvme0n1(server B ची स्वतःची disk) आणि नवीनnvme1n1, त्यात partitionnvme1n1p1. - Check करा:
nvme1n1ला अजून mount point नाही. - का:
t3servers वर/dev/sdfnvme1n1म्हणून दिसतो. Files त्याच्या पहिल्या partition मध्ये असतात.
- Command:
- Mount करा
- Command:
sudo mkdir /mnt/old && sudo mount -o nouuid /dev/nvme1n1p1 /mnt/old - काय दिसेल: काहीच नाही.
- Check करा:
df -h /mnt/oldमध्ये जुनी disk तिथे mount दिसते. - का: दोन्ही disks एकाच AMI मधून आल्या आणि त्यांचा XFS UUID एकच.
-o nouuidशिवाय mountwrong fs type, bad option, bad superblockने fail होतं.
- Command:
- File वाचा
- Command:
cat /mnt/old/home/ec2-user/keep.txt - काय दिसेल:
important data - Check करा: बाहेर copy करा:
cp /mnt/old/home/ec2-user/keep.txt ~/. - का: जुन्या server ची पूर्ण filesystem
/mnt/oldखाली आहे, म्हणून त्याचं home/mnt/old/home/ec2-user.
- Command:
- Unmount आणि detach करा
- Command:
cd ~ && sudo umount /mnt/old - काय दिसेल: काहीच नाही.
- Check करा: मग
old-rootवर Actions → Detach volume; state परत Available होतो. - का: server B reboot करण्याआधी detach करा: एकच UUID असलेल्या दोन disks मुळे तो चुकीच्या disk वरून boot होऊ शकतो.
- Command:
- साफ करा
- करा: दोन्ही servers terminate करा आणि Volumes मध्ये
old-rootdelete करा. - Check करा: Volumes मध्ये एकही
availablevolume उरला नाही. - का: Detach केलेला volume server नसतानाही दर महिन्याला पैसे घेत राहतो.
- करा: दोन्ही servers terminate करा आणि Volumes मध्ये
20. Try at home
Try at home
Task 1: root volume swap
- Server launch करा, Apache install करा, enable करा, page publish करा, आणि
f1 f2 f3बनवा. - तो stop करा, त्याचा root volume detach करा, आणि terminate करा.
- Same AZ मध्ये नवीन server launch करा, त्याचा root जुन्या volume ने
/dev/xvdaवर बदला, start करा, आणि page उघडा.
Task 2: snapshot चे रस्ते
- Root volume चा snapshot घ्या. त्यातून image बनवा आणि server launch करा.
- त्याच snapshot मधून volume बनवा आणि चालू server ला
/dev/sdfम्हणून attach करा.-o nouuidशिवायmountकरून बघा, error वाचा, मग-o nouuidने mount करा.
Task 3: clean up
- एक AMI disable करा आणि Disabled images मध्ये शोधा; परत enable करा.
- तुमच्या AMIs Delete associated snapshots सह deregister करा, Available volumes delete करा, आणि Snapshots आणि Volumes lists रिकाम्या आहेत ते तपासा.
Recap
थोडक्यात
- Data EBS volume वर असतो, आणि stopped server चा root volume same AZ मधल्या दुसऱ्या server वर हलवता येतो.
- Root volumes चं Delete on termination default ने Yes असतं, म्हणून आधी detach करा किंवा snapshot किंवा AMI ठेवा.
- Swap: stop, detach, same AZ मध्ये launch, stop, detach,
/dev/xvdaवर attach, start. - Amazon Linux 2023 वर दुसऱ्या disk च्या mount ला
-o nouuidलागतो, आणि reboot आधी detach. - AMI = server template, launch template = launch settings, snapshot = एका volume चा incremental backup.
- Snapshot मधून: image किंवा volume बनवा; AMI deregister केल्यावर box tick केल्याशिवाय तिचे snapshots राहतात.
सराव Tasks
Nashik Vineyards हा नाशिक मधला वाइन व शेती व्यवसाय आहे. Meera Joshi त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 12
सोपं EBS volume चा snapshot घ्या
का: Snapshot म्हणजे एका disk चा त्या क्षणीचा backup.
काय करायचं: Volume vol-0e0ec15fe55cfdeed चा snapshot "nightly nashikvine" description सह बनवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Volume detach करा
का: Disk rescue server वर हलवायला आधी detach करा.
काय करायचं: Volume vol-0e0ec15fe55cfdeed detach करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं मोकळी disk जागा तपासा
का: Disk 100% भरल्यास apps व databases बंद पडतात.
काय करायचं: सगळ्या mounted disks ची मोकळी व वापरलेली जागा human-readable units मध्ये दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Disks ची list पाहा
का: EBS volume attach केल्यावर lsblk त्याचं device नाव दाखवतो.
काय करायचं: Server वरचे सगळे block devices (disks व partitions) दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
मध्यम Volume instance ला attach करा
का: Server ला volume दिसण्याआधी तो attach (त्याच AZ मध्ये) करावा लागतो.
काय करायचं: Volume vol-0e0ec15fe55cfdeed ला instance i-055ba51db0b011a2b ला /dev/sdf device म्हणून attach करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Server पासून AMI बनवा
का: AMI म्हणजे पूर्ण server image. त्यापासून कधीही सारख्या copies launch करता येतात.
काय करायचं: Instance i-055ba51db0b011a2b पासून nashikvine-web-v1 नावाची AMI बनवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम नवा EBS volume बनवा
का: Extra data disks मुळे app data root disk पासून वेगळा राहतो.
काय करायचं: ap-south-1a Availability Zone मध्ये 20 GiB gp3 volume बनवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम जुनी AMI delete करा
का: जुन्या AMIs व snapshots चा दर महिन्याला खर्च येतो.
काय करायचं: Image ami-010f0f21defddabcd deregister करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम तुमच्या AMIs ची list
का: जुन्या AMIs साफ करताना फक्त तुमच्या images महत्त्वाच्या.
काय करायचं: फक्त तुमच्या account च्या AMIs दाखवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Disk चा UUID शोधा
का: /etc/fstab मध्ये UUID वापरावा, कारण reboot नंतर device नाव बदलू शकतं.
काय करायचं: /dev/xvdf चा UUID दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
अवघड Downtime शिवाय volume मोठा करा
का: EBS volumes वापरात असताना मोठे होतात. नंतर file system पण वाढवतात.
काय करायचं: Volume vol-0e0ec15fe55cfdeed 50 GiB करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड Snapshot दुसऱ्या Region मध्ये copy करा
का: दुसऱ्या Region मधली copy पूर्ण Region अडचणीत आल्यास वाचवते.
काय करायचं: Snapshot snap-0ef15be55beef5 ap-south-1 मधून us-west-2 मध्ये copy करा (command us-west-2 मध्ये चालवा).
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
झटपट उजळणी cards
हा lesson दोन मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR त्याचा lesson उघडतो.








अजून cards: Ravi Sir's Cards.