Saya memiliki beberapa server Windows yang dihosting di Amazon EC2. Beberapa menjalankan Windows Server 2003 dan lainnya menjalankan Windows Server 2008. Ini adalah instance yang didukung EBS. Sebagian besar instance juga memiliki beberapa volume EBS tambahan yang terpasang.
Kami ingin menjadwalkan snapshot harian mesin windows (dan juga EBS-volume terlampir) ke S3 sehingga kami memiliki cadangan harian yang tersedia.
Orang akan berpikir bahwa ini adalah persyaratan yang sangat umum dan akan tersedia melalui Konsol Manajemen AWS, tetapi sayangnya, tidak. Pendekatan apa yang tersedia? Bagaimana cara menjadwalkan foto harian di Server Windows kami?
Ada beberapa contoh skrip yang tersedia online untuk Linux, tetapi tidak begitu banyak untuk windows. Saya telah melihat http://sehmer.blogspot.com/2011/04/amazon-ec2-daily-snapshot-script-for.html serta https://github.com/ronmichael/aws-snapshot- penjadwal . Adakah yang menggunakan salah satu pendekatan ini dan apakah itu berhasil?
Saya juga telah mempertimbangkan layanan seperti Skeddly yang tampaknya murah pada pandangan pertama tetapi ketika Anda melihat menggunakannya untuk beberapa server harga segera meningkat ke titik di mana tampaknya merupakan pilihan yang lebih baik untuk membuat solusi sendiri karena Anda kemudian dapat menerapkannya ke server baru di masa depan. Dengan Skeddly kami akan membayar untuk setiap server.
Bagaimana kita menjadwalkan snapshot harian dari instance windows kita?
Pembaruan 2018 Pada akhir 2018 ada dua cara tambahan untuk mengotomatisasi snapshot EBS. Saya masih menggunakan metode asli acara CloudWatch karena ini berfungsi dengan baik selama bertahun-tahun dan saya tidak melihat ada gunanya berubah.
Ops Automator (OA)
Ops Automator adalah kumpulan skrip lambda yang sangat fleksibel yang disediakan oleh AWS. Ini digunakan dengan template CloudWatch yang ada di halaman di atas.
Langkah-langkah pengaturannya
Data Lifecycle Manager (DLM)
Dokumentasi DLM . Ini adalah solusi yang lebih sederhana namun kurang fleksibel yang dapat membuat cadangan volume setiap 12 atau 24 jam. Saya bingung mengapa AWS menempatkan batasan ini pada DLM - frekuensi mingguan, bulanan, atau variabel akan mudah diimplementasikan.
DLM terintegrasi ke dalam konsol AWS. Saya tidak akan menyalin dan menempelkan dokumentasinya karena AWS selalu memperbarui berbagai hal, dan tautan jarang putus.
Pada 2019 DLM memungkinkan Anda menentukan interval lebih pendek hingga dua jam, tetapi masih tidak memungkinkan Anda menentukan interval lebih dari 24 jam.
Pembaruan 2017
Pada 2017 ada cara lain untuk membuat foto-foto biasa - menggunakan Acara Cloudwatch .
Ini memungkinkan Anda menjadwalkan foto, tetapi itu tidak menyelesaikan masalah volume yang sedang digunakan, jadi itu hanya solusi parsial. Mungkin ada cara menggunakan Acara CloudWatch untuk memicu sesuatu yang tidak sesuai dengan volume.
Buka konsol CloudWatch di https://console.aws.amazon.com/cloudwatch/ .
Di panel navigasi, pilih Acara.
Pilih Buat aturan.
Untuk Sumber Acara, lakukan hal berikut:
-> Pilih Jadwal.
-> Pilih Tingkat tetap dan tentukan interval jadwal (misalnya, 5 menit). Atau, pilih ekspresi Cron dan tentukan ekspresi Cron (misalnya, setiap 15 menit Senin hingga Jumat, mulai dari waktu sekarang).
Untuk Target, pilih Tambahkan target dan kemudian pilih EC2 Buat panggilan API Snapshot.
Untuk Volume ID, pilih volume EBS.
Pilih Konfigurasikan detail.
Untuk definisi Aturan, ketikkan nama dan deskripsi untuk aturan tersebut.
Untuk izin AWS, pilih opsi untuk membuat peran baru. Ini membuka konsol IAM di tab baru. Peran baru ini memberikan izin target bawaan untuk mengakses sumber daya atas nama Anda. Pilih Perbolehkan. Tab dengan jendela IAM ditutup.
Pilih Buat aturan.
sumber
Melompat pada jawaban lama yang memulai pencarian saya. Kudos to Ameer Deen di atas untuk skrip, btw.
Ditemukan pos ini yang menyelam lebih dalam ke skrip PowerShell untuk mengotomatisasi sepenuhnya proses pengumpulan data dan snapshot EBS:
http://messor.com/aws-disaster-recovery-automation-w-powershell/
Kemudian tentu saja menemukan bahwa semua itu ditulis untuk AWS SDK v1.0 yang sekarang didepresiasi, jadi saya menghabiskan hari terakhir memperbaikinya dan membuat semuanya bekerja dengan v2.0:
https://github.com/noahlh/aws-automated-backup-powershell
Nikmati!
sumber
AutomatiCloud melakukan apa yang Anda butuhkan. Ini adalah alat windows yang mudah digunakan tempat Anda dapat menjadwalkan pencadangan untuk volume EBS atau instance RDS Anda: www.automaticoud.net
Kamu bisa
sumber
Anda sekarang dapat menggunakan AWS Lambda untuk membuat AMI secara otomatis . Seluruh pengaturan harus diselesaikan dalam waktu sekitar 10 menit bersama dengan jadwal yang Anda suka. Lihatlah repo Github mereka untuk berkontribusi juga. Jalankan skrip sendiri dan hindari memberikan izin kepada pihak ketiga.
sumber
Anda dapat menulis skrip yang berbicara dengan API EC2 untuk menjadwalkan foto-foto itu. Ini dapat dijalankan pada salah satu instance yang ada atau Anda dapat mengatur instance linux kecil untuk keperluan ini pada t1.micro yang fungsi utamanya adalah untuk memulai snapshot untuk host Windows. Script dapat diletakkan di host linux sebagai tugas cron untuk dijalankan setiap hari pada waktu yang Anda pilih.
Tautan pertama adalah contoh skrip yang berasal dari host Windows dan dapat dengan mudah diotomatiskan dengan Tugas Terjadwal di Windows.
Saya belum menggunakan aplikasi yang Anda tautkan pada tautan kedua Anda.
sumber
Kemampuan Snapshot EBS saat ini untuk Windows Instans dijelaskan di sini: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-creating-snapshot.html
Untuk mendapatkan snapshot yang konsisten, Anda harus berhenti menulis ke volume cukup lama untuk menyelesaikan snapshot. Biasanya, ini berarti Anda harus melepas volume. AWS doc tidak membahas cara melakukan ini melalui commandline pada Windows, tetapi Anda dapat mengetahuinya di thread superuser ini: /superuser/704870/mount-and-dismount-hard-drive-through -a-script-software
Untuk mendapatkan snapshot dari volume boot sistem, Anda harus menghentikan instance Anda.
Semoga itu bisa membantu.
sumber
Saya menyadari ini adalah pertanyaan lama, tetapi saya akan membagikan solusi kami.
Kami menggunakan layanan yang disebut Ylastic . Paket Pro mereka ($ 50 / bln) termasuk penjadwalan snapshot EBS, tidak membatasi jumlah server atau disk. Ini juga akan menghapus cadangan yang lebih lama jika Anda mau. Anda dapat membuat beberapa jadwal (misalnya harian, mingguan, dll.) Masing-masing dengan kebijakan penyimpanannya sendiri.
Antarmuka juga memungkinkan Anda membuat instance baru dari cadangan.
Ini berfungsi dengan baik bagi kami selama bertahun-tahun, dengan sekitar dua puluh contoh dan empat puluh volume EBS. Mungkin ada metode yang lebih murah tetapi harganya cukup rendah sehingga kita tidak repot-repot membangun dan memelihara sesuatu sendiri.
Lihat http://blog.ylastic.com/post/148519929496/multi-region-ebs-instance-backup-management untuk perincian tentang fitur ini.
sumber