Menyiapkan pemulihan bencana untuk aplikasi web berbasis ISS multitingkat
Perangkat lunak aplikasi adalah mesin produktivitas bisnis dalam sebuah organisasi. Berbagai aplikasi web dapat melayani berbagai tujuan dalam suatu organisasi. Beberapa aplikasi, seperti aplikasi yang digunakan untuk pemrosesan penggajian, aplikasi keuangan, dan situs web yang berhadapan dengan pelanggan, mungkin sangat penting bagi suatu organisasi. Untuk mencegah hilangnya produktivitas, penting bagi organisasi untuk membuat aplikasi ini terus aktif dan berjalan. Lebih penting lagi, aplikasi yang tersedia secara konsisten dapat membantu mencegah kerusakan pada merek atau gambar organisasi.
Penting untuk menyiapkan aplikasi web sebagai aplikasi multi-tingkat: web, database, dan aplikasi yang berada di tingkat yang berbeda. Selain tersebar di berbagai tingkatan, aplikasi tersebut mungkin menggunakan beberapa server di setiap tingkatan untuk menyeimbangkan lalu lintas. Selain itu, pemetaan antara berbagai tingkatan dan di server web mungkin didasarkan pada alamat IP statik. Saat terjadi kegagalan, beberapa pemetaan ini perlu diperbarui, terutama jika beberapa situs web dikonfigurasi di server web. Jika aplikasi web menggunakan TLS, Anda harus memperbarui pengikatan sertifikat.
Metode pemulihan tradisional yang tidak didasarkan pada replikasi membutuhkan pencadangan berbagai file konfigurasi, pengaturan registri, pengikatan data, komponen kustom (COM atau .NET), konten, dan sertifikat. File dipulihkan melalui serangkaian langkah manual. Metode pemulihan tradisional untuk mencadangkan dan memulihkan file secara manual bersifat rumit, rawan kesalahan, dan tidak dapat diskalakan. Misalnya, Anda mungkin mudah lupa untuk mencadangkan sertifikat. Setelah terjadi kegagalan, Anda tidak memiliki pilihan selain membeli sertifikat baru untuk server.
Solusi pemulihan bencana yang baik mendukung rencana pemulihan pemodelan untuk arsitektur aplikasi yang kompleks. Anda juga dapat menambahkan langkah-langkah yang disesuaikan ke rencana pemulihan untuk menangani pemetaan aplikasi antar tingkatan. Jika ada bencana, pemetaan aplikasi menyediakan solusi sekali klik dan sure-shot yang membantu prospek ke RTO yang lebih rendah.
Artikel ini menjelaskan cara melindungi aplikasi web yang didasarkan pada Internet Information Services (IIS) dengan menggunakan Azure Site Recovery. Artikel ini membahas praktik terbaik untuk mereplikasi aplikasi web berbasis IIS tiga tingkat ke Azure, cara melakukan latihan pemulihan bencana, dan kegagalan aplikasi ke Azure.
Prasyarat
Sebelum memulai, pastikan Anda mengetahui cara melakukan tugas-tugas berikut:
- Mereplikasi komputer virtual ke Azure
- Merancang jaringan pemulihan
- Melakukan failover uji coba ke Azure
- Melakukan failover ke Azure
- Mereplikasi pengendali domain
- Mereplikasi SQL Server
Pola penyebaran
Aplikasi web berbasis IIS biasanya mengikuti salah satu pola penyebaran berikut:
Pola penyebaran 1
Farm web berbasis IIS dengan Application Request Routing (ARR), server IIS, dan SQL Server.
Pola penyebaran 2
Farm web berbasis IIS dengan ARR, server IIS, server aplikasi, dan SQL Server.
Dukungan Azure Site Recovery
Untuk contoh dalam artikel ini, kami menggunakan komputer virtual VMware dengan IIS 7.5 di Windows Server 2012 R2 Enterprise. Karena replikasi Site Recovery tidak spesifik untuk aplikasi, rekomendasi dalam artikel ini diharapkan berlaku dalam skenario yang tercantum dalam tabel berikut dan untuk versi IIS yang berbeda.
Sumber dan target
Skenario | Ke situs sekunder | Ke Azure |
---|---|---|
Hyper-V | Ya | Ya |
VMware | Ya | Ya |
Server fisik | Tidak | Ya |
Azure | TA | Ya |
Mereplikasi mesin virtual
Untuk mulai mereplikasi semua komputer virtual farm web IIS ke Azure, ikuti panduan dalam Uji kegagalan pada Azure dalam Site Recovery.
Jika Anda menggunakan alamat IP statik, Anda dapat menentukan alamat IP yang Anda inginkan untuk digunakan pada komputer virtual. Untuk mengatur alamat IP, buka Pengaturan Jaringan>TARGET IP.
Membuat rencana pemulihan
Rencana pemulihan mendukung urutan berbagai tingkatan dalam aplikasi multi-tingkat selama failover. Pengurutan membantu menjaga konsistensi aplikasi. Saat Anda membuat rencana pemulihan untuk aplikasi web multi-tingkat, selesaikan langkah-langkah yang dijelaskan dalam Membuat rencana pemulihan menggunakan Site Recovery.
Menambahkan mesin virtual ke grup failover
Aplikasi web IIS multi tingkat tipikal terdiri dari komponen-komponen berikut:
- Tingkat database yang memiliki komputer virtual SQL.
- Tingkat web, yang terdiri dari server IIS dan tingkat aplikasi.
Tambahkan komputer virtual ke grup yang berbeda berdasarkan tingkatan:
- Buat rencana pemulihan. Tambahkan komputer virtual tingkat database di bawah Grup 1. Hal ini untuk memastikan bahwa komputer virtual tingkat database dimatikan terakhir dan ditampilkan terlebih dahulu.
- Tambahkan komputer virtual tingkat aplikasi di bawah Grup 2. Hal ini untuk memastikan bahwa komputer virtual tingkat aplikasi ditampilkan setelah tingkat database diambil.
- Tambahkan komputer virtual tingkat web di Grup 3. Hal ini untuk memastikan bahwa komputer virtual tingkat web ditampilkan setelah tingkat aplikasi diambil.
- Tambahkan komputer virtual keseimbangan beban di Grup 4. Hal ini untuk memastikan bahwa komputer virtual penyeimbang beban ditampilkan setelah tingkat web diambil.
Untuk selengkapnya, lihat Kustomisasi rencana pemulihan.
Tambahkan skrip ke rencana pemulihan
Agar farm web IIS Anda berfungsi dengan tepat, Anda perlu melakukan beberapa operasi pada komputer virtual Azure setelah kegagalan atau selama uji kegagalan. Anda dapat mengotomatiskan beberapa operasi pasca-failover. Misalnya, Anda dapat memperbarui entri DNS, mengubah pengikatan situs web, atau mengubah string koneksi dengan menambahkan skrip yang sesuai pada rencana pemulihan. Menambahkan skrip VMM ke rencanapemulihan menjelaskan cara menyiapkan tugas otomatis dengan menggunakan skrip.
Pembaruan DNS
Jika DNS dikonfigurasi untuk pembaruan DNS dinamis, komputer virtual biasanya memperbarui DNS dengan alamat IP baru saat dimulai. Jika Anda ingin menambahkan langkah eksplisit untuk memperbarui DNS dengan alamat IP baru dari komputer virtual, tambahkan skrip untuk memperbarui IP di DNS sebagai tindakan setelah kegagalan pada grup rencana pemulihan.
String koneksi di web.config aplikasi
String koneksi menentukan database yang berkomunikasi dengan situs web. Jika string koneksi membawa nama komputer virtual database, tidak ada langkah lebih lanjut yang diperlukan setelah kegagalan. Aplikasi dapat berkomunikasi dengan database secara otomatis. Alamat IP pada komputer virtual database disimpan, sehingga tidak perlu memperbarui string koneksi.
String koneksi perlu diperbarui setelah kegagalan jika mengacu pada komputer virtual database dengan menggunakan alamat IP. Misalnya, string koneksi berikut menunjuk ke database dengan alamat IP 127.0.1.2:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="ConnStringDb1" connectionString="Data Source= 127.0.1.2\SqlExpress; Initial Catalog=TestDB1;Integrated Security=False;" />
</connectionStrings>
</configuration>
Untuk memperbarui string koneksi di tingkat web, tambahkan skrip pembaruan koneksi IIS setelah Grup 3 dalam rencana pemulihan.
Pengikatan situs web untuk aplikasi
Setiap situs web terdiri dari informasi yang mengikat. Informasi yang mengikat mencakup jenis pengikatan, alamat IP di mana server IIS mendengarkan permintaan untuk situs web, nomor port, dan nama host untuk situs tersebut. Selama kegagalan, Anda mungkin perlu memperbarui pengikatan tersebut jika terdapat perubahan alamat IP yang terkait dengannya.
Catatan
Jika pengaturan pengikatan situs ke Semua tidak ditetapkan,Anda tidak perlu memperbarui pengikatan setelah kegagalan. Selain itu, jika alamat IP yang terkait dengan situs web tidak diubah setelah kegagalan, Anda tidak perlu memperbarui pengikatan situs. (Retensi alamat IP bergantung pada arsitektur jaringan dan subnet yang ditetapkan ke situs utama dan pemulihan. Memperbaruinya mungkin tidak layak dilakukan untuk organisasi Anda.)
Jika Anda mengaitkan alamat IP dengan situs web, perbarui semua pengikatan situs dengan alamat IP baru. Untuk mengubah pengikatan situs, tambahkan skrip pembaruan tingkat web IIS setelah Grup 3 dalam rencana pemulihan.
Memperbarui alamat IP penyeimbang beban
Jika Anda memiliki mesin virtual ARR, untuk memperbarui alamat IP, tambahkan skrip failover IIS ARR setelah Grup 4.
Sertifikat TLS/SSL yang mengikat untuk koneksi HTTPS
Situs web mungkin memiliki sertifikat TLS/SSL terkait yang membantu memastikan komunikasi yang aman antara server web dan browser pengguna. Jika situs web memiliki koneksi HTTPS, dan memiliki situs HTTPS terkait yang mengikat ke alamat IP server IIS dengan pengikatan sertifikat TLS/SSL, Anda harus menambahkan pengikatan situs baru untuk sertifikat dengan alamat IP mesin virtual IIS setelah failover.
Sertifikat TLS/SSL dapat diterbitkan untuk komponen berikut ini:
- Nama domain yang sepenuhnya memenuhi syarat pada situs web.
- Nama server.
- Sertifikat kartu bebas untuk nama domain.
- Alamat IP. Jika sertifikat TLS/SSL diterbitkan untuk alamat IP server IIS, sertifikat TLS/SSL lain harus diterbitkan untuk alamat IP server IIS di situs Azure. Pengikatan TLS tambahan untuk sertifikat ini perlu dibuat. Oleh sebab itu, kami sarankan untuk tidak menggunakan sertifikat TLS/SSL yang diterbitkan untuk alamat IP. Pilihan tersebut jarang digunakan dan tidak akan digunakan lagi sesuai dengan perubahan otoritas sertifikat/forum internet browser baru.
Perbarui dependensi antara tingkat web dan tingkat aplikasi
Jika Anda memiliki dependensi aplikasi khusus yang didasarkan pada alamat IP komputer virtual, Anda harus memperbarui dependensi setelah kegagalan.
Menjalankan failover pengujian
- Di portal Microsoft Azure, pilih vault Recovery Services Anda.
- Pilih rencana pemulihan yang Anda buat untuk farm web IIS.
- Pilih Uji Failover.
- Untuk memulai proses failover pengujian, pilih titik pemulihan dan jaringan virtual Azure.
- Ketika lingkungan sekunder telah habis, Anda dapat melakukan validasi.
- Setelah validasi selesai, pilih Validasi selesai untuk membersihkan lingkungan uji kegagalan.
Untuk selengkapnya, lihat Uji kegagalan pada Azure di Site Recovery.
Menjalankan failover
- Di portal Microsoft Azure, pilih vault Recovery Services Anda.
- Pilih rencana pemulihan yang Anda buat untuk farm web IIS.
- Pilih Kegagalan.
- Untuk memulai proses failover, pilih titik pemulihan.
Untuk informasi selengkapnya, lihat Failover di Site Recovery.
Langkah berikutnya
- Pelajari selengkapnya tentang mereplikasi aplikasi lain dengan menggunakan Site Recovery.