Cloud & IT Cert Prep · Pelajaran

Syot Kilat, Penyulitan dan RAID EBS

Cipta dan automatikkan syot kilat EBS untuk sandaran pada titik masa tertentu, sulitkan jilid dengan KMS, dan fahami perbezaan RAID 0 dengan RAID 1 pada EC2.

Pelajaran 2 daripada 413 langkah

Syot Kilat, Penyulitan dan RAID EBS ialah pelajaran Cloud & IT Cert Prep percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Cloud & IT Cert Prep, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Cloud & IT Cert Prep merangkumi sejumlah 4 pelajaran.

Syot Kilat EBS: Sandaran Titik Masa

Syot kilat EBS ialah sandaran volum EBS pada titik masa tertentu yang disimpan secara tahan lama dalam Amazon S3 (walaupun diuruskan oleh EBS, ia tidak boleh diakses secara terus melalui konsol S3). Syot kilat pertama ialah salinan penuh; syot kilat seterusnya ialah inkremental — hanya blok yang berubah sejak syot kilat terakhir disimpan. Walaupun storannya inkremental, anda boleh memulihkan mana-mana satu syot kilat menjadi volum penuh. Syot kilat ialah mekanisme utama untuk membuat sandaran, memindahkan dan memulihkan volum EBS selepas bencana.

# Create a snapshot of an EBS volume with a description
aws ec2 create-snapshot \
  --volume-id vol-0abc1234def567890 \
  --description 'Production DB backup 2024-01-01' \
  --tag-specifications 'ResourceType=snapshot,Tags=[{Key=Environment,Value=Production},{Key=Backup,Value=Daily}]'

# Monitor snapshot completion
aws ec2 describe-snapshots \
  --snapshot-ids snap-0abc1234def567890 \
  --query 'Snapshots[].{State:State,Progress:Progress}'

Kos dan Kitar Hayat Syot Kilat

Anda dicaj berdasarkan storan sebenar yang digunakan oleh blok syot kilat inkremental merentasi semua syot kilat sesuatu volum — bukan berdasarkan saiz volum. Jika anda memadam syot kilat perantaraan, S3 menggabungkan data supaya syot kilat yang tinggal masih mewakili titik pemulihan lengkap. Untuk mengurus kos pada skala besar, gunakan Amazon Data Lifecycle Manager (DLM) bagi mencipta jadual syot kilat dan dasar pengekalan — contohnya, ambil syot kilat harian, kekalkan 7 syot harian + 4 mingguan + 12 bulanan yang terakhir, dan padamkan syot kilat yang lebih lama secara automatik.

# Create a DLM lifecycle policy for daily snapshots with 7-day retention
aws dlm create-lifecycle-policy \
  --description 'Daily DB snapshots' \
  --state ENABLED \
  --execution-role-arn arn:aws:iam::111122223333:role/AWSDataLifecycleManagerDefaultRole \
  --policy-details '{
    "PolicyType": "EBS_SNAPSHOT_MANAGEMENT",
    "ResourceTypes": ["VOLUME"],
    "TargetTags": [{"Key": "Backup", "Value": "Daily"}],
    "Schedules": [{
      "Name": "DailySnapshots",
      "CreateRule": {"Interval": 24, "IntervalUnit": "HOURS", "Times": ["03:00"]},
      "RetainRule": {"Count": 7}
    }]
  }'

Salinan Syot Kilat Merentas Region dan Akaun

Syot kilat boleh disalin merentasi Region untuk pemulihan bencana dan pengagihan geografi. Anda juga boleh berkongsi syot kilat dengan akaun AWS tertentu (atau menjadikannya awam) untuk memindahkan data EBS merentasi akaun tanpa menggunakan rangkaian. Apabila menyalin syot kilat, anda boleh menukar kunci penyulitan — beginilah cara anda memindahkan data daripada volum tidak disulitkan kepada volum yang disulitkan, atau daripada kunci dalam satu akaun kepada kunci dalam akaun lain.

# Copy a snapshot to another region with a new KMS key
aws ec2 copy-snapshot \
  --source-region us-east-1 \
  --source-snapshot-id snap-0abc1234def567890 \
  --destination-region eu-west-1 \
  --description 'DR copy' \
  --encrypted \
  --kms-key-id arn:aws:kms:eu-west-1:111122223333:key/KEY_ID \
  --region eu-west-1

# Share a snapshot with another account
aws ec2 modify-snapshot-attribute \
  --snapshot-id snap-0abc1234def567890 \
  --attribute createVolumePermission \
  --operation-type add \
  --user-ids '999888777666'

Memulihkan Volum daripada Syot Kilat

Mencipta volum daripada syot kilat adalah mudah, tetapi terdapat pertimbangan prestasi: volum yang dipulihkan daripada syot kilat bermula dengan semua blok disimpan dalam S3 dan dimuat secara malas apabila diakses buat kali pertama. Ini boleh menyebabkan kependaman lebih tinggi untuk blok yang belum dimuatkan ke dalam volum. Untuk pangkalan data produksi, gunakan Fast Snapshot Restore (FSR) — ciri berbayar yang memanaskan awal syot kilat supaya volum terus beroperasi pada prestasi penuh. Sebagai alternatif, lakukan pemanasan awal dengan membaca semua blok menggunakan dd atau fio selepas pemulihan.

# Enable Fast Snapshot Restore for instant full-performance volumes
aws ec2 enable-fast-snapshot-restores \
  --availability-zones us-east-1a us-east-1b \
  --source-snapshot-ids snap-0abc1234def567890

# Create a volume from the snapshot (FSR enabled = full performance immediately)
aws ec2 create-volume \
  --snapshot-id snap-0abc1234def567890 \
  --volume-type gp3 \
  --availability-zone us-east-1a

Penyulitan EBS: Cara Ia Berfungsi

Penyulitan EBS menggunakan AES-256 untuk menyulitkan data semasa rehat (pada volum), semasa penghantaran antara volum dengan tika EC2, dan dalam syot kilat. Penyulitan dikendalikan secara telus oleh hipervisor EC2 — aplikasi anda tidak melihat sebarang perbezaan. Penyulitan menggunakan kunci AWS KMS: anda boleh menggunakan kunci terurus AWS (aws/ebs) atau kunci terurus pelanggan (CMK). Setelah volum disulitkan, semua data yang ditulis padanya dan semua syot kilat yang diambil daripadanya turut disulitkan.

# Create an encrypted gp3 volume with a customer-managed key
aws ec2 create-volume \
  --volume-type gp3 \
  --size 100 \
  --encrypted \
  --kms-key-id arn:aws:kms:us-east-1:111122223333:key/KEY_ID \
  --availability-zone us-east-1a

# Enable encryption by default for all new volumes in a region
aws ec2 enable-ebs-encryption-by-default

aws ec2 get-ebs-encryption-by-default
# { "EbsEncryptionByDefault": true }

Menyulitkan Volum Sedia Ada yang Tidak Disulitkan

Anda tidak boleh menyulitkan volum EBS sedia ada yang tidak disulitkan secara terus. Penyelesaiannya ialah proses berbilang langkah: (1) cipta syot kilat volum yang tidak disulitkan, (2) salin syot kilat menggunakan --encrypted untuk mencipta syot kilat yang disulitkan, (3) cipta volum baharu yang disulitkan daripada syot kilat yang disulitkan, (4) hentikan tika, tanggalkan volum lama, lampirkan volum baharu yang disulitkan dan mulakan semula. Proses ini boleh dijadikan skrip dan diuji dalam peperiksaan SAA-C03 sebagai senario pemindahan.

# Step-by-step: encrypt an existing unencrypted volume

# 1. Snapshot the unencrypted volume
aws ec2 create-snapshot --volume-id vol-UNENCRYPTED --description 'Pre-encryption backup'

# 2. Copy snapshot with encryption
aws ec2 copy-snapshot \
  --source-region us-east-1 \
  --source-snapshot-id snap-UNENCRYPTED \
  --region us-east-1 \
  --encrypted \
  --kms-key-id alias/aws/ebs

# 3. Create encrypted volume from the encrypted snapshot
aws ec2 create-volume \
  --snapshot-id snap-ENCRYPTED \
  --volume-type gp3 \
  --availability-zone us-east-1a

RAID 0: Jalur Prestasi

RAID 0 (jaluran) mengagihkan data merentasi beberapa volum EBS untuk menggabungkan IOPS dan throughputnya. Dua volum gp3 dengan 16,000 IOPS dalam RAID 0 memberikan kira-kira 32,000 IOPS. Pertukarannya ialah jika mana-mana volum gagal, anda kehilangan semua data — tiada lebihan. RAID 0 sesuai untuk data sementara atau data yang mudah dicipta semula apabila throughput maksimum menjadi keutamaan: lapisan cache, baris gilir pemprosesan atau ruang kerja sementara. Syot kilat EBS bagi keseluruhan tatasusunan RAID memerlukan penyelarasan kekonsistenan.

# Set up RAID 0 across two EBS volumes on Linux
# (After creating and attaching two gp3 volumes)

# Install mdadm
sudo yum install -y mdadm

# Create a RAID 0 array across /dev/xvdf and /dev/xvdg
sudo mdadm --create /dev/md0 \
  --level=0 \
  --raid-devices=2 \
  /dev/xvdf /dev/xvdg

# Format and mount
sudo mkfs.xfs /dev/md0
sudo mkdir /mnt/raid0
sudo mount /dev/md0 /mnt/raid0

RAID 1: Pencerminan untuk Lebihan

RAID 1 (pencerminan) menulis data yang sama pada dua volum EBS secara serentak. Jika satu volum gagal, volum yang satu lagi mengandungi salinan lengkap. RAID 1 menyediakan lebihan dua volum dengan kapasiti hanya satu volum. Walau bagaimanapun, bagi volum EBS, ini secara amnya berlebihan kerana replikasi terbina dalam EBS pada peringkat AZ. AWS mengesyorkan penggunaan seni bina EBS Multi-AZ (melalui Multi-AZ RDS atau ASG merentasi AZ) berbanding RAID 1 pada EBS, kerana EBS sudah melakukan replikasi dalam sesuatu AZ. RAID 1 pada EBS jarang digunakan dalam seni bina moden.

# RAID 1 example (mirroring) — rarely needed with EBS
sudo mdadm --create /dev/md1 \
  --level=1 \
  --raid-devices=2 \
  /dev/xvdh /dev/xvdi

# RAID 1 performance:
# Read: up to 2x (both disks can serve reads)
# Write: same as a single volume (data written to both)
# Fault tolerance: survives single volume failure

AMI dan Syot Kilat EBS

Amazon Machine Image (AMI) ialah pelan tindakan untuk melancarkan tika EC2, dan disokong oleh satu atau lebih syot kilat EBS — satu syot kilat bagi setiap volum yang disertakan oleh AMI (biasanya satu untuk volum akar). Apabila anda mencipta AMI tersuai daripada tika yang sedang berjalan, AWS menghentikan tika itu (atau menggunakan VSS pada Windows), mengambil syot kilat semua volum EBS yang dilampirkan dan merekodkan pemetaan dalam AMI. Menyahdaftar AMI tidak memadam syot kilat sokongannya secara automatik — anda mesti memadam syot kilat tersebut secara berasingan untuk berhenti membayar kosnya.

# Create an AMI from a running EC2 instance
aws ec2 create-image \
  --instance-id i-0abc1234def567890 \
  --name 'MyApp-v2.0-2024-01-01' \
  --description 'Application server AMI with v2.0 release' \
  --no-reboot

# List snapshots backing an AMI
aws ec2 describe-images \
  --image-ids ami-0abc1234def567890 \
  --query 'Images[].BlockDeviceMappings[].Ebs.SnapshotId'

# Deregister AMI then delete its snapshots separately
aws ec2 deregister-image --image-id ami-0abc1234def567890
aws ec2 delete-snapshot --snapshot-id snap-0abc1234def567890

Amalan Terbaik Syot Kilat

Amalan terbaik syot kilat untuk beban kerja produksi: bekukan atau hentikan sementara sistem fail sebelum mengambil syot kilat pangkalan data bagi memastikan kekonsistenan (kebanyakan pangkalan data terurus seperti RDS melakukannya secara automatik). Letakkan tanda pada syot kilat dengan persekitaran, ID volum dan tarikh supaya pengurusan kitar hayat serta peruntukan kos menjadi mudah. Uji prosedur pemulihan secara berkala — syot kilat yang tidak pernah anda pulihkan bukanlah sandaran. Simpan salinan merentas Region untuk pemulihan bencana. Gunakan AWS Backup untuk pengurusan dasar berpusat merentasi EBS, RDS, DynamoDB dan perkhidmatan lain.

# Freeze filesystem on Linux before snapshotting
# (Example for ext4 filesystem)
sudo fsfreeze -f /mnt/data  # Freeze writes
aws ec2 create-snapshot --volume-id vol-0abc1234 --description 'Consistent snapshot'
sudo fsfreeze -u /mnt/data  # Unfreeze

# AWS Backup policy for EBS volumes
aws backup create-backup-plan \
  --backup-plan '{
    "BackupPlanName": "EBSDaily",
    "Rules": [{
      "RuleName": "DailyRule",
      "TargetBackupVaultName": "Default",
      "ScheduleExpression": "cron(0 3 * * ? *)",
      "DeleteAfterDays": 30
    }]
  }'

Tong Kitar Semula Syot Kilat EBS

Tong Kitar Semula Syot Kilat EBS melindungi daripada pemadaman syot kilat dan AMI secara tidak sengaja. Apabila didayakan dengan peraturan pengekalan, syot kilat yang dipadamkan dipindahkan ke Tong Kitar Semula dan bukannya dimusnahkan secara kekal. Anda boleh memulihkannya dalam tempoh pengekalan (1 hari hingga 1 tahun). Ciri ini amat penting untuk senario pematuhan apabila anda mesti dapat memulihkan data selepas pemadaman tidak sengaja oleh pentadbir atau skrip automasi yang tidak terkawal tanpa memulihkan daripada peringkat sandaran yang lebih lama.

# Create a Recycle Bin retention rule for EBS snapshots
aws rbin create-rule \
  --retention-period RetentionPeriodValue=30,RetentionPeriodUnit=DAYS \
  --resource-type EBS_SNAPSHOT \
  --description '30-day retention for all EBS snapshots'

# List snapshots currently in the Recycle Bin
aws rbin list-resources \
  --resource-type EBS_SNAPSHOT \
  --query 'Resources[].{SnapshotId:ResourceId,DeleteDate:DeleteScheduledAt}'

Semakan Pantas

Uji pemahaman anda tentang konsep AWS Solutions Architect (SAA-C03) daripada pelajaran ini.

Ulang Kaji Pelajaran

Dalam pelajaran ini, anda telah mempelajari bahawa: syot kilat EBS adalah inkremental dan disimpan dalam S3, dengan DLM untuk pengurusan kitar hayat automatik, penyulitan memerlukan aliran kerja penyalinan syot kilat untuk menukar volum yang tidak disulitkan, dan RAID 0 menjalurkan volum untuk prestasi gabungan manakala RAID 1 mencerminkannya untuk lebihan (walaupun EBS sudah melakukan replikasi dalam AZ). Seterusnya, kita akan meneroka EFS untuk storan fail Linux dikongsi.

Percuma untuk bermula

Pelajari Cloud & IT Cert Prep dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
150
Pelajaran
600

Soalan Lazim

Adakah pelajaran “Syot Kilat, Penyulitan dan RAID EBS” percuma?

Ya — teks penuh “Syot Kilat, Penyulitan dan RAID EBS” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Cloud & IT Cert Prep, tingkat taraf kepada CoddyKit PRO. Kursus Cloud & IT Cert Prep merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Syot Kilat, Penyulitan dan RAID EBS”?

Cipta dan automatikkan syot kilat EBS untuk sandaran pada titik masa tertentu, sulitkan jilid dengan KMS, dan fahami perbezaan RAID 0 dengan RAID 1 pada EC2. Anda berlatih Cloud & IT Cert Prep menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Cloud & IT Cert Prep?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Cloud & IT Cert Prep di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Syot Kilat, Penyulitan dan RAID EBS” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Cloud & IT Cert Prep ini?

Ya. Setiap pelajaran Cloud & IT Cert Prep menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Jenis Jilid EBS: gp3, io2, st1, sc1
  2. Syot Kilat, Penyulitan dan RAID EBS
  3. EFS: Storan Fail Dikongsi untuk Linux
  4. FSx: Pelayan Fail Windows dan Lustre
← Kembali ke Cloud & IT Cert Prep